arm_compute v18.11
diff --git a/documentation/namespacearm__compute.xhtml b/documentation/namespacearm__compute.xhtml
index 2f3d996..4e6de44 100644
--- a/documentation/namespacearm__compute.xhtml
+++ b/documentation/namespacearm__compute.xhtml
@@ -4,7 +4,7 @@
 <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="generator" content="Doxygen 1.8.13"/>
 <meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines -->
 <title>Compute Library: arm_compute Namespace Reference</title>
 <link href="tabs.css" rel="stylesheet" type="text/css"/>
@@ -16,14 +16,10 @@
 <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"],
@@ -40,7 +36,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">Compute Library
-   &#160;<span id="projectnumber">18.08</span>
+   &#160;<span id="projectnumber">18.11</span>
    </div>
   </td>
  </tr>
@@ -48,41 +44,19 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.11 -->
+<!-- Generated by Doxygen 1.8.13 -->
 <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>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
 </div><!-- top -->
 <div id="side-nav" class="ui-resizable side-nav-resizable">
   <div id="nav-tree">
@@ -125,7 +99,7 @@
 </div><!--header-->
 <div class="contents">
 
-<p>This file contains all available output stages for GEMMLowp on OpenCL.  
+<p>Copyright (c) 2017-2018 ARM Limited.  
 <a href="#details">More...</a></p>
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
@@ -138,6 +112,8 @@
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:namespacearm__compute_1_1graph__utils"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1graph__utils.xhtml">graph_utils</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:namespacearm__compute_1_1helpers"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1helpers.xhtml">helpers</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:namespacearm__compute_1_1io"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1io.xhtml">io</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:namespacearm__compute_1_1logging"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1logging.xhtml">logging</a></td></tr>
@@ -146,8 +122,6 @@
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:namespacearm__compute_1_1quantization"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1quantization.xhtml">quantization</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:namespacearm__compute_1_1strong__type"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1strong__type.xhtml">strong_type</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:namespacearm__compute_1_1support"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1support.xhtml">support</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:namespacearm__compute_1_1test"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml">test</a></td></tr>
@@ -201,6 +175,12 @@
 <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_1_border_size.xhtml">BorderSize</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Container for 2D border size.  <a href="structarm__compute_1_1_border_size.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_1_bounding_box_transform_info.xhtml">BoundingBoxTransformInfo</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounding Box Transform information class.  <a href="classarm__compute_1_1_bounding_box_transform_info.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_1_box_n_m_s_limit_info.xhtml">BoxNMSLimitInfo</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">BoxWithNonMaximaSuppressionLimit Information class.  <a href="classarm__compute_1_1_box_n_m_s_limit_info.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_1_c_l_absolute_difference.xhtml">CLAbsoluteDifference</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_absolute_difference_kernel.xhtml">CLAbsoluteDifferenceKernel</a>.  <a href="classarm__compute_1_1_c_l_absolute_difference.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -258,6 +238,12 @@
 <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_1_c_l_batch_normalization_layer_kernel.xhtml">CLBatchNormalizationLayerKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the BatchNormalization layer kernel.  <a href="classarm__compute_1_1_c_l_batch_normalization_layer_kernel.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_1_c_l_batch_to_space_layer.xhtml">CLBatchToSpaceLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_batch_to_space_layer_kernel.xhtml">CLBatchToSpaceLayerKernel</a>.  <a href="classarm__compute_1_1_c_l_batch_to_space_layer.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_1_c_l_batch_to_space_layer_kernel.xhtml">CLBatchToSpaceLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the batch to space kernel.  <a href="classarm__compute_1_1_c_l_batch_to_space_layer_kernel.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_1_c_l_bitwise_and.xhtml">CLBitwiseAnd</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_bitwise_and_kernel.xhtml">CLBitwiseAndKernel</a>.  <a href="classarm__compute_1_1_c_l_bitwise_and.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -282,6 +268,12 @@
 <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_1_c_l_bitwise_xor_kernel.xhtml">CLBitwiseXorKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the bitwise XOR operation kernel.  <a href="classarm__compute_1_1_c_l_bitwise_xor_kernel.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_1_c_l_bounding_box_transform.xhtml">CLBoundingBoxTransform</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_bounding_box_transform_kernel.xhtml">CLBoundingBoxTransformKernel</a>.  <a href="classarm__compute_1_1_c_l_bounding_box_transform.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_1_c_l_bounding_box_transform_kernel.xhtml">CLBoundingBoxTransformKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the bounding box kernel.  <a href="classarm__compute_1_1_c_l_bounding_box_transform_kernel.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_1_c_l_box3x3.xhtml">CLBox3x3</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute box filter 3x3.  <a href="classarm__compute_1_1_c_l_box3x3.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -333,6 +325,12 @@
 <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_1_c_l_color_convert_kernel.xhtml">CLColorConvertKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the color convert kernel.  <a href="classarm__compute_1_1_c_l_color_convert_kernel.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_1_c_l_compute_all_anchors.xhtml">CLComputeAllAnchors</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_compute_all_anchors_kernel.xhtml">CLComputeAllAnchorsKernel</a>.  <a href="classarm__compute_1_1_c_l_compute_all_anchors.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_1_c_l_compute_all_anchors_kernel.xhtml">CLComputeAllAnchorsKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for Compute All Anchors kernel.  <a href="classarm__compute_1_1_c_l_compute_all_anchors_kernel.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_1_c_l_concatenate_layer.xhtml">CLConcatenateLayer</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute concatenate tensors along a given axis.  <a href="classarm__compute_1_1_c_l_concatenate_layer.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -497,6 +495,12 @@
 <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_1_c_l_fully_connected_layer_reshape_weights.xhtml">CLFullyConnectedLayerReshapeWeights</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to reshape the weights of Fully Connected layer with OpenCL.  <a href="classarm__compute_1_1_c_l_fully_connected_layer_reshape_weights.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_1_c_l_fuse_batch_normalization.xhtml">CLFuseBatchNormalization</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to fuse the batch normalization node to a preceding convolution node.  <a href="classarm__compute_1_1_c_l_fuse_batch_normalization.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_1_c_l_fuse_batch_normalization_kernel.xhtml">CLFuseBatchNormalizationKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to fuse the batch normalization node to a preceding convolution node.  <a href="classarm__compute_1_1_c_l_fuse_batch_normalization_kernel.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_1_c_l_gaussian3x3.xhtml">CLGaussian3x3</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute gaussian filter 3x3.  <a href="classarm__compute_1_1_c_l_gaussian3x3.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -554,6 +558,9 @@
 <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_1_c_l_g_e_m_m_lowp_offset_contribution_kernel.xhtml">CLGEMMLowpOffsetContributionKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to add the offset contribution after <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_kernel.xhtml">CLGEMMLowpMatrixMultiplyKernel</a>.  <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_offset_contribution_kernel.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_1_c_l_g_e_m_m_lowp_offset_contribution_output_stage_kernel.xhtml">CLGEMMLowpOffsetContributionOutputStageKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to add the offset contribution after <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_kernel.xhtml">CLGEMMLowpMatrixMultiplyKernel</a> and perform the output stage.  <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_offset_contribution_output_stage_kernel.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_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8Scale</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale.xhtml" title="Basic function to execute CLGEMMLowpQuantizeDownInt32ToUint8Scale on OpenCL. ">CLGEMMLowpQuantizeDownInt32ToUint8Scale</a> on OpenCL.  <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -563,6 +570,12 @@
 <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_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to quantize down the int32 accumulator values of GEMMLowp to QASYMM8.  <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel.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_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloat</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float.xhtml" title="Basic function to execute CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloat on OpenCL. ">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloat</a> on OpenCL.  <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float.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_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float_kernel.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to quantize down the int32 accumulator values of GEMMLowp to QASYMM8.  <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float_kernel.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_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to quantize down the int32 accumulator values of GEMMLowp to QASYMM8.  <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -584,6 +597,9 @@
 <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_1_c_l_g_e_m_m_transpose1x_w_kernel.xhtml">CLGEMMTranspose1xWKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel which transposes the elements of a matrix in chunks of 1xW, where W is equal to (16 / element size of the tensor)  <a href="classarm__compute_1_1_c_l_g_e_m_m_transpose1x_w_kernel.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_1_c_l_generate_proposals_layer.xhtml">CLGenerateProposalsLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to generate proposals for a RPN (Region Proposal Network)  <a href="classarm__compute_1_1_c_l_generate_proposals_layer.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_1_c_l_gradient_kernel.xhtml">CLGradientKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform Gradient computation.  <a href="classarm__compute_1_1_c_l_gradient_kernel.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -716,6 +732,9 @@
 <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_1_c_l_memory.xhtml">CLMemory</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL implementation of memory object.  <a href="classarm__compute_1_1_c_l_memory.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_1_c_l_memset_kernel.xhtml">CLMemsetKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for filling the planes of a tensor.  <a href="classarm__compute_1_1_c_l_memset_kernel.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_1_c_l_min_max_kernel.xhtml">CLMinMaxKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform min max search on an image.  <a href="classarm__compute_1_1_c_l_min_max_kernel.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -752,12 +771,21 @@
 <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_1_c_l_normalization_layer_kernel.xhtml">CLNormalizationLayerKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the normalization layer kernel.  <a href="classarm__compute_1_1_c_l_normalization_layer_kernel.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_1_c_l_normalize_planar_y_u_v_layer.xhtml">CLNormalizePlanarYUVLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_normalize_planar_y_u_v_layer_kernel.xhtml">CLNormalizePlanarYUVLayerKernel</a>.  <a href="classarm__compute_1_1_c_l_normalize_planar_y_u_v_layer.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_1_c_l_normalize_planar_y_u_v_layer_kernel.xhtml">CLNormalizePlanarYUVLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the NormalizePlanarYUV layer kernel.  <a href="classarm__compute_1_1_c_l_normalize_planar_y_u_v_layer_kernel.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_1_c_l_old_value.xhtml">CLOldValue</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure for storing ival, ixval and iyval for each point inside the window.  <a href="structarm__compute_1_1_c_l_old_value.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_1_c_l_optical_flow.xhtml">CLOpticalFlow</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute optical flow.  <a href="classarm__compute_1_1_c_l_optical_flow.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_1_c_l_pad_layer.xhtml">CLPadLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to pad a tensor.  <a href="classarm__compute_1_1_c_l_pad_layer.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_1_c_l_permute.xhtml">CLPermute</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute an <a class="el" href="classarm__compute_1_1_c_l_permute_kernel.xhtml">CLPermuteKernel</a>.  <a href="classarm__compute_1_1_c_l_permute.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -779,6 +807,12 @@
 <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_1_c_l_pooling_layer_kernel.xhtml">CLPoolingLayerKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the pooling layer kernel.  <a href="classarm__compute_1_1_c_l_pooling_layer_kernel.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_1_c_l_prior_box_layer.xhtml">CLPriorBoxLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_prior_box_layer_kernel.xhtml">CLPriorBoxLayerKernel</a>.  <a href="classarm__compute_1_1_c_l_prior_box_layer.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_1_c_l_prior_box_layer_kernel.xhtml">CLPriorBoxLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the PriorBox layer kernel.  <a href="classarm__compute_1_1_c_l_prior_box_layer_kernel.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_1_c_l_pyramid.xhtml">CLPyramid</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the OpenCL pyramid interface.  <a href="classarm__compute_1_1_c_l_pyramid.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -788,6 +822,9 @@
 <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_1_c_l_quantization_layer_kernel.xhtml">CLQuantizationLayerKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the quantization layer kernel.  <a href="classarm__compute_1_1_c_l_quantization_layer_kernel.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_1_c_l_reduce_mean.xhtml">CLReduceMean</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform reduce operation.  <a href="classarm__compute_1_1_c_l_reduce_mean.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_1_c_l_reduction_operation.xhtml">CLReductionOperation</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform reduction operation.  <a href="classarm__compute_1_1_c_l_reduction_operation.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -800,6 +837,11 @@
 <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_1_c_l_remap_kernel.xhtml">CLRemapKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform a remap on a tensor.  <a href="classarm__compute_1_1_c_l_remap_kernel.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_1_c_l_reorg_layer.xhtml">CLReorgLayer</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_1_c_l_reorg_layer_kernel.xhtml">CLReorgLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform a reorg layer.  <a href="classarm__compute_1_1_c_l_reorg_layer_kernel.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_1_c_l_reshape_layer.xhtml">CLReshapeLayer</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_reshape_layer_kernel.xhtml">CLReshapeLayerKernel</a>.  <a href="classarm__compute_1_1_c_l_reshape_layer.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -809,6 +851,12 @@
 <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_1_c_l_r_n_n_layer.xhtml">CLRNNLayer</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_r_n_n_layer.xhtml">CLRNNLayer</a>.  <a href="classarm__compute_1_1_c_l_r_n_n_layer.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_1_c_l_r_o_i_align_layer.xhtml">CLROIAlignLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_r_o_i_align_layer_kernel.xhtml">CLROIAlignLayerKernel</a>.  <a href="classarm__compute_1_1_c_l_r_o_i_align_layer.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_1_c_l_r_o_i_align_layer_kernel.xhtml">CLROIAlignLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the RoIAlign kernel.  <a href="classarm__compute_1_1_c_l_r_o_i_align_layer_kernel.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_1_c_l_r_o_i_pooling_layer.xhtml">CLROIPoolingLayer</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_r_o_i_pooling_layer_kernel.xhtml">CLROIPoolingLayerKernel</a>.  <a href="classarm__compute_1_1_c_l_r_o_i_pooling_layer.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -836,6 +884,9 @@
 <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_1_c_l_separable_convolution_vert_kernel.xhtml">CLSeparableConvolutionVertKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class. ">Kernel</a> for the Vertical pass of a Separable Convolution.  <a href="classarm__compute_1_1_c_l_separable_convolution_vert_kernel.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_1_c_l_slice.xhtml">CLSlice</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform tensor slicing.  <a href="classarm__compute_1_1_c_l_slice.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_1_c_l_sobel3x3.xhtml">CLSobel3x3</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute sobel 3x3 filter.  <a href="classarm__compute_1_1_c_l_sobel3x3.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -863,6 +914,21 @@
 <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_1_c_l_softmax_layer.xhtml">CLSoftmaxLayer</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a SoftmaxLayer.  <a href="classarm__compute_1_1_c_l_softmax_layer.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_1_c_l_space_to_batch_layer.xhtml">CLSpaceToBatchLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_space_to_batch_layer_kernel.xhtml">CLSpaceToBatchLayerKernel</a>.  <a href="classarm__compute_1_1_c_l_space_to_batch_layer.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_1_c_l_space_to_batch_layer_kernel.xhtml">CLSpaceToBatchLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the space to batch kernel.  <a href="classarm__compute_1_1_c_l_space_to_batch_layer_kernel.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_1_c_l_split.xhtml">CLSplit</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to split a tensor along a given axis.  <a href="classarm__compute_1_1_c_l_split.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_1_c_l_strided_slice.xhtml">CLStridedSlice</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_strided_slice_kernel.xhtml">CLStridedSliceKernel</a>.  <a href="classarm__compute_1_1_c_l_strided_slice.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_1_c_l_strided_slice_kernel.xhtml">CLStridedSliceKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform tensor strided slicing.  <a href="classarm__compute_1_1_c_l_strided_slice_kernel.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_1_c_l_sub_tensor.xhtml">CLSubTensor</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the OpenCL sub-tensor interface.  <a href="classarm__compute_1_1_c_l_sub_tensor.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -896,6 +962,12 @@
 <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_1_c_l_tuner.xhtml">CLTuner</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the OpenCL tuner interface.  <a href="classarm__compute_1_1_c_l_tuner.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_1_c_l_upsample_layer.xhtml">CLUpsampleLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_upsample_layer_kernel.xhtml">CLUpsampleLayerKernel</a>.  <a href="classarm__compute_1_1_c_l_upsample_layer.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_1_c_l_upsample_layer_kernel.xhtml">CLUpsampleLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the UpsampleLayer kernel on OpenCL.  <a href="classarm__compute_1_1_c_l_upsample_layer_kernel.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_1_c_l_warp_affine.xhtml">CLWarpAffine</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_warp_affine_kernel.xhtml">CLWarpAffineKernel</a> for AFFINE transformation.  <a href="classarm__compute_1_1_c_l_warp_affine.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -911,6 +983,12 @@
 <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_1_c_l_weights_reshape_kernel.xhtml">CLWeightsReshapeKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform reshaping on the weights used by convolution and locally connected layer.  <a href="classarm__compute_1_1_c_l_weights_reshape_kernel.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_1_c_l_width_concatenate2_tensors_kernel.xhtml">CLWidthConcatenate2TensorsKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the width concatenate kernel of 2 tensors.  <a href="classarm__compute_1_1_c_l_width_concatenate2_tensors_kernel.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_1_c_l_width_concatenate4_tensors_kernel.xhtml">CLWidthConcatenate4TensorsKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the width concatenate kernel of 4 tensors.  <a href="classarm__compute_1_1_c_l_width_concatenate4_tensors_kernel.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_1_c_l_width_concatenate_layer.xhtml">CLWidthConcatenateLayer</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute concatenate tensors along x axis.  <a href="classarm__compute_1_1_c_l_width_concatenate_layer.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -932,6 +1010,15 @@
 <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_1_c_l_winograd_output_transform_kernel.xhtml">CLWinogradOutputTransformKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the Winograd output transform kernel.  <a href="classarm__compute_1_1_c_l_winograd_output_transform_kernel.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_1_c_l_y_o_l_o_layer.xhtml">CLYOLOLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_y_o_l_o_layer_kernel.xhtml">CLYOLOLayerKernel</a> that performs a partial activation on the input.  <a href="classarm__compute_1_1_c_l_y_o_l_o_layer.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_1_c_l_y_o_l_o_layer_kernel.xhtml">CLYOLOLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the YOLO layer kernel that performs partial activation.  <a href="classarm__compute_1_1_c_l_y_o_l_o_layer_kernel.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_1_compute_anchors_info.xhtml">ComputeAnchorsInfo</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">ComputeAnchors information class.  <a href="classarm__compute_1_1_compute_anchors_info.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_1_coordinates.xhtml">Coordinates</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item. ">Coordinates</a> of an item.  <a href="classarm__compute_1_1_coordinates.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -941,12 +1028,21 @@
 <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_1_coordinates3_d.xhtml">Coordinates3D</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Coordinate type.  <a href="structarm__compute_1_1_coordinates3_d.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_1_c_p_p_box_with_non_maxima_suppression_limit.xhtml">CPPBoxWithNonMaximaSuppressionLimit</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_p_p_box_with_non_maxima_suppression_limit_kernel.xhtml">CPPBoxWithNonMaximaSuppressionLimitKernel</a>.  <a href="classarm__compute_1_1_c_p_p_box_with_non_maxima_suppression_limit.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_1_c_p_p_box_with_non_maxima_suppression_limit_kernel.xhtml">CPPBoxWithNonMaximaSuppressionLimitKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform computation of BoxWithNonMaximaSuppressionLimit.  <a href="classarm__compute_1_1_c_p_p_box_with_non_maxima_suppression_limit_kernel.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_1_c_p_p_corner_candidates_kernel.xhtml">CPPCornerCandidatesKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform corner candidates.  <a href="classarm__compute_1_1_c_p_p_corner_candidates_kernel.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_1_c_p_p_detection_window_non_maxima_suppression_kernel.xhtml">CPPDetectionWindowNonMaximaSuppressionKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform in-place computation of euclidean distance on IDetectionWindowArray.  <a href="classarm__compute_1_1_c_p_p_detection_window_non_maxima_suppression_kernel.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_1_c_p_p_flip_weights_kernel.xhtml">CPPFlipWeightsKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform 180 degrees flipping on deconvolution weights.  <a href="classarm__compute_1_1_c_p_p_flip_weights_kernel.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_1_c_p_p_permute.xhtml">CPPPermute</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_p_p_permute_kernel.xhtml">CPPPermuteKernel</a>.  <a href="classarm__compute_1_1_c_p_p_permute.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1012,6 +1108,9 @@
 <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_1_g_c_buffer_allocator.xhtml">GCBufferAllocator</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default GLES buffer allocator implementation.  <a href="classarm__compute_1_1_g_c_buffer_allocator.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_1_g_c_buffer_memory_region.xhtml">GCBufferMemoryRegion</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GLES buffer memory region implementation.  <a href="classarm__compute_1_1_g_c_buffer_memory_region.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_1_g_c_col2_im_kernel.xhtml">GCCol2ImKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the col2im reshaping kernel.  <a href="classarm__compute_1_1_g_c_col2_im_kernel.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1099,6 +1198,9 @@
 <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_1_g_c_logits1_d_shift_exp_sum_kernel.xhtml">GCLogits1DShiftExpSumKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for shifting the logits values around the max value and exponentiating the result.  <a href="classarm__compute_1_1_g_c_logits1_d_shift_exp_sum_kernel.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_1_g_c_memory.xhtml">GCMemory</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GLES implementation of memory object.  <a href="classarm__compute_1_1_g_c_memory.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_1_g_c_normalization_layer.xhtml">GCNormalizationLayer</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a normalization layer.  <a href="classarm__compute_1_1_g_c_normalization_layer.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1162,10 +1264,14 @@
 <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_1_g_e_m_m_info.xhtml">GEMMInfo</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEMM information class.  <a href="classarm__compute_1_1_g_e_m_m_info.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_1_g_e_m_m_lowp_output_stage_info.xhtml">GEMMLowpOutputStageInfo</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEMMLowp output stage info.  <a href="structarm__compute_1_1_g_e_m_m_lowp_output_stage_info.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_1_g_e_m_m_reshape_info.xhtml">GEMMReshapeInfo</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEMM reshape information class.  <a href="classarm__compute_1_1_g_e_m_m_reshape_info.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_1_g_l_buffer_wrapper.xhtml">GLBufferWrapper</a></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_1_generate_proposals_info.xhtml">GenerateProposalsInfo</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate Proposals Information class.  <a href="classarm__compute_1_1_generate_proposals_info.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_1_h_o_g.xhtml">HOG</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPU implementation of <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object. ">HOG</a> data-object.  <a href="classarm__compute_1_1_h_o_g.xhtml#details">More...</a><br /></td></tr>
@@ -1254,6 +1360,9 @@
 <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_1_i_g_c_kernel.xhtml">IGCKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all the GLES kernels.  <a href="classarm__compute_1_1_i_g_c_kernel.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_1_i_g_c_memory_region.xhtml">IGCMemoryRegion</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GLES memory region interface.  <a href="classarm__compute_1_1_i_g_c_memory_region.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_1_i_g_c_simple2_d_kernel.xhtml">IGCSimple2DKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for simple OpenGL ES kernels having 1 tensor input and 1 tensor output.  <a href="classarm__compute_1_1_i_g_c_simple2_d_kernel.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1284,6 +1393,9 @@
 <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_1_i_lut_allocator.xhtml">ILutAllocator</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic interface to allocate LUTs'.  <a href="classarm__compute_1_1_i_lut_allocator.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_1_i_memory.xhtml">IMemory</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object. ">Memory</a> interface.  <a href="classarm__compute_1_1_i_memory.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_1_i_memory_group.xhtml">IMemoryGroup</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object. ">Memory</a> group interface.  <a href="classarm__compute_1_1_i_memory_group.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1351,7 +1463,7 @@
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store the tensor's metadata.  <a href="classarm__compute_1_1_i_tensor_info.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_1_iterator.xhtml">Iterator</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_iterator.xhtml" title="Iterator updated by execute_window_loop for each window element. ">Iterator</a> updated by <a class="el" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a> for each window element.  <a href="classarm__compute_1_1_iterator.xhtml#details">More...</a><br /></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_iterator.xhtml" title="Iterator updated by execute_window_loop for each window element. ">Iterator</a> updated by <a class="el" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a> for each window element.  <a href="classarm__compute_1_1_iterator.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_1_kernel.xhtml">Kernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class. ">Kernel</a> class.  <a href="classarm__compute_1_1_kernel.xhtml#details">More...</a><br /></td></tr>
@@ -1367,6 +1479,8 @@
 <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_1_lut_allocator.xhtml">LutAllocator</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of a CPU memory LUT allocator.  <a href="classarm__compute_1_1_lut_allocator.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_1_m_e_m_info.xhtml">MEMInfo</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_1_memory.xhtml">Memory</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPU implementation of memory object.  <a href="classarm__compute_1_1_memory.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1484,6 +1598,12 @@
 <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_1_n_e_channel_extract_kernel.xhtml">NEChannelExtractKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the channel extract kernel.  <a href="classarm__compute_1_1_n_e_channel_extract_kernel.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_1_n_e_channel_shuffle_layer.xhtml">NEChannelShuffleLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_channel_shuffle_layer_kernel.xhtml">NEChannelShuffleLayerKernel</a>.  <a href="classarm__compute_1_1_n_e_channel_shuffle_layer.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_1_n_e_channel_shuffle_layer_kernel.xhtml">NEChannelShuffleLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the channel shuffle kernel.  <a href="classarm__compute_1_1_n_e_channel_shuffle_layer_kernel.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_1_n_e_col2_im.xhtml">NECol2Im</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_col2_im.xhtml">NECol2Im</a>.  <a href="classarm__compute_1_1_n_e_col2_im.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1632,7 +1752,10 @@
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to fill the interior borders.  <a href="classarm__compute_1_1_n_e_fill_inner_border_kernel.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_1_n_e_flatten_layer.xhtml">NEFlattenLayer</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute flatten.  <a href="classarm__compute_1_1_n_e_flatten_layer.xhtml#details">More...</a><br /></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute flatten layer kernel.  <a href="classarm__compute_1_1_n_e_flatten_layer.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_1_n_e_flatten_layer_kernel.xhtml">NEFlattenLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the flatten layer kernel.  <a href="classarm__compute_1_1_n_e_flatten_layer_kernel.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_1_n_e_floor.xhtml">NEFloor</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_floor_kernel.xhtml">NEFloorKernel</a>.  <a href="classarm__compute_1_1_n_e_floor.xhtml#details">More...</a><br /></td></tr>
@@ -1695,7 +1818,7 @@
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to interleave the elements of a matrix.  <a href="classarm__compute_1_1_n_e_g_e_m_m_interleave4x4_kernel.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_1_n_e_g_e_m_m_interleaved_wrapper.xhtml">NEGEMMInterleavedWrapper</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Equivalent to arm_gemm::GemmInterleaved but using Compute Library types.  <a href="classarm__compute_1_1_n_e_g_e_m_m_interleaved_wrapper.xhtml#details">More...</a><br /></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Equivalent to <a class="el" href="classarm__gemm_1_1_gemm_interleaved.xhtml">arm_gemm::GemmInterleaved</a> but using Compute Library types.  <a href="classarm__compute_1_1_n_e_g_e_m_m_interleaved_wrapper.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_1_n_e_g_e_m_m_lowp_assembly_matrix_multiply_core.xhtml">NEGEMMLowpAssemblyMatrixMultiplyCore</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute matrix multiply assembly kernels.  <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_assembly_matrix_multiply_core.xhtml#details">More...</a><br /></td></tr>
@@ -1823,6 +1946,9 @@
 <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_1_n_e_logits1_d_softmax_kernel.xhtml">NELogits1DSoftmaxKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for softmax computation for QASYMM8 with pre-computed max.  <a href="classarm__compute_1_1_n_e_logits1_d_softmax_kernel.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_1_n_e_l_s_t_m_layer.xhtml">NELSTMLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_l_s_t_m_layer.xhtml">NELSTMLayer</a>.  <a href="classarm__compute_1_1_n_e_l_s_t_m_layer.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_1_n_e_magnitude.xhtml">NEMagnitude</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_magnitude_phase_kernel.xhtml" title="Template interface for the kernel to compute magnitude and phase. ">NEMagnitudePhaseKernel</a>.  <a href="classarm__compute_1_1_n_e_magnitude.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1895,12 +2021,21 @@
 <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_1_n_e_pooling_layer_kernel.xhtml">NEPoolingLayerKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the pooling layer kernel.  <a href="classarm__compute_1_1_n_e_pooling_layer_kernel.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_1_n_e_prior_box_layer.xhtml">NEPriorBoxLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_prior_box_layer_kernel.xhtml">NEPriorBoxLayerKernel</a>.  <a href="classarm__compute_1_1_n_e_prior_box_layer.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_1_n_e_prior_box_layer_kernel.xhtml">NEPriorBoxLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to calculate prior boxes.  <a href="classarm__compute_1_1_n_e_prior_box_layer_kernel.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_1_n_e_quantization_layer.xhtml">NEQuantizationLayer</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a quantization layer.  <a href="classarm__compute_1_1_n_e_quantization_layer.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_1_n_e_quantization_layer_kernel.xhtml">NEQuantizationLayerKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the quantization layer kernel.  <a href="classarm__compute_1_1_n_e_quantization_layer_kernel.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_1_n_e_reduce_mean.xhtml">NEReduceMean</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform reduce operation.  <a href="classarm__compute_1_1_n_e_reduce_mean.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_1_n_e_reduction_operation.xhtml">NEReductionOperation</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a reduction operation.  <a href="classarm__compute_1_1_n_e_reduction_operation.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1913,6 +2048,12 @@
 <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_1_n_e_remap_kernel.xhtml">NERemapKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a remap on a tensor.  <a href="classarm__compute_1_1_n_e_remap_kernel.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_1_n_e_reorg_layer.xhtml">NEReorgLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_reorg_layer_kernel.xhtml">NEReorgLayerKernel</a>.  <a href="classarm__compute_1_1_n_e_reorg_layer.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_1_n_e_reorg_layer_kernel.xhtml">NEReorgLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform tensor re-organization.  <a href="classarm__compute_1_1_n_e_reorg_layer_kernel.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_1_n_e_reshape_layer.xhtml">NEReshapeLayer</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_reshape_layer_kernel.xhtml">NEReshapeLayerKernel</a>.  <a href="classarm__compute_1_1_n_e_reshape_layer.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1994,6 +2135,12 @@
 <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_1_n_e_transpose_kernel.xhtml">NETransposeKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel which transposes the elements of a matrix.  <a href="classarm__compute_1_1_n_e_transpose_kernel.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_1_n_e_upsample_layer.xhtml">NEUpsampleLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to run upsample layer.  <a href="classarm__compute_1_1_n_e_upsample_layer.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_1_n_e_upsample_layer_kernel.xhtml">NEUpsampleLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the Upsample layer kernel.  <a href="classarm__compute_1_1_n_e_upsample_layer_kernel.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_1_n_e_warp_affine.xhtml">NEWarpAffine</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_warp_affine_kernel.xhtml">NEWarpAffineKernel</a>.  <a href="classarm__compute_1_1_n_e_warp_affine.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -2030,6 +2177,12 @@
 <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_1_n_e_winograd_layer_transform_weights_kernel.xhtml">NEWinogradLayerTransformWeightsKernel</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform Winograd weights transform.  <a href="classarm__compute_1_1_n_e_winograd_layer_transform_weights_kernel.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_1_n_e_y_o_l_o_layer.xhtml">NEYOLOLayer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_y_o_l_o_layer_kernel.xhtml">NEYOLOLayerKernel</a>.  <a href="classarm__compute_1_1_n_e_y_o_l_o_layer.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_1_n_e_y_o_l_o_layer_kernel.xhtml">NEYOLOLayerKernel</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the YOLO layer kernel.  <a href="classarm__compute_1_1_n_e_y_o_l_o_layer_kernel.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_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalization Layer Information class.  <a href="classarm__compute_1_1_normalization_layer_info.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -2057,6 +2210,9 @@
 <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_1_pool_manager.xhtml">PoolManager</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object. ">Memory</a> pool manager.  <a href="classarm__compute_1_1_pool_manager.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_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">PriorBox layer info.  <a href="classarm__compute_1_1_prior_box_layer_info.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_1_program.xhtml">Program</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_program.xhtml" title="Program class. ">Program</a> class.  <a href="classarm__compute_1_1_program.xhtml#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -2109,7 +2265,7 @@
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the tensor interface.  <a href="classarm__compute_1_1_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_1_tensor_accessor.xhtml">TensorAccessor</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface. ">Tensor</a> accessors to make it easier to interface with arm_gemm.  <a href="classarm__compute_1_1_tensor_accessor.xhtml#details">More...</a><br /></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface. ">Tensor</a> accessors to make it easier to interface with <a class="el" href="namespacearm__gemm.xhtml">arm_gemm</a>.  <a href="classarm__compute_1_1_tensor_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_1_tensor_allocator.xhtml">TensorAllocator</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of a CPU memory tensor allocator.  <a href="classarm__compute_1_1_tensor_allocator.xhtml#details">More...</a><br /></td></tr>
@@ -2276,9 +2432,6 @@
 <tr class="memitem:a96f7f6f98dc47e0dc3b928bf87397ebf"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a96f7f6f98dc47e0dc3b928bf87397ebf">NEBox3x3FP16Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_box3x3_kernel.xhtml">NEBox3x3Kernel</a></td></tr>
 <tr class="memdesc:a96f7f6f98dc47e0dc3b928bf87397ebf"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a Box 3x3 filter for FP16 datatype.  <a href="#a96f7f6f98dc47e0dc3b928bf87397ebf">More...</a><br /></td></tr>
 <tr class="separator:a96f7f6f98dc47e0dc3b928bf87397ebf"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a593fd1da692f305db6ca306cb8e0158e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a593fd1da692f305db6ca306cb8e0158e">NEGradientFP16Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_gradient_kernel.xhtml">NEGradientKernel</a></td></tr>
-<tr class="memdesc:a593fd1da692f305db6ca306cb8e0158e"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform Gradient computation for FP16 datatype.  <a href="#a593fd1da692f305db6ca306cb8e0158e">More...</a><br /></td></tr>
-<tr class="separator:a593fd1da692f305db6ca306cb8e0158e"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:acf81639b3d33b5da654ef088e4d10520"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acf81639b3d33b5da654ef088e4d10520">NEConvolution3x3Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_kernel.xhtml">NEConvolutionKernel</a>&lt; 3 &gt;</td></tr>
 <tr class="memdesc:acf81639b3d33b5da654ef088e4d10520"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 3x3 convolution to a tensor.  <a href="#acf81639b3d33b5da654ef088e4d10520">More...</a><br /></td></tr>
 <tr class="separator:acf81639b3d33b5da654ef088e4d10520"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -2309,10 +2462,6 @@
 <tr class="memitem:a6310d21f215fface41df4cde725a62b9"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6310d21f215fface41df4cde725a62b9">NESeparableConvolution9x9VertKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_vert_kernel.xhtml">NESeparableConvolutionVertKernel</a>&lt; 9 &gt;</td></tr>
 <tr class="memdesc:a6310d21f215fface41df4cde725a62b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 1x9 vertical convolution to a tensor.  <a href="#a6310d21f215fface41df4cde725a62b9">More...</a><br /></td></tr>
 <tr class="separator:a6310d21f215fface41df4cde725a62b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a0b6679b5d5c7f7dc527258181b04cf35"><td class="memTemplParams" colspan="2">template&lt;int32_t block_size&gt; </td></tr>
-<tr class="memitem:a0b6679b5d5c7f7dc527258181b04cf35"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0b6679b5d5c7f7dc527258181b04cf35">NEHarrisScoreFP16Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_harris_score_kernel.xhtml">NEHarrisScoreKernel</a>&lt; block_size &gt;</td></tr>
-<tr class="memdesc:a0b6679b5d5c7f7dc527258181b04cf35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the accumulate Weighted kernel using FP16.  <a href="#a0b6679b5d5c7f7dc527258181b04cf35">More...</a><br /></td></tr>
-<tr class="separator:a0b6679b5d5c7f7dc527258181b04cf35"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a19699533eb1b662e46a10715f6086487"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a19699533eb1b662e46a10715f6086487">INELKInternalKeypointArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; <a class="el" href="structarm__compute_1_1_n_e_l_k_internal_keypoint.xhtml">NELKInternalKeypoint</a> &gt;</td></tr>
 <tr class="memdesc:a19699533eb1b662e46a10715f6086487"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for NEON <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Internal Key Points.  <a href="#a19699533eb1b662e46a10715f6086487">More...</a><br /></td></tr>
 <tr class="separator:a19699533eb1b662e46a10715f6086487"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -2343,12 +2492,21 @@
 <tr class="memitem:a33e65be485104e2e9e69fca551d6f492"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a33e65be485104e2e9e69fca551d6f492">PermutationVector</a> = <a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a></td></tr>
 <tr class="memdesc:a33e65be485104e2e9e69fca551d6f492"><td class="mdescLeft">&#160;</td><td class="mdescRight">Permutation vector.  <a href="#a33e65be485104e2e9e69fca551d6f492">More...</a><br /></td></tr>
 <tr class="separator:a33e65be485104e2e9e69fca551d6f492"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11916d4148a39a67794050373f54825a"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a11916d4148a39a67794050373f54825a">BiStrides</a> = <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a></td></tr>
+<tr class="memdesc:a11916d4148a39a67794050373f54825a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bidirectional strides.  <a href="#a11916d4148a39a67794050373f54825a">More...</a><br /></td></tr>
+<tr class="separator:a11916d4148a39a67794050373f54825a"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a4467b302fc9ec312c40580336ab783da"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4467b302fc9ec312c40580336ab783da">PaddingSize</a> = <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a></td></tr>
 <tr class="memdesc:a4467b302fc9ec312c40580336ab783da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Container for 2D padding size.  <a href="#a4467b302fc9ec312c40580336ab783da">More...</a><br /></td></tr>
 <tr class="separator:a4467b302fc9ec312c40580336ab783da"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a2ab89a5d0959531aac270879cdd3ed78"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ab89a5d0959531aac270879cdd3ed78">InternalKeypoint</a> = std::tuple&lt; float, float, float &gt;</td></tr>
 <tr class="memdesc:a2ab89a5d0959531aac270879cdd3ed78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal key point.  <a href="#a2ab89a5d0959531aac270879cdd3ed78">More...</a><br /></td></tr>
 <tr class="separator:a2ab89a5d0959531aac270879cdd3ed78"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a669b5d3c5994f9ae3be31df9a1014297"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a669b5d3c5994f9ae3be31df9a1014297">PaddingInfo</a> = std::pair&lt; uint32_t, uint32_t &gt;</td></tr>
+<tr class="memdesc:a669b5d3c5994f9ae3be31df9a1014297"><td class="mdescLeft">&#160;</td><td class="mdescRight">Padding information as a pair of unsigned int start/end.  <a href="#a669b5d3c5994f9ae3be31df9a1014297">More...</a><br /></td></tr>
+<tr class="separator:a669b5d3c5994f9ae3be31df9a1014297"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1a1b012674e0f1de071a611391828ad"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> = std::vector&lt; <a class="el" href="namespacearm__compute.xhtml#a669b5d3c5994f9ae3be31df9a1014297">PaddingInfo</a> &gt;</td></tr>
+<tr class="memdesc:ac1a1b012674e0f1de071a611391828ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of padding information.  <a href="#ac1a1b012674e0f1de071a611391828ad">More...</a><br /></td></tr>
+<tr class="separator:ac1a1b012674e0f1de071a611391828ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a8856eca9a83e16bb0cb5880e9c6c9fe7"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8856eca9a83e16bb0cb5880e9c6c9fe7">KeyPointArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; <a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a> &gt;</td></tr>
 <tr class="memdesc:a8856eca9a83e16bb0cb5880e9c6c9fe7"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Key Points.  <a href="#a8856eca9a83e16bb0cb5880e9c6c9fe7">More...</a><br /></td></tr>
 <tr class="separator:a8856eca9a83e16bb0cb5880e9c6c9fe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -2465,12 +2623,33 @@
 <tr class="memitem:a7fb6a368d181ef193475f725c713430a"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7fb6a368d181ef193475f725c713430a">Image</a> = <a class="el" href="classarm__compute_1_1_tensor.xhtml">Tensor</a></td></tr>
 <tr class="memdesc:a7fb6a368d181ef193475f725c713430a"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a>.  <a href="#a7fb6a368d181ef193475f725c713430a">More...</a><br /></td></tr>
 <tr class="separator:a7fb6a368d181ef193475f725c713430a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a762c7da7319adcc433b3ac7a67e18ed5"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a762c7da7319adcc433b3ac7a67e18ed5">MemoryMappings</a> = std::map&lt; void **, size_t &gt;</td></tr>
-<tr class="memdesc:a762c7da7319adcc433b3ac7a67e18ed5"><td class="mdescLeft">&#160;</td><td class="mdescRight">A map of (handle, index/offset), where handle is the memory handle of the object to provide the memory for and index/offset is the buffer/offset from the pool that should be used.  <a href="#a762c7da7319adcc433b3ac7a67e18ed5">More...</a><br /></td></tr>
-<tr class="separator:a762c7da7319adcc433b3ac7a67e18ed5"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ad2398d0f2ce77c10bbebf1f85317dde5"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad2398d0f2ce77c10bbebf1f85317dde5">GroupMappings</a> = std::map&lt; size_t, <a class="el" href="namespacearm__compute.xhtml#a762c7da7319adcc433b3ac7a67e18ed5">MemoryMappings</a> &gt;</td></tr>
+<tr class="memitem:a43b7da220a8ead83acff98f218f7eb6b"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a43b7da220a8ead83acff98f218f7eb6b">MemoryMappings</a> = std::map&lt; <a class="el" href="classarm__compute_1_1_i_memory.xhtml">IMemory</a> *, size_t &gt;</td></tr>
+<tr class="memdesc:a43b7da220a8ead83acff98f218f7eb6b"><td class="mdescLeft">&#160;</td><td class="mdescRight">A map of (handle, index/offset), where handle is the memory handle of the object to provide the memory for and index/offset is the buffer/offset from the pool that should be used.  <a href="#a43b7da220a8ead83acff98f218f7eb6b">More...</a><br /></td></tr>
+<tr class="separator:a43b7da220a8ead83acff98f218f7eb6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2398d0f2ce77c10bbebf1f85317dde5"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad2398d0f2ce77c10bbebf1f85317dde5">GroupMappings</a> = std::map&lt; size_t, <a class="el" href="namespacearm__compute.xhtml#a43b7da220a8ead83acff98f218f7eb6b">MemoryMappings</a> &gt;</td></tr>
 <tr class="memdesc:ad2398d0f2ce77c10bbebf1f85317dde5"><td class="mdescLeft">&#160;</td><td class="mdescRight">A map of the groups and memory mappings.  <a href="#ad2398d0f2ce77c10bbebf1f85317dde5">More...</a><br /></td></tr>
 <tr class="separator:ad2398d0f2ce77c10bbebf1f85317dde5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fd0d641ff68bfe8475361a13de7b1cc"><td class="memTemplParams" colspan="2">template&lt;typename T , int N&gt; </td></tr>
+<tr class="memitem:a3fd0d641ff68bfe8475361a13de7b1cc"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3fd0d641ff68bfe8475361a13de7b1cc">vec_n_t</a> = typename vec_n_type&lt; T, N &gt;::type</td></tr>
+<tr class="separator:a3fd0d641ff68bfe8475361a13de7b1cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5cd8407762d2446f8eceefcc4b63e537"><td class="memTemplParams" colspan="2">template&lt;typename T , int N&gt; </td></tr>
+<tr class="memitem:a5cd8407762d2446f8eceefcc4b63e537"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a> = <a class="el" href="namespacearm__compute.xhtml#a3fd0d641ff68bfe8475361a13de7b1cc">vec_n_t</a>&lt; T, N/sizeof(T) &gt;</td></tr>
+<tr class="separator:a5cd8407762d2446f8eceefcc4b63e537"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef7a69b9cf4a1732d2be114b9b9bf3e3"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:aef7a69b9cf4a1732d2be114b9b9bf3e3"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a> = <a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a>&lt; T, 16 &gt;</td></tr>
+<tr class="separator:aef7a69b9cf4a1732d2be114b9b9bf3e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab448de27f94cd38059b63980c3c08f40"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:ab448de27f94cd38059b63980c3c08f40"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a> = <a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a>&lt; T, 8 &gt;</td></tr>
+<tr class="separator:ab448de27f94cd38059b63980c3c08f40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a926fa1a0e7fd320cff5ba6c6f62f463b"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a926fa1a0e7fd320cff5ba6c6f62f463b"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a> = const T *</td></tr>
+<tr class="separator:a926fa1a0e7fd320cff5ba6c6f62f463b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e36f8a2df3d6bd1756b90e2efb151e9"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a1e36f8a2df3d6bd1756b90e2efb151e9"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a> = T *</td></tr>
+<tr class="separator:a1e36f8a2df3d6bd1756b90e2efb151e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a534a101b6176c3e065eba4b4cde7a40e"><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
+<tr class="memitem:a534a101b6176c3e065eba4b4cde7a40e"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a> = decltype(<a class="el" href="namespacearm__compute.xhtml#a40552ea65ee3fc6d7fa7f1fb17baebe7">vget_lane</a>&lt; 0 &gt;(std::declval&lt; V &gt;()))</td></tr>
+<tr class="separator:a534a101b6176c3e065eba4b4cde7a40e"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:acded863dbfdd730829d4188d67eefcf0"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acded863dbfdd730829d4188d67eefcf0">Mutex</a> = std::mutex</td></tr>
 <tr class="memdesc:acded863dbfdd730829d4188d67eefcf0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wrapper of Mutex data-object.  <a href="#acded863dbfdd730829d4188d67eefcf0">More...</a><br /></td></tr>
 <tr class="separator:acded863dbfdd730829d4188d67eefcf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -2500,6 +2679,11 @@
  }<tr class="memdesc:aa41d7415a5386798147cccae2333d5d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPU models - we only need to detect CPUs we have microarchitecture-specific code for.  <a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">More...</a><br /></td></tr>
 </td></tr>
 <tr class="separator:aa41d7415a5386798147cccae2333d5d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c9101ca1a1f72f48efff28b4b9a6495"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495">MemoryPolicy</a> { <a class="el" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a704bfa6c1ed5e479c8cfb5bdfc8cccda">MINIMIZE</a>, 
+<a class="el" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a1e23852820b9154316c7c06e2b7ba051">NORMAL</a>
+ }<tr class="memdesc:a4c9101ca1a1f72f48efff28b4b9a6495"><td class="mdescLeft">&#160;</td><td class="mdescRight">Global memory policy.  <a href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495">More...</a><br /></td></tr>
+</td></tr>
+<tr class="separator:a4c9101ca1a1f72f48efff28b4b9a6495"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a59e56af19e754a6aa26a612ebf91d05f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a> { <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564">OK</a>, 
 <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579">RUNTIME_ERROR</a>, 
 <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">UNSUPPORTED_EXTENSION_USE</a>
@@ -2522,9 +2706,12 @@
 <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">G51BIG</a> = 0x231, 
 <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">G51LIT</a> = 0x232, 
 <br />
-&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a> = 0x240, 
-<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a> = 0x250, 
-<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a> = 0x260
+&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb">G52</a> = 0x240, 
+<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837">G52LIT</a> = 0x241, 
+<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a> = 0x250, 
+<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a> = 0x260, 
+<br />
+&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a> = 0x270
 <br />
  }<tr class="memdesc:a735ac6c2a02e320969625308810444f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available GPU Targets.  <a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">More...</a><br /></td></tr>
 </td></tr>
@@ -2591,14 +2778,14 @@
 <tr class="memitem:ad1d5cce2d9e9a5d61c243e5c989112e0"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> { <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, 
 <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, 
 <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>
- }<tr class="memdesc:ad1d5cce2d9e9a5d61c243e5c989112e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Supported tensor data layouts.  <a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">More...</a><br /></td></tr>
+ }<tr class="memdesc:ad1d5cce2d9e9a5d61c243e5c989112e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">[DataLayout enum definition]  <a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">More...</a><br /></td></tr>
 </td></tr>
 <tr class="separator:ad1d5cce2d9e9a5d61c243e5c989112e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a74ce3f7420453d3446218ff3b7453e02"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">DataLayoutDimension</a> { <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, 
 <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, 
 <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>, 
 <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a>
- }<tr class="memdesc:a74ce3f7420453d3446218ff3b7453e02"><td class="mdescLeft">&#160;</td><td class="mdescRight">Supported tensor data layout dimensions.  <a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">More...</a><br /></td></tr>
+ }<tr class="memdesc:a74ce3f7420453d3446218ff3b7453e02"><td class="mdescLeft">&#160;</td><td class="mdescRight">[DataLayout enum definition]  <a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">More...</a><br /></td></tr>
 </td></tr>
 <tr class="separator:a74ce3f7420453d3446218ff3b7453e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a15a05537a472ee742404821851529327"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> { <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>, 
@@ -2677,7 +2864,8 @@
 </td></tr>
 <tr class="separator:adf2ced65e536375a1c96425d9fced858"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a5827eb9cb394e74af87f74bd354fb45b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">ReductionOperation</a> { <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">SUM_SQUARE</a>, 
-<a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a">SUM</a>
+<a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a">SUM</a>, 
+<a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5">MEAN_SUM</a>
  }<tr class="memdesc:a5827eb9cb394e74af87f74bd354fb45b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available reduction operations.  <a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">More...</a><br /></td></tr>
 </td></tr>
 <tr class="separator:a5827eb9cb394e74af87f74bd354fb45b"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -2704,6 +2892,19 @@
  }<tr class="memdesc:a9172da722f0a434e5cc07c0a3c115d93"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available pooling types.  <a href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">More...</a><br /></td></tr>
 </td></tr>
 <tr class="separator:a9172da722f0a434e5cc07c0a3c115d93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a201391f6e13e2a1ac203256a77792718"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718">NMSType</a> { <a class="el" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aaac544aacc3615aada24897a215f5046">LINEAR</a>, 
+<a class="el" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718a0fceff26ae86a047835cafbb6cadb1b9">GAUSSIAN</a>, 
+<a class="el" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aa87d5006e1de1bfc07d5c56086ad20f1">ORIGINAL</a>
+ }<tr class="memdesc:a201391f6e13e2a1ac203256a77792718"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available non maxima suppression types.  <a href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718">More...</a><br /></td></tr>
+</td></tr>
+<tr class="separator:a201391f6e13e2a1ac203256a77792718"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5558e2cc22f7f4771653d992c8ad8864"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864">GEMMLowpOutputStageType</a> { <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693">NONE</a>, 
+<a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b">QUANTIZE_DOWN</a>, 
+<a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca">QUANTIZE_DOWN_FIXEDPOINT</a>, 
+<a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c">QUANTIZE_DOWN_FLOAT</a>
+ }<tr class="memdesc:a5558e2cc22f7f4771653d992c8ad8864"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEMMLowp output stage type.  <a href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864">More...</a><br /></td></tr>
+</td></tr>
+<tr class="separator:a5558e2cc22f7f4771653d992c8ad8864"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a683661ae75dcb7aef16b9c9bde31517d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">ConvolutionMethod</a> { <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3">GEMM</a>, 
 <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">DIRECT</a>, 
 <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8">WINOGRAD</a>
@@ -2722,48 +2923,54 @@
 </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:ab04905b0c6c0e4091160561eae870101"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab04905b0c6c0e4091160561eae870101">get_cl_type_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
-<tr class="memdesc:ab04905b0c6c0e4091160561eae870101"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a tensor data type to the appropriate OpenCL type.  <a href="#ab04905b0c6c0e4091160561eae870101">More...</a><br /></td></tr>
-<tr class="separator:ab04905b0c6c0e4091160561eae870101"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae5f4dd9f672832f7dce02fc14487f544"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae5f4dd9f672832f7dce02fc14487f544">get_data_size_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
-<tr class="memdesc:ae5f4dd9f672832f7dce02fc14487f544"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the size of a data type in number of bits.  <a href="#ae5f4dd9f672832f7dce02fc14487f544">More...</a><br /></td></tr>
-<tr class="separator:ae5f4dd9f672832f7dce02fc14487f544"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afc95473636a442507fda7ad48f3414c0"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afc95473636a442507fda7ad48f3414c0">get_underlying_cl_type_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
-<tr class="memdesc:afc95473636a442507fda7ad48f3414c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates fixed point tensor data type to the underlying OpenCL type.  <a href="#afc95473636a442507fda7ad48f3414c0">More...</a><br /></td></tr>
-<tr class="separator:afc95473636a442507fda7ad48f3414c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a22bd4d0de8eb9d2989a9fe61b1003e70"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a22bd4d0de8eb9d2989a9fe61b1003e70">get_target_from_device</a> (const cl::Device &amp;device)</td></tr>
-<tr class="memdesc:a22bd4d0de8eb9d2989a9fe61b1003e70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU target from CL device.  <a href="#a22bd4d0de8eb9d2989a9fe61b1003e70">More...</a><br /></td></tr>
-<tr class="separator:a22bd4d0de8eb9d2989a9fe61b1003e70"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a54c9b94a266f8065b64f001c47815b68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52e">CLVersion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a54c9b94a266f8065b64f001c47815b68">get_cl_version</a> (const cl::Device &amp;device)</td></tr>
-<tr class="memdesc:a54c9b94a266f8065b64f001c47815b68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the highest OpenCL version supported.  <a href="#a54c9b94a266f8065b64f001c47815b68">More...</a><br /></td></tr>
-<tr class="separator:a54c9b94a266f8065b64f001c47815b68"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a94de99589574c0072be98be1ba806cad"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a94de99589574c0072be98be1ba806cad">device_supports_extension</a> (const cl::Device &amp;device, const char *extension_name)</td></tr>
-<tr class="memdesc:a94de99589574c0072be98be1ba806cad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether a given extension is supported.  <a href="#a94de99589574c0072be98be1ba806cad">More...</a><br /></td></tr>
-<tr class="separator:a94de99589574c0072be98be1ba806cad"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aa5e9f3429ae4136235c87f98ecb46c9d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa5e9f3429ae4136235c87f98ecb46c9d">fp16_supported</a> (const cl::Device &amp;device)</td></tr>
-<tr class="memdesc:aa5e9f3429ae4136235c87f98ecb46c9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the cl_khr_fp16 extension is supported.  <a href="#aa5e9f3429ae4136235c87f98ecb46c9d">More...</a><br /></td></tr>
-<tr class="separator:aa5e9f3429ae4136235c87f98ecb46c9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1faf3c8249d988fd152ab2dd16b029dc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1faf3c8249d988fd152ab2dd16b029dc">arm_non_uniform_workgroup_supported</a> (const cl::Device &amp;device)</td></tr>
-<tr class="memdesc:a1faf3c8249d988fd152ab2dd16b029dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the arm_non_uniform_work_group_size extension is supported.  <a href="#a1faf3c8249d988fd152ab2dd16b029dc">More...</a><br /></td></tr>
-<tr class="separator:a1faf3c8249d988fd152ab2dd16b029dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a3e1a11146f191cc0dc152e1be09b9339"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3e1a11146f191cc0dc152e1be09b9339">dot8_supported</a> (const cl::Device &amp;device)</td></tr>
-<tr class="memdesc:a3e1a11146f191cc0dc152e1be09b9339"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the cl_arm_integer_dot_product_int8 extension is supported.  <a href="#a3e1a11146f191cc0dc152e1be09b9339">More...</a><br /></td></tr>
-<tr class="separator:a3e1a11146f191cc0dc152e1be09b9339"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5b3ca013e6190e8a57de25064bf7caad"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5b3ca013e6190e8a57de25064bf7caad">dot8_acc_supported</a> (const cl::Device &amp;device)</td></tr>
-<tr class="memdesc:a5b3ca013e6190e8a57de25064bf7caad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the cl_arm_integer_dot_product_accumulate_int8 extension is supported.  <a href="#a5b3ca013e6190e8a57de25064bf7caad">More...</a><br /></td></tr>
-<tr class="separator:a5b3ca013e6190e8a57de25064bf7caad"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afd16b14c21838b5e9858f41d80bdcce7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afd16b14c21838b5e9858f41d80bdcce7">cl_winograd_convolution_layer_supported</a> (const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;output_tile, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;kernel_size, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> data_layout)</td></tr>
-<tr class="memdesc:afd16b14c21838b5e9858f41d80bdcce7"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function checks if the Winograd configuration (defined through the output tile, kernel size and the data layout) is supported on OpenCL.  <a href="#afd16b14c21838b5e9858f41d80bdcce7">More...</a><br /></td></tr>
-<tr class="separator:afd16b14c21838b5e9858f41d80bdcce7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a545eeda2eaa3f5a54345ce8169e21184"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a545eeda2eaa3f5a54345ce8169e21184">get_cl_type_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
+<tr class="memdesc:a545eeda2eaa3f5a54345ce8169e21184"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a tensor data type to the appropriate OpenCL type.  <a href="#a545eeda2eaa3f5a54345ce8169e21184">More...</a><br /></td></tr>
+<tr class="separator:a545eeda2eaa3f5a54345ce8169e21184"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70d221fbff7bff840ef4d3fdc701cf53"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a70d221fbff7bff840ef4d3fdc701cf53">get_cl_select_type_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
+<tr class="memdesc:a70d221fbff7bff840ef4d3fdc701cf53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a tensor data type to the appropriate OpenCL select type.  <a href="#a70d221fbff7bff840ef4d3fdc701cf53">More...</a><br /></td></tr>
+<tr class="separator:a70d221fbff7bff840ef4d3fdc701cf53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab631f49c436b1f18beff3248c4b1a19e"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab631f49c436b1f18beff3248c4b1a19e">get_data_size_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
+<tr class="memdesc:ab631f49c436b1f18beff3248c4b1a19e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the size of a data type in number of bits.  <a href="#ab631f49c436b1f18beff3248c4b1a19e">More...</a><br /></td></tr>
+<tr class="separator:ab631f49c436b1f18beff3248c4b1a19e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9ed41c417478e5b1e346de1899137b1"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa9ed41c417478e5b1e346de1899137b1">get_underlying_cl_type_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
+<tr class="memdesc:aa9ed41c417478e5b1e346de1899137b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates fixed point tensor data type to the underlying OpenCL type.  <a href="#aa9ed41c417478e5b1e346de1899137b1">More...</a><br /></td></tr>
+<tr class="separator:aa9ed41c417478e5b1e346de1899137b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a281384aa081efe5819eedd6a7c2a429b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a281384aa081efe5819eedd6a7c2a429b">get_target_from_device</a> (const cl::Device &amp;device)</td></tr>
+<tr class="memdesc:a281384aa081efe5819eedd6a7c2a429b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU target from CL device.  <a href="#a281384aa081efe5819eedd6a7c2a429b">More...</a><br /></td></tr>
+<tr class="separator:a281384aa081efe5819eedd6a7c2a429b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e62ce01a7a7af6c3d059bb8534cad45"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52e">CLVersion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0e62ce01a7a7af6c3d059bb8534cad45">get_cl_version</a> (const cl::Device &amp;device)</td></tr>
+<tr class="memdesc:a0e62ce01a7a7af6c3d059bb8534cad45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the highest OpenCL version supported.  <a href="#a0e62ce01a7a7af6c3d059bb8534cad45">More...</a><br /></td></tr>
+<tr class="separator:a0e62ce01a7a7af6c3d059bb8534cad45"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c4a5ca34ebb51d4e2e119a110e4c8f0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">device_supports_extension</a> (const cl::Device &amp;device, const char *extension_name)</td></tr>
+<tr class="memdesc:a6c4a5ca34ebb51d4e2e119a110e4c8f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether a given extension is supported.  <a href="#a6c4a5ca34ebb51d4e2e119a110e4c8f0">More...</a><br /></td></tr>
+<tr class="separator:a6c4a5ca34ebb51d4e2e119a110e4c8f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2ad3c9492d4158b574a89ab798d74e16"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ad3c9492d4158b574a89ab798d74e16">fp16_supported</a> (const cl::Device &amp;device)</td></tr>
+<tr class="memdesc:a2ad3c9492d4158b574a89ab798d74e16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the cl_khr_fp16 extension is supported.  <a href="#a2ad3c9492d4158b574a89ab798d74e16">More...</a><br /></td></tr>
+<tr class="separator:a2ad3c9492d4158b574a89ab798d74e16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0019d1de2500c73f16b673d8a883a767"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0019d1de2500c73f16b673d8a883a767">arm_non_uniform_workgroup_supported</a> (const cl::Device &amp;device)</td></tr>
+<tr class="memdesc:a0019d1de2500c73f16b673d8a883a767"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the arm_non_uniform_work_group_size extension is supported.  <a href="#a0019d1de2500c73f16b673d8a883a767">More...</a><br /></td></tr>
+<tr class="separator:a0019d1de2500c73f16b673d8a883a767"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac07e02c0066cf540a5a2665fa7d54934"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac07e02c0066cf540a5a2665fa7d54934">dot8_supported</a> (const cl::Device &amp;device)</td></tr>
+<tr class="memdesc:ac07e02c0066cf540a5a2665fa7d54934"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the cl_arm_integer_dot_product_int8 extension is supported.  <a href="#ac07e02c0066cf540a5a2665fa7d54934">More...</a><br /></td></tr>
+<tr class="separator:ac07e02c0066cf540a5a2665fa7d54934"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4878daab91c6d7173de20283766e0c2c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4878daab91c6d7173de20283766e0c2c">dot8_acc_supported</a> (const cl::Device &amp;device)</td></tr>
+<tr class="memdesc:a4878daab91c6d7173de20283766e0c2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the cl_arm_integer_dot_product_accumulate_int8 extension is supported.  <a href="#a4878daab91c6d7173de20283766e0c2c">More...</a><br /></td></tr>
+<tr class="separator:a4878daab91c6d7173de20283766e0c2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f5aff064f09dd7f355aaaf7641bf7d3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7f5aff064f09dd7f355aaaf7641bf7d3">cl_winograd_convolution_layer_supported</a> (const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;output_tile, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;kernel_size, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> data_layout)</td></tr>
+<tr class="memdesc:a7f5aff064f09dd7f355aaaf7641bf7d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function checks if the Winograd configuration (defined through the output tile, kernel size and the data layout) is supported on OpenCL.  <a href="#a7f5aff064f09dd7f355aaaf7641bf7d3">More...</a><br /></td></tr>
+<tr class="separator:a7f5aff064f09dd7f355aaaf7641bf7d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a5c8dc3902d1a2de5b20aa249fb483eea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5c8dc3902d1a2de5b20aa249fb483eea">error_on_unsupported_int64_base_atomics</a> (const char *function, const char *file, const int line)</td></tr>
 <tr class="memdesc:a5c8dc3902d1a2de5b20aa249fb483eea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if int64_base_atomics extension is not supported by the device.  <a href="#a5c8dc3902d1a2de5b20aa249fb483eea">More...</a><br /></td></tr>
 <tr class="separator:a5c8dc3902d1a2de5b20aa249fb483eea"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a0f68015f649819f1102aa73d7b88b29e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0f68015f649819f1102aa73d7b88b29e">enqueue</a> (cl::CommandQueue &amp;queue, <a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml">ICLKernel</a> &amp;kernel, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;window, const cl::NDRange &amp;lws_hint=<a class="el" href="classarm__compute_1_1_c_l_kernel_library.xhtml#aebe2d25607545d31f2b1ace6d60a81da">CLKernelLibrary::get</a>().default_ndrange())</td></tr>
-<tr class="memdesc:a0f68015f649819f1102aa73d7b88b29e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add the kernel to the command queue with the given window.  <a href="#a0f68015f649819f1102aa73d7b88b29e">More...</a><br /></td></tr>
-<tr class="separator:a0f68015f649819f1102aa73d7b88b29e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aa4f4d7a58287017588fc338965873f14"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa4f4d7a58287017588fc338965873f14">opencl_is_available</a> ()</td></tr>
-<tr class="memdesc:aa4f4d7a58287017588fc338965873f14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if OpenCL is available.  <a href="#aa4f4d7a58287017588fc338965873f14">More...</a><br /></td></tr>
-<tr class="separator:aa4f4d7a58287017588fc338965873f14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e48b7cf7de6a52575088cb7082d2b3e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1e48b7cf7de6a52575088cb7082d2b3e">enqueue</a> (cl::CommandQueue &amp;queue, <a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml">ICLKernel</a> &amp;kernel, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;window, const cl::NDRange &amp;lws_hint=<a class="el" href="classarm__compute_1_1_c_l_kernel_library.xhtml#acba005f5ce2c62cbf3f94d074d9007aa">CLKernelLibrary::get</a>().default_ndrange())</td></tr>
+<tr class="memdesc:a1e48b7cf7de6a52575088cb7082d2b3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add the kernel to the command queue with the given window.  <a href="#a1e48b7cf7de6a52575088cb7082d2b3e">More...</a><br /></td></tr>
+<tr class="separator:a1e48b7cf7de6a52575088cb7082d2b3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f49decb4b0a74d5361686ab45db8961"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5f49decb4b0a74d5361686ab45db8961">opencl_is_available</a> ()</td></tr>
+<tr class="memdesc:a5f49decb4b0a74d5361686ab45db8961"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if OpenCL is available.  <a href="#a5f49decb4b0a74d5361686ab45db8961">More...</a><br /></td></tr>
+<tr class="separator:a5f49decb4b0a74d5361686ab45db8961"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5516ba576a612c73954609522347b576"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5516ba576a612c73954609522347b576">cpu_model_to_string</a> (<a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a> val)</td></tr>
+<tr class="memdesc:a5516ba576a612c73954609522347b576"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a cpumodel value to a string.  <a href="#a5516ba576a612c73954609522347b576">More...</a><br /></td></tr>
+<tr class="separator:a5516ba576a612c73954609522347b576"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a8e79316e933e15539e39cace39ba0e35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8e79316e933e15539e39cace39ba0e35">error_on_unsupported_cpu_fp16</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info)</td></tr>
 <tr class="memdesc:a8e79316e933e15539e39cace39ba0e35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor info is FP16 and FP16 support is not compiled in.  <a href="#a8e79316e933e15539e39cace39ba0e35">More...</a><br /></td></tr>
 <tr class="separator:a8e79316e933e15539e39cace39ba0e35"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -2782,44 +2989,44 @@
 <tr class="memitem:a053a24bb37402fa4b4d8d5963976ba17"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a053a24bb37402fa4b4d8d5963976ba17">ignore_unused</a> (T &amp;&amp;...)</td></tr>
 <tr class="memdesc:a053a24bb37402fa4b4d8d5963976ba17"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ignores unused arguments.  <a href="#a053a24bb37402fa4b4d8d5963976ba17">More...</a><br /></td></tr>
 <tr class="separator:a053a24bb37402fa4b4d8d5963976ba17"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a2edb6ec8bea5c26d7d802d21caf64d02"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2edb6ec8bea5c26d7d802d21caf64d02">create_error_va_list</a> (<a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a> error_code, const char *function, const char *file, const int line, const char *msg, va_list args)</td></tr>
-<tr class="memdesc:a2edb6ec8bea5c26d7d802d21caf64d02"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an error containing the error message from variable argument list.  <a href="#a2edb6ec8bea5c26d7d802d21caf64d02">More...</a><br /></td></tr>
-<tr class="separator:a2edb6ec8bea5c26d7d802d21caf64d02"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a3eee3c80d78ee4574a5eed0af5af919d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3eee3c80d78ee4574a5eed0af5af919d">create_error</a> (<a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a> error_code, const char *function, const char *file, const int line, const char *msg,...)</td></tr>
-<tr class="memdesc:a3eee3c80d78ee4574a5eed0af5af919d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an error containing the error message.  <a href="#a3eee3c80d78ee4574a5eed0af5af919d">More...</a><br /></td></tr>
-<tr class="separator:a3eee3c80d78ee4574a5eed0af5af919d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a568b0fbfa3d903099d9c9f7b6acf188d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a568b0fbfa3d903099d9c9f7b6acf188d">error</a> (const char *function, const char *file, const int line, const char *msg,...)</td></tr>
-<tr class="memdesc:a568b0fbfa3d903099d9c9f7b6acf188d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print an error message then throw an std::runtime_error.  <a href="#a568b0fbfa3d903099d9c9f7b6acf188d">More...</a><br /></td></tr>
-<tr class="separator:a568b0fbfa3d903099d9c9f7b6acf188d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac2b27a559f3ff7deecfcd13e1e24194b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac2b27a559f3ff7deecfcd13e1e24194b">get_target_from_device</a> ()</td></tr>
-<tr class="memdesc:ac2b27a559f3ff7deecfcd13e1e24194b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU target from GLES using GL_RENDERER enum.  <a href="#ac2b27a559f3ff7deecfcd13e1e24194b">More...</a><br /></td></tr>
-<tr class="separator:ac2b27a559f3ff7deecfcd13e1e24194b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ab36bc98bdbf6c4d7bee0cb099513c806"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab36bc98bdbf6c4d7bee0cb099513c806">enqueue</a> (<a class="el" href="classarm__compute_1_1_i_g_c_kernel.xhtml">IGCKernel</a> &amp;kernel, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;window, const <a class="el" href="classarm__compute_1_1gles_1_1_n_d_range.xhtml">gles::NDRange</a> &amp;lws=<a class="el" href="classarm__compute_1_1gles_1_1_n_d_range.xhtml">gles::NDRange</a>(1U, 1U, 1U))</td></tr>
-<tr class="memdesc:ab36bc98bdbf6c4d7bee0cb099513c806"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add the kernel to the command queue with the given window.  <a href="#ab36bc98bdbf6c4d7bee0cb099513c806">More...</a><br /></td></tr>
-<tr class="separator:ab36bc98bdbf6c4d7bee0cb099513c806"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a19c7b9bc5f36935ba40314907ffe54ce"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a19c7b9bc5f36935ba40314907ffe54ce">opengles31_is_available</a> ()</td></tr>
-<tr class="memdesc:a19c7b9bc5f36935ba40314907ffe54ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the OpenGL ES 3.1 API is available at runtime.  <a href="#a19c7b9bc5f36935ba40314907ffe54ce">More...</a><br /></td></tr>
-<tr class="separator:a19c7b9bc5f36935ba40314907ffe54ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afab814721e78cbfc34e7e7fe2874fa56"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afab814721e78cbfc34e7e7fe2874fa56">string_from_target</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target)</td></tr>
-<tr class="memdesc:afab814721e78cbfc34e7e7fe2874fa56"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given gpu device target to string.  <a href="#afab814721e78cbfc34e7e7fe2874fa56">More...</a><br /></td></tr>
-<tr class="separator:afab814721e78cbfc34e7e7fe2874fa56"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ade888194135e9dcce690e9e71a40620a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ade888194135e9dcce690e9e71a40620a">get_target_from_name</a> (const std::string &amp;device_name)</td></tr>
-<tr class="memdesc:ade888194135e9dcce690e9e71a40620a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU target from a device name.  <a href="#ade888194135e9dcce690e9e71a40620a">More...</a><br /></td></tr>
-<tr class="separator:ade888194135e9dcce690e9e71a40620a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a4a351d5c39dec88af98a671da1c43fd6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4a351d5c39dec88af98a671da1c43fd6">get_arch_from_target</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target)</td></tr>
-<tr class="memdesc:a4a351d5c39dec88af98a671da1c43fd6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU arch.  <a href="#a4a351d5c39dec88af98a671da1c43fd6">More...</a><br /></td></tr>
-<tr class="separator:a4a351d5c39dec88af98a671da1c43fd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a0e3b0d9b90f6c97d5fe97b7d17c7ee25"><td class="memTemplParams" colspan="2">template&lt;typename... Args&gt; </td></tr>
-<tr class="memitem:a0e3b0d9b90f6c97d5fe97b7d17c7ee25"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0e3b0d9b90f6c97d5fe97b7d17c7ee25">gpu_target_is_in</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target_to_check, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target, Args...targets)</td></tr>
-<tr class="memdesc:a0e3b0d9b90f6c97d5fe97b7d17c7ee25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether a gpu target is equal to the provided targets.  <a href="#a0e3b0d9b90f6c97d5fe97b7d17c7ee25">More...</a><br /></td></tr>
-<tr class="separator:a0e3b0d9b90f6c97d5fe97b7d17c7ee25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee087c8a7edb0fb5b7e75b9037e34cf7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aee087c8a7edb0fb5b7e75b9037e34cf7">create_error_va_list</a> (<a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a> error_code, const char *function, const char *file, const int line, const char *msg, va_list args)</td></tr>
+<tr class="memdesc:aee087c8a7edb0fb5b7e75b9037e34cf7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an error containing the error message from variable argument list.  <a href="#aee087c8a7edb0fb5b7e75b9037e34cf7">More...</a><br /></td></tr>
+<tr class="separator:aee087c8a7edb0fb5b7e75b9037e34cf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a439338e8e5a7c76a079aca52e16cff79"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a439338e8e5a7c76a079aca52e16cff79">create_error</a> (<a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a> error_code, const char *function, const char *file, const int line, const char *msg,...)</td></tr>
+<tr class="memdesc:a439338e8e5a7c76a079aca52e16cff79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an error containing the error message.  <a href="#a439338e8e5a7c76a079aca52e16cff79">More...</a><br /></td></tr>
+<tr class="separator:a439338e8e5a7c76a079aca52e16cff79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0768178b90a30994784fd28c5a89323f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0768178b90a30994784fd28c5a89323f">error</a> (const char *function, const char *file, const int line, const char *msg,...)</td></tr>
+<tr class="memdesc:a0768178b90a30994784fd28c5a89323f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print an error message then throw an std::runtime_error.  <a href="#a0768178b90a30994784fd28c5a89323f">More...</a><br /></td></tr>
+<tr class="separator:a0768178b90a30994784fd28c5a89323f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a786b9d823a527bb1e30d38f4dbe52d4b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a786b9d823a527bb1e30d38f4dbe52d4b">get_target_from_device</a> ()</td></tr>
+<tr class="memdesc:a786b9d823a527bb1e30d38f4dbe52d4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU target from GLES using GL_RENDERER enum.  <a href="#a786b9d823a527bb1e30d38f4dbe52d4b">More...</a><br /></td></tr>
+<tr class="separator:a786b9d823a527bb1e30d38f4dbe52d4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c7c5fe99682f92e5e09cf62fb02ac91"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5c7c5fe99682f92e5e09cf62fb02ac91">enqueue</a> (<a class="el" href="classarm__compute_1_1_i_g_c_kernel.xhtml">IGCKernel</a> &amp;kernel, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;window, const <a class="el" href="classarm__compute_1_1gles_1_1_n_d_range.xhtml">gles::NDRange</a> &amp;lws=<a class="el" href="classarm__compute_1_1gles_1_1_n_d_range.xhtml">gles::NDRange</a>(1U, 1U, 1U))</td></tr>
+<tr class="memdesc:a5c7c5fe99682f92e5e09cf62fb02ac91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add the kernel to the command queue with the given window.  <a href="#a5c7c5fe99682f92e5e09cf62fb02ac91">More...</a><br /></td></tr>
+<tr class="separator:a5c7c5fe99682f92e5e09cf62fb02ac91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8ec10f67d9849be264c23c5329d9324"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad8ec10f67d9849be264c23c5329d9324">opengles31_is_available</a> ()</td></tr>
+<tr class="memdesc:ad8ec10f67d9849be264c23c5329d9324"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the OpenGL ES 3.1 API is available at runtime.  <a href="#ad8ec10f67d9849be264c23c5329d9324">More...</a><br /></td></tr>
+<tr class="separator:ad8ec10f67d9849be264c23c5329d9324"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7795707992825c309fe846740dc8cf8"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af7795707992825c309fe846740dc8cf8">string_from_target</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target)</td></tr>
+<tr class="memdesc:af7795707992825c309fe846740dc8cf8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given gpu device target to string.  <a href="#af7795707992825c309fe846740dc8cf8">More...</a><br /></td></tr>
+<tr class="separator:af7795707992825c309fe846740dc8cf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0dc6fb54ac0bbc7bf512fe0ca7414076"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">get_target_from_name</a> (const std::string &amp;device_name)</td></tr>
+<tr class="memdesc:a0dc6fb54ac0bbc7bf512fe0ca7414076"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU target from a device name.  <a href="#a0dc6fb54ac0bbc7bf512fe0ca7414076">More...</a><br /></td></tr>
+<tr class="separator:a0dc6fb54ac0bbc7bf512fe0ca7414076"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2355c2bf5d1950088937416baea24fe6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2355c2bf5d1950088937416baea24fe6">get_arch_from_target</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target)</td></tr>
+<tr class="memdesc:a2355c2bf5d1950088937416baea24fe6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU arch.  <a href="#a2355c2bf5d1950088937416baea24fe6">More...</a><br /></td></tr>
+<tr class="separator:a2355c2bf5d1950088937416baea24fe6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1da498e9b2c2d24883087f62c6bbe75d"><td class="memTemplParams" colspan="2">template&lt;typename... Args&gt; </td></tr>
+<tr class="memitem:a1da498e9b2c2d24883087f62c6bbe75d"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1da498e9b2c2d24883087f62c6bbe75d">gpu_target_is_in</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target_to_check, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target, Args... targets)</td></tr>
+<tr class="memdesc:a1da498e9b2c2d24883087f62c6bbe75d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether a gpu target is equal to the provided targets.  <a href="#a1da498e9b2c2d24883087f62c6bbe75d">More...</a><br /></td></tr>
+<tr class="separator:a1da498e9b2c2d24883087f62c6bbe75d"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aab39ce9a593f7e12a4bf4cb47272b917"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aab39ce9a593f7e12a4bf4cb47272b917">gpu_target_is_in</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target_to_check, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target)</td></tr>
 <tr class="memdesc:aab39ce9a593f7e12a4bf4cb47272b917"><td class="mdescLeft">&#160;</td><td class="mdescRight">Variant of gpu_target_is_in for comparing two targets.  <a href="#aab39ce9a593f7e12a4bf4cb47272b917">More...</a><br /></td></tr>
 <tr class="separator:aab39ce9a593f7e12a4bf4cb47272b917"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a35fb9d1dde1b976f4b7d361aabcc7c0d"><td class="memTemplParams" colspan="2">template&lt;typename Kernel , typename... T&gt; </td></tr>
-<tr class="memitem:a35fb9d1dde1b976f4b7d361aabcc7c0d"><td class="memTemplItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classarm__compute_1_1_kernel.xhtml">Kernel</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a35fb9d1dde1b976f4b7d361aabcc7c0d">create_configure_kernel</a> (T &amp;&amp;...args)</td></tr>
-<tr class="memdesc:a35fb9d1dde1b976f4b7d361aabcc7c0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to create and return a unique_ptr pointed to a CL/GLES kernel object It also calls the kernel's configuration.  <a href="#a35fb9d1dde1b976f4b7d361aabcc7c0d">More...</a><br /></td></tr>
-<tr class="separator:a35fb9d1dde1b976f4b7d361aabcc7c0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f698fa1629f7f800b3c8cd77a3d4b4a"><td class="memTemplParams" colspan="2">template&lt;typename Kernel , typename... T&gt; </td></tr>
+<tr class="memitem:a6f698fa1629f7f800b3c8cd77a3d4b4a"><td class="memTemplItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classarm__compute_1_1_kernel.xhtml">Kernel</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6f698fa1629f7f800b3c8cd77a3d4b4a">create_configure_kernel</a> (T &amp;&amp;... args)</td></tr>
+<tr class="memdesc:a6f698fa1629f7f800b3c8cd77a3d4b4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to create and return a unique_ptr pointed to a CL/GLES kernel object It also calls the kernel's configuration.  <a href="#a6f698fa1629f7f800b3c8cd77a3d4b4a">More...</a><br /></td></tr>
+<tr class="separator:a6f698fa1629f7f800b3c8cd77a3d4b4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:abc72c95941485d8a068fa38372308574"><td class="memTemplParams" colspan="2">template&lt;typename Kernel &gt; </td></tr>
 <tr class="memitem:abc72c95941485d8a068fa38372308574"><td class="memTemplItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classarm__compute_1_1_kernel.xhtml">Kernel</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abc72c95941485d8a068fa38372308574">create_kernel</a> ()</td></tr>
 <tr class="memdesc:abc72c95941485d8a068fa38372308574"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to create and return a unique_ptr pointed to a CL/GLES kernel object.  <a href="#abc72c95941485d8a068fa38372308574">More...</a><br /></td></tr>
@@ -2847,40 +3054,40 @@
 <tr class="memitem:ab7b3af731907e85fcaf72555c446176b"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab7b3af731907e85fcaf72555c446176b">pixel_area_c1u8_clamp</a> (const uint8_t *first_pixel_ptr, size_t stride, size_t width, size_t height, float wr, float hr, int x, int y)</td></tr>
 <tr class="memdesc:ab7b3af731907e85fcaf72555c446176b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the pixel at (x,y) using area interpolation by clamping when out of borders.  <a href="#ab7b3af731907e85fcaf72555c446176b">More...</a><br /></td></tr>
 <tr class="separator:ab7b3af731907e85fcaf72555c446176b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6c0dcc38187027dcb89cd9724bc5a823"><td class="memTemplParams" colspan="2">template&lt;typename L , typename... Ts&gt; </td></tr>
-<tr class="memitem:a6c0dcc38187027dcb89cd9724bc5a823"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</td></tr>
-<tr class="memdesc:a6c0dcc38187027dcb89cd9724bc5a823"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_functino for each element.  <a href="#a6c0dcc38187027dcb89cd9724bc5a823">More...</a><br /></td></tr>
-<tr class="separator:a6c0dcc38187027dcb89cd9724bc5a823"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac2a92cae51d2734a65676052adb33c22"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:ac2a92cae51d2734a65676052adb33c22"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac2a92cae51d2734a65676052adb33c22">update_window_and_padding</a> (<a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win, Ts &amp;&amp;...patterns)</td></tr>
-<tr class="memdesc:ac2a92cae51d2734a65676052adb33c22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update window and padding size for each of the access patterns.  <a href="#ac2a92cae51d2734a65676052adb33c22">More...</a><br /></td></tr>
-<tr class="separator:ac2a92cae51d2734a65676052adb33c22"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1c28e5916fd54b778da115bfe646f588"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1c28e5916fd54b778da115bfe646f588">calculate_max_window</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_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), bool skip_border=false, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
-<tr class="memdesc:a1c28e5916fd54b778da115bfe646f588"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window for a given tensor shape and border setting.  <a href="#a1c28e5916fd54b778da115bfe646f588">More...</a><br /></td></tr>
-<tr class="separator:a1c28e5916fd54b778da115bfe646f588"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5002bf7ec46d52971f9526e94172cfee"><td class="memTemplParams" colspan="2">template&lt;typename L , typename... Ts&gt; </td></tr>
+<tr class="memitem:a5002bf7ec46d52971f9526e94172cfee"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</td></tr>
+<tr class="memdesc:a5002bf7ec46d52971f9526e94172cfee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_functino for each element.  <a href="#a5002bf7ec46d52971f9526e94172cfee">More...</a><br /></td></tr>
+<tr class="separator:a5002bf7ec46d52971f9526e94172cfee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc4bd8e872567d9c4c57d89eb0bb3da1"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:afc4bd8e872567d9c4c57d89eb0bb3da1"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afc4bd8e872567d9c4c57d89eb0bb3da1">update_window_and_padding</a> (<a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win, Ts &amp;&amp;... patterns)</td></tr>
+<tr class="memdesc:afc4bd8e872567d9c4c57d89eb0bb3da1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update window and padding size for each of the access patterns.  <a href="#afc4bd8e872567d9c4c57d89eb0bb3da1">More...</a><br /></td></tr>
+<tr class="separator:afc4bd8e872567d9c4c57d89eb0bb3da1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7980fa5ee693e3282a76da047a1c3b5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab7980fa5ee693e3282a76da047a1c3b5">calculate_max_window</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_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), bool skip_border=false, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
+<tr class="memdesc:ab7980fa5ee693e3282a76da047a1c3b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window for a given tensor shape and border setting.  <a href="#ab7980fa5ee693e3282a76da047a1c3b5">More...</a><br /></td></tr>
+<tr class="separator:ab7980fa5ee693e3282a76da047a1c3b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aa2117aef4381edbdf81e17ec088df7f1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa2117aef4381edbdf81e17ec088df7f1">calculate_max_window</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), bool skip_border=false, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
 <tr class="memdesc:aa2117aef4381edbdf81e17ec088df7f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window for a given tensor shape and border setting.  <a href="#aa2117aef4381edbdf81e17ec088df7f1">More...</a><br /></td></tr>
 <tr class="separator:aa2117aef4381edbdf81e17ec088df7f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a252e257c58bfccbb272c0a5bf81d42cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a252e257c58bfccbb272c0a5bf81d42cb">calculate_max_window_horizontal</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_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), bool skip_border=false, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
-<tr class="memdesc:a252e257c58bfccbb272c0a5bf81d42cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window used by a horizontal kernel for a given tensor shape and border setting.  <a href="#a252e257c58bfccbb272c0a5bf81d42cb">More...</a><br /></td></tr>
-<tr class="separator:a252e257c58bfccbb272c0a5bf81d42cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9047a414d692d8814181a667a7ee68c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9047a414d692d8814181a667a7ee68c4">calculate_max_window_horizontal</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_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), bool skip_border=false, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
+<tr class="memdesc:a9047a414d692d8814181a667a7ee68c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window used by a horizontal kernel for a given tensor shape and border setting.  <a href="#a9047a414d692d8814181a667a7ee68c4">More...</a><br /></td></tr>
+<tr class="separator:a9047a414d692d8814181a667a7ee68c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a47456b4d520aee1cba80bf6e20f6685a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a47456b4d520aee1cba80bf6e20f6685a">calculate_max_window_horizontal</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), bool skip_border=false, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
 <tr class="memdesc:a47456b4d520aee1cba80bf6e20f6685a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window used by a horizontal kernel for a given tensor shape and border setting.  <a href="#a47456b4d520aee1cba80bf6e20f6685a">More...</a><br /></td></tr>
 <tr class="separator:a47456b4d520aee1cba80bf6e20f6685a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a2bbb5d1cdb27c0e8c517cb7c544226c6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2bbb5d1cdb27c0e8c517cb7c544226c6">calculate_max_enlarged_window</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_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
-<tr class="memdesc:a2bbb5d1cdb27c0e8c517cb7c544226c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window for a given tensor shape and border setting.  <a href="#a2bbb5d1cdb27c0e8c517cb7c544226c6">More...</a><br /></td></tr>
-<tr class="separator:a2bbb5d1cdb27c0e8c517cb7c544226c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affc1f59e0b2c29bf81e8c95bf0fa8e76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#affc1f59e0b2c29bf81e8c95bf0fa8e76">calculate_max_enlarged_window</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_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
+<tr class="memdesc:affc1f59e0b2c29bf81e8c95bf0fa8e76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window for a given tensor shape and border setting.  <a href="#affc1f59e0b2c29bf81e8c95bf0fa8e76">More...</a><br /></td></tr>
+<tr class="separator:affc1f59e0b2c29bf81e8c95bf0fa8e76"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:afcdda83b6a85d5798f08d92c0e235e2e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afcdda83b6a85d5798f08d92c0e235e2e">calculate_max_enlarged_window</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
 <tr class="memdesc:afcdda83b6a85d5798f08d92c0e235e2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window for a given tensor shape and border setting.  <a href="#afcdda83b6a85d5798f08d92c0e235e2e">More...</a><br /></td></tr>
 <tr class="separator:afcdda83b6a85d5798f08d92c0e235e2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a133621090cfb0f151340c6e04bd7bcc8"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:a133621090cfb0f151340c6e04bd7bcc8"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a133621090cfb0f151340c6e04bd7bcc8">intersect_valid_regions</a> (const Ts &amp;...regions)</td></tr>
-<tr class="memdesc:a133621090cfb0f151340c6e04bd7bcc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Intersect multiple valid regions.  <a href="#a133621090cfb0f151340c6e04bd7bcc8">More...</a><br /></td></tr>
-<tr class="separator:a133621090cfb0f151340c6e04bd7bcc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a35178800b82e07a49da5a81cdeda9a0c"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
-<tr class="memitem:a35178800b82e07a49da5a81cdeda9a0c"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a35178800b82e07a49da5a81cdeda9a0c">compute_strides</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, T stride_x, Ts &amp;&amp;...fixed_strides)</td></tr>
-<tr class="memdesc:a35178800b82e07a49da5a81cdeda9a0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a strides object based on the provided strides and the tensor dimensions.  <a href="#a35178800b82e07a49da5a81cdeda9a0c">More...</a><br /></td></tr>
-<tr class="separator:a35178800b82e07a49da5a81cdeda9a0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7510e92de273e0457ce12218f712ad4"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:aa7510e92de273e0457ce12218f712ad4"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa7510e92de273e0457ce12218f712ad4">intersect_valid_regions</a> (const Ts &amp;... regions)</td></tr>
+<tr class="memdesc:aa7510e92de273e0457ce12218f712ad4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Intersect multiple valid regions.  <a href="#aa7510e92de273e0457ce12218f712ad4">More...</a><br /></td></tr>
+<tr class="separator:aa7510e92de273e0457ce12218f712ad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac56739a30823647f7d86a0380a2ff62e"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
+<tr class="memitem:ac56739a30823647f7d86a0380a2ff62e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac56739a30823647f7d86a0380a2ff62e">compute_strides</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, T stride_x, Ts &amp;&amp;... fixed_strides)</td></tr>
+<tr class="memdesc:ac56739a30823647f7d86a0380a2ff62e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a strides object based on the provided strides and the tensor dimensions.  <a href="#ac56739a30823647f7d86a0380a2ff62e">More...</a><br /></td></tr>
+<tr class="separator:ac56739a30823647f7d86a0380a2ff62e"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a8c35748731709927597cb5a2c227e682"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
 <tr class="memitem:a8c35748731709927597cb5a2c227e682"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8c35748731709927597cb5a2c227e682">compute_strides</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info)</td></tr>
 <tr class="memdesc:a8c35748731709927597cb5a2c227e682"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a strides object based on the tensor dimensions.  <a href="#a8c35748731709927597cb5a2c227e682">More...</a><br /></td></tr>
@@ -2913,9 +3120,9 @@
 <tr class="memitem:a75509469ec2689ec143f4a37bbcb4437"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a75509469ec2689ec143f4a37bbcb4437">set_quantization_info_if_empty</a> (<a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> quantization_info)</td></tr>
 <tr class="memdesc:a75509469ec2689ec143f4a37bbcb4437"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the quantization info to the specified value if the current quantization info is empty and the data type of asymmetric quantized type.  <a href="#a75509469ec2689ec143f4a37bbcb4437">More...</a><br /></td></tr>
 <tr class="separator:a75509469ec2689ec143f4a37bbcb4437"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a4f83578a33b502bf6419ead091249423"><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.xhtml#a4f83578a33b502bf6419ead091249423">calculate_valid_region_scale</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;src_info, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;dst_shape, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> interpolate_policy, <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> sampling_policy, bool border_undefined)</td></tr>
-<tr class="memdesc:a4f83578a33b502bf6419ead091249423"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to calculate the Valid Region for Scale.  <a href="#a4f83578a33b502bf6419ead091249423">More...</a><br /></td></tr>
-<tr class="separator:a4f83578a33b502bf6419ead091249423"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45509a321422cd1542958b5c33021bda"><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.xhtml#a45509a321422cd1542958b5c33021bda">calculate_valid_region_scale</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;src_info, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;dst_shape, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> interpolate_policy, <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> sampling_policy, bool border_undefined)</td></tr>
+<tr class="memdesc:a45509a321422cd1542958b5c33021bda"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to calculate the Valid Region for Scale.  <a href="#a45509a321422cd1542958b5c33021bda">More...</a><br /></td></tr>
+<tr class="separator:a45509a321422cd1542958b5c33021bda"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ad34f2150f1c9f8a3ecb7298162124e5d"><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.xhtml#ad34f2150f1c9f8a3ecb7298162124e5d">index2coords</a> (const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape, int index)</td></tr>
 <tr class="memdesc:ad34f2150f1c9f8a3ecb7298162124e5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a linear index into n-dimensional coordinates.  <a href="#ad34f2150f1c9f8a3ecb7298162124e5d">More...</a><br /></td></tr>
 <tr class="separator:ad34f2150f1c9f8a3ecb7298162124e5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -2950,6 +3157,9 @@
 <tr class="memitem:a93cc303c8ae098d264f07d37890412de"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a93cc303c8ae098d264f07d37890412de">colorconvert_rgb_to_rgbx</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
 <tr class="memdesc:a93cc303c8ae098d264f07d37890412de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert RGB to RGBX.  <a href="#a93cc303c8ae098d264f07d37890412de">More...</a><br /></td></tr>
 <tr class="separator:a93cc303c8ae098d264f07d37890412de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1d4cf707dec05e3ff1d63d4ce8065ca"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa1d4cf707dec05e3ff1d63d4ce8065ca">colorconvert_rgb_to_u8</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
+<tr class="memdesc:aa1d4cf707dec05e3ff1d63d4ce8065ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert RGB to U8.  <a href="#aa1d4cf707dec05e3ff1d63d4ce8065ca">More...</a><br /></td></tr>
+<tr class="separator:aa1d4cf707dec05e3ff1d63d4ce8065ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:acf7451c0d0f8a4b1cfbb60d7531a43aa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acf7451c0d0f8a4b1cfbb60d7531a43aa">colorconvert_rgbx_to_rgb</a> (const void *input, void *output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
 <tr class="memdesc:acf7451c0d0f8a4b1cfbb60d7531a43aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert RGBX to RGB.  <a href="#acf7451c0d0f8a4b1cfbb60d7531a43aa">More...</a><br /></td></tr>
 <tr class="separator:acf7451c0d0f8a4b1cfbb60d7531a43aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -3032,27 +3242,27 @@
 <tr class="memitem:aa6465367a67af2bae4ca46750231dae0"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa6465367a67af2bae4ca46750231dae0">vpowq_f32</a> (float32x4_t val, float32x4_t n)</td></tr>
 <tr class="memdesc:aa6465367a67af2bae4ca46750231dae0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate n power of a number.  <a href="#aa6465367a67af2bae4ca46750231dae0">More...</a><br /></td></tr>
 <tr class="separator:aa6465367a67af2bae4ca46750231dae0"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6452ac376d4adb94d93a93d678bb6757"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6452ac376d4adb94d93a93d678bb6757">round</a> (float x, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> rounding_policy)</td></tr>
-<tr class="memdesc:a6452ac376d4adb94d93a93d678bb6757"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a rounded value of x.  <a href="#a6452ac376d4adb94d93a93d678bb6757">More...</a><br /></td></tr>
-<tr class="separator:a6452ac376d4adb94d93a93d678bb6757"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a12705a88669cb9fb90451ebe0db53c41"><td class="memTemplParams" colspan="2">template&lt;typename S , typename T &gt; </td></tr>
-<tr class="memitem:a12705a88669cb9fb90451ebe0db53c41"><td class="memTemplItemLeft" align="right" valign="top">constexpr auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a12705a88669cb9fb90451ebe0db53c41">DIV_CEIL</a> (S val, T m) -&gt; decltype((val+m-1)/m)</td></tr>
-<tr class="memdesc:a12705a88669cb9fb90451ebe0db53c41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the rounded up quotient of val / m.  <a href="#a12705a88669cb9fb90451ebe0db53c41">More...</a><br /></td></tr>
-<tr class="separator:a12705a88669cb9fb90451ebe0db53c41"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:adf0c6059174045f80af46a0f1fb57bc6"><td class="memTemplParams" colspan="2">template&lt;typename S , typename T &gt; </td></tr>
-<tr class="memitem:adf0c6059174045f80af46a0f1fb57bc6"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adf0c6059174045f80af46a0f1fb57bc6">ceil_to_multiple</a> (S value, T divisor) -&gt; decltype(((value+divisor-1)/divisor)*divisor)</td></tr>
-<tr class="memdesc:adf0c6059174045f80af46a0f1fb57bc6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the smallest number larger or equal to value that is a multiple of divisor.  <a href="#adf0c6059174045f80af46a0f1fb57bc6">More...</a><br /></td></tr>
-<tr class="separator:adf0c6059174045f80af46a0f1fb57bc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6959e681668a37a9242d2aae4e8b4375"><td class="memTemplParams" colspan="2">template&lt;typename S , typename T &gt; </td></tr>
-<tr class="memitem:a6959e681668a37a9242d2aae4e8b4375"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6959e681668a37a9242d2aae4e8b4375">floor_to_multiple</a> (S value, T divisor) -&gt; decltype((value/divisor)*divisor)</td></tr>
-<tr class="memdesc:a6959e681668a37a9242d2aae4e8b4375"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the largest number smaller or equal to value that is a multiple of divisor.  <a href="#a6959e681668a37a9242d2aae4e8b4375">More...</a><br /></td></tr>
-<tr class="separator:a6959e681668a37a9242d2aae4e8b4375"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaae2b6b1c3f4404121346a4c27b22647"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aaae2b6b1c3f4404121346a4c27b22647">round</a> (float x, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> rounding_policy)</td></tr>
+<tr class="memdesc:aaae2b6b1c3f4404121346a4c27b22647"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a rounded value of x.  <a href="#aaae2b6b1c3f4404121346a4c27b22647">More...</a><br /></td></tr>
+<tr class="separator:aaae2b6b1c3f4404121346a4c27b22647"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acac1575c0edd329ceb4a54d9fe8dcb08"><td class="memTemplParams" colspan="2">template&lt;typename S , typename T &gt; </td></tr>
+<tr class="memitem:acac1575c0edd329ceb4a54d9fe8dcb08"><td class="memTemplItemLeft" align="right" valign="top">constexpr auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acac1575c0edd329ceb4a54d9fe8dcb08">DIV_CEIL</a> (S val, T m) -&gt; decltype((val+m - 1)/m)</td></tr>
+<tr class="memdesc:acac1575c0edd329ceb4a54d9fe8dcb08"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the rounded up quotient of val / m.  <a href="#acac1575c0edd329ceb4a54d9fe8dcb08">More...</a><br /></td></tr>
+<tr class="separator:acac1575c0edd329ceb4a54d9fe8dcb08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab237a0a375cf382d52b61653248d3d4a"><td class="memTemplParams" colspan="2">template&lt;typename S , typename T &gt; </td></tr>
+<tr class="memitem:ab237a0a375cf382d52b61653248d3d4a"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a> (S value, T divisor) -&gt; decltype(((value+divisor - 1)/divisor) *divisor)</td></tr>
+<tr class="memdesc:ab237a0a375cf382d52b61653248d3d4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the smallest number larger or equal to value that is a multiple of divisor.  <a href="#ab237a0a375cf382d52b61653248d3d4a">More...</a><br /></td></tr>
+<tr class="separator:ab237a0a375cf382d52b61653248d3d4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a23062881efd3855d61bae58f330c97db"><td class="memTemplParams" colspan="2">template&lt;typename S , typename T &gt; </td></tr>
+<tr class="memitem:a23062881efd3855d61bae58f330c97db"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a23062881efd3855d61bae58f330c97db">floor_to_multiple</a> (S value, T divisor) -&gt; decltype((value/divisor) *divisor)</td></tr>
+<tr class="memdesc:a23062881efd3855d61bae58f330c97db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the largest number smaller or equal to value that is a multiple of divisor.  <a href="#a23062881efd3855d61bae58f330c97db">More...</a><br /></td></tr>
+<tr class="separator:a23062881efd3855d61bae58f330c97db"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a64c17a5a42d2499a1626222ff9753b4d"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a64c17a5a42d2499a1626222ff9753b4d">build_information</a> ()</td></tr>
-<tr class="memdesc:a64c17a5a42d2499a1626222ff9753b4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the <a class="el" href="namespacearm__compute.xhtml" title="This file contains all available output stages for GEMMLowp on OpenCL. ">arm_compute</a> library build information.  <a href="#a64c17a5a42d2499a1626222ff9753b4d">More...</a><br /></td></tr>
+<tr class="memdesc:a64c17a5a42d2499a1626222ff9753b4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the <a class="el" href="namespacearm__compute.xhtml" title="Copyright (c) 2017-2018 ARM Limited. ">arm_compute</a> library build information.  <a href="#a64c17a5a42d2499a1626222ff9753b4d">More...</a><br /></td></tr>
 <tr class="separator:a64c17a5a42d2499a1626222ff9753b4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aefa4a4d3136d77b85cccfce344f9f37f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aefa4a4d3136d77b85cccfce344f9f37f">read_file</a> (const std::string &amp;filename, bool binary)</td></tr>
-<tr class="memdesc:aefa4a4d3136d77b85cccfce344f9f37f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Load an entire file in memory.  <a href="#aefa4a4d3136d77b85cccfce344f9f37f">More...</a><br /></td></tr>
-<tr class="separator:aefa4a4d3136d77b85cccfce344f9f37f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0d288429eb20baf6da6109f3a21e6bb"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae0d288429eb20baf6da6109f3a21e6bb">read_file</a> (const std::string &amp;filename, bool binary)</td></tr>
+<tr class="memdesc:ae0d288429eb20baf6da6109f3a21e6bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Load an entire file in memory.  <a href="#ae0d288429eb20baf6da6109f3a21e6bb">More...</a><br /></td></tr>
+<tr class="separator:ae0d288429eb20baf6da6109f3a21e6bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:abb7e0f23a4f2e63f39433f158dad47ab"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abb7e0f23a4f2e63f39433f158dad47ab">data_size_from_type</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> data_type)</td></tr>
 <tr class="memdesc:abb7e0f23a4f2e63f39433f158dad47ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">The size in bytes of the data type.  <a href="#abb7e0f23a4f2e63f39433f158dad47ab">More...</a><br /></td></tr>
 <tr class="separator:abb7e0f23a4f2e63f39433f158dad47ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -3104,54 +3314,57 @@
 <tr class="memitem:a3992df9e8723140a53e49dc194d89ef5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3992df9e8723140a53e49dc194d89ef5">data_type_for_convolution_matrix</a> (const int16_t *conv, size_t size)</td></tr>
 <tr class="memdesc:a3992df9e8723140a53e49dc194d89ef5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the accuracy required by the squared convolution calculation.  <a href="#a3992df9e8723140a53e49dc194d89ef5">More...</a><br /></td></tr>
 <tr class="separator:a3992df9e8723140a53e49dc194d89ef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afa7962c747457714d0944af80cb07058"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afa7962c747457714d0944af80cb07058">calculate_same_pad</a> (<a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> input_shape, <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> weights_shape, <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> conv_info)</td></tr>
-<tr class="memdesc:afa7962c747457714d0944af80cb07058"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate padding requirements in case of SAME padding.  <a href="#afa7962c747457714d0944af80cb07058">More...</a><br /></td></tr>
-<tr class="separator:afa7962c747457714d0944af80cb07058"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7d57332eb91a8735f173556b3caf6236"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7d57332eb91a8735f173556b3caf6236">deconvolution_output_shape</a> (const std::pair&lt; unsigned int, unsigned int &gt; &amp;out_dims, <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> input, <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> weights)</td></tr>
-<tr class="memdesc:a7d57332eb91a8735f173556b3caf6236"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns expected shape for the deconvolution output tensor.  <a href="#a7d57332eb91a8735f173556b3caf6236">More...</a><br /></td></tr>
-<tr class="separator:a7d57332eb91a8735f173556b3caf6236"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5c7b26988083a67a91cd3e7962f38521"><td class="memItemLeft" align="right" valign="top">const std::pair&lt; unsigned int, unsigned int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5c7b26988083a67a91cd3e7962f38521">deconvolution_output_dimensions</a> (unsigned int in_width, unsigned int in_height, unsigned int kernel_width, unsigned int kernel_height, unsigned int padx, unsigned int pady, unsigned int inner_border_right, unsigned int inner_border_top, unsigned int stride_x, unsigned int stride_y)</td></tr>
-<tr class="memdesc:a5c7b26988083a67a91cd3e7962f38521"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns expected width and height of the deconvolution's output tensor.  <a href="#a5c7b26988083a67a91cd3e7962f38521">More...</a><br /></td></tr>
-<tr class="separator:a5c7b26988083a67a91cd3e7962f38521"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac78192301777700de24d8c75667baf35"><td class="memItemLeft" align="right" valign="top">const std::pair&lt; unsigned int, unsigned int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac78192301777700de24d8c75667baf35">scaled_dimensions</a> (unsigned int width, unsigned int height, unsigned int kernel_width, unsigned int kernel_height, const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;pad_stride_info, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;dilation=<a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a>(1U, 1U))</td></tr>
-<tr class="memdesc:ac78192301777700de24d8c75667baf35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns expected width and height of output scaled tensor depending on dimensions rounding mode.  <a href="#ac78192301777700de24d8c75667baf35">More...</a><br /></td></tr>
-<tr class="separator:ac78192301777700de24d8c75667baf35"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9c92c867fc64454545668d87b20979eb"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9c92c867fc64454545668d87b20979eb">string_from_format</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
-<tr class="memdesc:a9c92c867fc64454545668d87b20979eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a tensor format into a string.  <a href="#a9c92c867fc64454545668d87b20979eb">More...</a><br /></td></tr>
-<tr class="separator:a9c92c867fc64454545668d87b20979eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a106c203dd6af234d38452ea0ee7b2ddc"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a106c203dd6af234d38452ea0ee7b2ddc">string_from_channel</a> (<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> channel)</td></tr>
-<tr class="memdesc:a106c203dd6af234d38452ea0ee7b2ddc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a channel identity into a string.  <a href="#a106c203dd6af234d38452ea0ee7b2ddc">More...</a><br /></td></tr>
-<tr class="separator:a106c203dd6af234d38452ea0ee7b2ddc"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aa7755f939796ad7076886813ff89ed77"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa7755f939796ad7076886813ff89ed77">string_from_data_layout</a> (<a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> dl)</td></tr>
-<tr class="memdesc:aa7755f939796ad7076886813ff89ed77"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a data layout identity into a string.  <a href="#aa7755f939796ad7076886813ff89ed77">More...</a><br /></td></tr>
-<tr class="separator:aa7755f939796ad7076886813ff89ed77"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aefa1d9648995e5eccc693c690e27aa88"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aefa1d9648995e5eccc693c690e27aa88">string_from_data_type</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt)</td></tr>
-<tr class="memdesc:aefa1d9648995e5eccc693c690e27aa88"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a data type identity into a string.  <a href="#aefa1d9648995e5eccc693c690e27aa88">More...</a><br /></td></tr>
-<tr class="separator:aefa1d9648995e5eccc693c690e27aa88"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a018795ab2489d17309e158ff5c060ab1"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a018795ab2489d17309e158ff5c060ab1">string_from_matrix_pattern</a> (<a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> pattern)</td></tr>
-<tr class="memdesc:a018795ab2489d17309e158ff5c060ab1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a matrix pattern into a string.  <a href="#a018795ab2489d17309e158ff5c060ab1">More...</a><br /></td></tr>
-<tr class="separator:a018795ab2489d17309e158ff5c060ab1"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac955c978e18cc9bf6daea31f13076fba"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac955c978e18cc9bf6daea31f13076fba">string_from_activation_func</a> (<a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">ActivationLayerInfo::ActivationFunction</a> act)</td></tr>
-<tr class="memdesc:ac955c978e18cc9bf6daea31f13076fba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given activation function to a string.  <a href="#ac955c978e18cc9bf6daea31f13076fba">More...</a><br /></td></tr>
-<tr class="separator:ac955c978e18cc9bf6daea31f13076fba"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a14831547f57ecf5f0deef888ad41ad30"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a14831547f57ecf5f0deef888ad41ad30">string_from_non_linear_filter_function</a> (<a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> function)</td></tr>
-<tr class="memdesc:a14831547f57ecf5f0deef888ad41ad30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given non linear function to a string.  <a href="#a14831547f57ecf5f0deef888ad41ad30">More...</a><br /></td></tr>
-<tr class="separator:a14831547f57ecf5f0deef888ad41ad30"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ade34f5e72f050fd3665f3294dfb15850"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ade34f5e72f050fd3665f3294dfb15850">string_from_interpolation_policy</a> (<a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> policy)</td></tr>
-<tr class="memdesc:ade34f5e72f050fd3665f3294dfb15850"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given interpolation policy to a string.  <a href="#ade34f5e72f050fd3665f3294dfb15850">More...</a><br /></td></tr>
-<tr class="separator:ade34f5e72f050fd3665f3294dfb15850"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:abd15add5c6c7de5c8205ce236875aadd"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abd15add5c6c7de5c8205ce236875aadd">string_from_border_mode</a> (<a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> border_mode)</td></tr>
-<tr class="memdesc:abd15add5c6c7de5c8205ce236875aadd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given border mode policy to a string.  <a href="#abd15add5c6c7de5c8205ce236875aadd">More...</a><br /></td></tr>
-<tr class="separator:abd15add5c6c7de5c8205ce236875aadd"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afb5698af5404d5d11e3516c87b6e7041"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afb5698af5404d5d11e3516c87b6e7041">string_from_norm_type</a> (<a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> type)</td></tr>
-<tr class="memdesc:afb5698af5404d5d11e3516c87b6e7041"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given normalization type to a string.  <a href="#afb5698af5404d5d11e3516c87b6e7041">More...</a><br /></td></tr>
-<tr class="separator:afb5698af5404d5d11e3516c87b6e7041"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a84a03e85d2c40bf54ec8cdd5e3715c58"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a84a03e85d2c40bf54ec8cdd5e3715c58">string_from_pooling_type</a> (<a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> type)</td></tr>
-<tr class="memdesc:a84a03e85d2c40bf54ec8cdd5e3715c58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given pooling type to a string.  <a href="#a84a03e85d2c40bf54ec8cdd5e3715c58">More...</a><br /></td></tr>
-<tr class="separator:a84a03e85d2c40bf54ec8cdd5e3715c58"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a532fb45c0261724a4c2e755cfd3a44e6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a532fb45c0261724a4c2e755cfd3a44e6">lower_string</a> (const std::string &amp;val)</td></tr>
-<tr class="memdesc:a532fb45c0261724a4c2e755cfd3a44e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Lower a given string.  <a href="#a532fb45c0261724a4c2e755cfd3a44e6">More...</a><br /></td></tr>
-<tr class="separator:a532fb45c0261724a4c2e755cfd3a44e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60e358f879bf4ca86ad938d1f1ef9a64"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a60e358f879bf4ca86ad938d1f1ef9a64">calculate_same_pad</a> (<a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> input_shape, <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> weights_shape, <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> conv_info)</td></tr>
+<tr class="memdesc:a60e358f879bf4ca86ad938d1f1ef9a64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate padding requirements in case of SAME padding.  <a href="#a60e358f879bf4ca86ad938d1f1ef9a64">More...</a><br /></td></tr>
+<tr class="separator:a60e358f879bf4ca86ad938d1f1ef9a64"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49d307dcc8f16084a061e1b6e8140eb7"><td class="memItemLeft" align="right" valign="top">const std::pair&lt; unsigned int, unsigned int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a49d307dcc8f16084a061e1b6e8140eb7">deconvolution_output_dimensions</a> (unsigned int in_width, unsigned int in_height, unsigned int kernel_width, unsigned int kernel_height, unsigned int padx, unsigned int pady, unsigned int stride_x, unsigned int stride_y)</td></tr>
+<tr class="memdesc:a49d307dcc8f16084a061e1b6e8140eb7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns expected width and height of the deconvolution's output tensor.  <a href="#a49d307dcc8f16084a061e1b6e8140eb7">More...</a><br /></td></tr>
+<tr class="separator:a49d307dcc8f16084a061e1b6e8140eb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a546c6bed3c307414e8d0934bc13259e5"><td class="memItemLeft" align="right" valign="top">const std::pair&lt; unsigned int, unsigned int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a546c6bed3c307414e8d0934bc13259e5">scaled_dimensions</a> (unsigned int width, unsigned int height, unsigned int kernel_width, unsigned int kernel_height, const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;pad_stride_info, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;dilation=<a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a>(1U, 1U))</td></tr>
+<tr class="memdesc:a546c6bed3c307414e8d0934bc13259e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns expected width and height of output scaled tensor depending on dimensions rounding mode.  <a href="#a546c6bed3c307414e8d0934bc13259e5">More...</a><br /></td></tr>
+<tr class="separator:a546c6bed3c307414e8d0934bc13259e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8b82da7b5e0f6192f415ac347c9e0555"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8b82da7b5e0f6192f415ac347c9e0555">string_from_format</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
+<tr class="memdesc:a8b82da7b5e0f6192f415ac347c9e0555"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a tensor format into a string.  <a href="#a8b82da7b5e0f6192f415ac347c9e0555">More...</a><br /></td></tr>
+<tr class="separator:a8b82da7b5e0f6192f415ac347c9e0555"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0dfcd19fb6510cd3c303db6c4583ee6"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af0dfcd19fb6510cd3c303db6c4583ee6">string_from_channel</a> (<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> channel)</td></tr>
+<tr class="memdesc:af0dfcd19fb6510cd3c303db6c4583ee6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a channel identity into a string.  <a href="#af0dfcd19fb6510cd3c303db6c4583ee6">More...</a><br /></td></tr>
+<tr class="separator:af0dfcd19fb6510cd3c303db6c4583ee6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56b9e25c2e8731ca5488e7b3ccd66f58"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a56b9e25c2e8731ca5488e7b3ccd66f58">string_from_data_layout</a> (<a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> dl)</td></tr>
+<tr class="memdesc:a56b9e25c2e8731ca5488e7b3ccd66f58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a data layout identity into a string.  <a href="#a56b9e25c2e8731ca5488e7b3ccd66f58">More...</a><br /></td></tr>
+<tr class="separator:a56b9e25c2e8731ca5488e7b3ccd66f58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a142b55a483cadf4e1068a1a09a55e8e9"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a142b55a483cadf4e1068a1a09a55e8e9">string_from_data_type</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt)</td></tr>
+<tr class="memdesc:a142b55a483cadf4e1068a1a09a55e8e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a data type identity into a string.  <a href="#a142b55a483cadf4e1068a1a09a55e8e9">More...</a><br /></td></tr>
+<tr class="separator:a142b55a483cadf4e1068a1a09a55e8e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a067481a9a245a2ee831a650e72a377ce"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a067481a9a245a2ee831a650e72a377ce">string_from_matrix_pattern</a> (<a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> pattern)</td></tr>
+<tr class="memdesc:a067481a9a245a2ee831a650e72a377ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a matrix pattern into a string.  <a href="#a067481a9a245a2ee831a650e72a377ce">More...</a><br /></td></tr>
+<tr class="separator:a067481a9a245a2ee831a650e72a377ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a635f1895d94050329b7da12850d1a056"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a635f1895d94050329b7da12850d1a056">string_from_activation_func</a> (<a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">ActivationLayerInfo::ActivationFunction</a> act)</td></tr>
+<tr class="memdesc:a635f1895d94050329b7da12850d1a056"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given activation function to a string.  <a href="#a635f1895d94050329b7da12850d1a056">More...</a><br /></td></tr>
+<tr class="separator:a635f1895d94050329b7da12850d1a056"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99248d472f05dbf03ac613620f5acbbb"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a99248d472f05dbf03ac613620f5acbbb">string_from_non_linear_filter_function</a> (<a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> function)</td></tr>
+<tr class="memdesc:a99248d472f05dbf03ac613620f5acbbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given non linear function to a string.  <a href="#a99248d472f05dbf03ac613620f5acbbb">More...</a><br /></td></tr>
+<tr class="separator:a99248d472f05dbf03ac613620f5acbbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e4a3ad379526db61e1ebf469b455f83"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3e4a3ad379526db61e1ebf469b455f83">string_from_interpolation_policy</a> (<a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> policy)</td></tr>
+<tr class="memdesc:a3e4a3ad379526db61e1ebf469b455f83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given interpolation policy to a string.  <a href="#a3e4a3ad379526db61e1ebf469b455f83">More...</a><br /></td></tr>
+<tr class="separator:a3e4a3ad379526db61e1ebf469b455f83"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0204b49ec236bbaedb1cf96def276d4"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae0204b49ec236bbaedb1cf96def276d4">string_from_border_mode</a> (<a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> border_mode)</td></tr>
+<tr class="memdesc:ae0204b49ec236bbaedb1cf96def276d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given border mode policy to a string.  <a href="#ae0204b49ec236bbaedb1cf96def276d4">More...</a><br /></td></tr>
+<tr class="separator:ae0204b49ec236bbaedb1cf96def276d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0569839ee85ad0e35edaaf3b4c80d706"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0569839ee85ad0e35edaaf3b4c80d706">string_from_norm_type</a> (<a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> type)</td></tr>
+<tr class="memdesc:a0569839ee85ad0e35edaaf3b4c80d706"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given normalization type to a string.  <a href="#a0569839ee85ad0e35edaaf3b4c80d706">More...</a><br /></td></tr>
+<tr class="separator:a0569839ee85ad0e35edaaf3b4c80d706"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1040394085749e4d02a0d4350493ec94"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1040394085749e4d02a0d4350493ec94">string_from_pooling_type</a> (<a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> type)</td></tr>
+<tr class="memdesc:a1040394085749e4d02a0d4350493ec94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given pooling type to a string.  <a href="#a1040394085749e4d02a0d4350493ec94">More...</a><br /></td></tr>
+<tr class="separator:a1040394085749e4d02a0d4350493ec94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a291164a04581bf953aa65ae87cc201a2"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a291164a04581bf953aa65ae87cc201a2">string_from_gemmlowp_output_stage</a> (<a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864">GEMMLowpOutputStageType</a> output_stage)</td></tr>
+<tr class="memdesc:a291164a04581bf953aa65ae87cc201a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given GEMMLowp output stage to a string.  <a href="#a291164a04581bf953aa65ae87cc201a2">More...</a><br /></td></tr>
+<tr class="separator:a291164a04581bf953aa65ae87cc201a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6eaf2181f8a8c418acaf3af76239997"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad6eaf2181f8a8c418acaf3af76239997">string_from_pixel_value</a> (const <a class="el" href="classarm__compute_1_1_pixel_value.xhtml">PixelValue</a> &amp;value, const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> data_type)</td></tr>
+<tr class="memdesc:ad6eaf2181f8a8c418acaf3af76239997"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="classarm__compute_1_1_pixel_value.xhtml" title="Class describing the value of a pixel for any image format. ">PixelValue</a> to a string, represented through the specific data type.  <a href="#ad6eaf2181f8a8c418acaf3af76239997">More...</a><br /></td></tr>
+<tr class="separator:ad6eaf2181f8a8c418acaf3af76239997"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a7bb17a0a0414a7162f635776a02eb5"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0a7bb17a0a0414a7162f635776a02eb5">lower_string</a> (const std::string &amp;val)</td></tr>
+<tr class="memdesc:a0a7bb17a0a0414a7162f635776a02eb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Lower a given string.  <a href="#a0a7bb17a0a0414a7162f635776a02eb5">More...</a><br /></td></tr>
+<tr class="separator:a0a7bb17a0a0414a7162f635776a02eb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:af5982a092e9eb743fce2d6392bdd8897"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af5982a092e9eb743fce2d6392bdd8897">is_data_type_float</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt)</td></tr>
 <tr class="memdesc:af5982a092e9eb743fce2d6392bdd8897"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a given data type is of floating point type.  <a href="#af5982a092e9eb743fce2d6392bdd8897">More...</a><br /></td></tr>
 <tr class="separator:af5982a092e9eb743fce2d6392bdd8897"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -3172,169 +3385,443 @@
 <tr class="memitem:aaecee617b967dd96f27d2f36732fb68e"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aaecee617b967dd96f27d2f36732fb68e">max_consecutive_elements_display_width_impl</a> (std::ostream &amp;s, const T *ptr, unsigned int n)</td></tr>
 <tr class="memdesc:aaecee617b967dd96f27d2f36732fb68e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identify the maximum width of n consecutive elements.  <a href="#aaecee617b967dd96f27d2f36732fb68e">More...</a><br /></td></tr>
 <tr class="separator:aaecee617b967dd96f27d2f36732fb68e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a51a0d2ae440bc8cab3fbbe84bfea8b1d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a51a0d2ae440bc8cab3fbbe84bfea8b1d">print_consecutive_elements</a> (std::ostream &amp;s, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt, const uint8_t *ptr, unsigned int n, int stream_width, const std::string &amp;element_delim=&quot; &quot;)</td></tr>
-<tr class="memdesc:a51a0d2ae440bc8cab3fbbe84bfea8b1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print consecutive elements to an output stream.  <a href="#a51a0d2ae440bc8cab3fbbe84bfea8b1d">More...</a><br /></td></tr>
-<tr class="separator:a51a0d2ae440bc8cab3fbbe84bfea8b1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac3f2de3a35ff8d9a47b5b793637784e7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac3f2de3a35ff8d9a47b5b793637784e7">max_consecutive_elements_display_width</a> (std::ostream &amp;s, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt, const uint8_t *ptr, unsigned int n)</td></tr>
-<tr class="memdesc:ac3f2de3a35ff8d9a47b5b793637784e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identify the maximum width of n consecutive elements.  <a href="#ac3f2de3a35ff8d9a47b5b793637784e7">More...</a><br /></td></tr>
-<tr class="separator:ac3f2de3a35ff8d9a47b5b793637784e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af4587cd36ddbf2e4dde217d1a1007940"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:af4587cd36ddbf2e4dde217d1a1007940"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">error_on_nullptr</a> (const char *function, const char *file, const int line, Ts &amp;&amp;...pointers)</td></tr>
-<tr class="memdesc:af4587cd36ddbf2e4dde217d1a1007940"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an error if one of the pointers is a nullptr.  <a href="#af4587cd36ddbf2e4dde217d1a1007940">More...</a><br /></td></tr>
-<tr class="separator:af4587cd36ddbf2e4dde217d1a1007940"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a75738bb24f735248ab9584cd24544234"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a75738bb24f735248ab9584cd24544234">error_on_mismatching_windows</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;full, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
-<tr class="memdesc:a75738bb24f735248ab9584cd24544234"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed window is invalid.  <a href="#a75738bb24f735248ab9584cd24544234">More...</a><br /></td></tr>
-<tr class="separator:a75738bb24f735248ab9584cd24544234"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aceb8dd0f6a4e2539b39b5a69a1c345b4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aceb8dd0f6a4e2539b39b5a69a1c345b4">error_on_invalid_subwindow</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;full, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;sub)</td></tr>
-<tr class="memdesc:aceb8dd0f6a4e2539b39b5a69a1c345b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed subwindow is invalid.  <a href="#aceb8dd0f6a4e2539b39b5a69a1c345b4">More...</a><br /></td></tr>
-<tr class="separator:aceb8dd0f6a4e2539b39b5a69a1c345b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a220627e9e23de1058191022aea58e1cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a220627e9e23de1058191022aea58e1cf">error_on_window_not_collapsable_at_dimension</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;full, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;window, const int dim)</td></tr>
-<tr class="memdesc:a220627e9e23de1058191022aea58e1cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the window can't be collapsed at the given dimension.  <a href="#a220627e9e23de1058191022aea58e1cf">More...</a><br /></td></tr>
-<tr class="separator:a220627e9e23de1058191022aea58e1cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a454f8112fcca60b99883f19ff43daf9f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a454f8112fcca60b99883f19ff43daf9f">error_on_coordinates_dimensions_gte</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;pos, unsigned int max_dim)</td></tr>
-<tr class="memdesc:a454f8112fcca60b99883f19ff43daf9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed coordinates have too many dimensions.  <a href="#a454f8112fcca60b99883f19ff43daf9f">More...</a><br /></td></tr>
-<tr class="separator:a454f8112fcca60b99883f19ff43daf9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1b1ebe735a15f66be7ebe8dccdbcee15"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1b1ebe735a15f66be7ebe8dccdbcee15">error_on_window_dimensions_gte</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win, unsigned int max_dim)</td></tr>
-<tr class="memdesc:a1b1ebe735a15f66be7ebe8dccdbcee15"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed window has too many dimensions.  <a href="#a1b1ebe735a15f66be7ebe8dccdbcee15">More...</a><br /></td></tr>
-<tr class="separator:a1b1ebe735a15f66be7ebe8dccdbcee15"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ab3f385292b90327061e1276f3e3445c7"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
-<tr class="memitem:ab3f385292b90327061e1276f3e3445c7"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab3f385292b90327061e1276f3e3445c7">error_on_mismatching_dimensions</a> (const char *function, const char *file, int line, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dim1, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dim2, Ts &amp;&amp;...dims)</td></tr>
-<tr class="memdesc:ab3f385292b90327061e1276f3e3445c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed dimension objects differ.  <a href="#ab3f385292b90327061e1276f3e3445c7">More...</a><br /></td></tr>
-<tr class="separator:ab3f385292b90327061e1276f3e3445c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5bee409f8a6904df028626835b3a19be"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:a5bee409f8a6904df028626835b3a19be"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5bee409f8a6904df028626835b3a19be">error_on_tensors_not_even</a> (const char *function, const char *file, int line, const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor1, Ts...tensors)</td></tr>
-<tr class="memdesc:a5bee409f8a6904df028626835b3a19be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor objects are not even.  <a href="#a5bee409f8a6904df028626835b3a19be">More...</a><br /></td></tr>
-<tr class="separator:a5bee409f8a6904df028626835b3a19be"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ade35257cf58582ca7c3f6c7d1ceff5f2"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:ade35257cf58582ca7c3f6c7d1ceff5f2"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ade35257cf58582ca7c3f6c7d1ceff5f2">error_on_tensors_not_subsampled</a> (const char *function, const char *file, int line, const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format, 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_i_tensor.xhtml">ITensor</a> *tensor1, Ts...tensors)</td></tr>
-<tr class="memdesc:ade35257cf58582ca7c3f6c7d1ceff5f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor objects are not sub-sampled.  <a href="#ade35257cf58582ca7c3f6c7d1ceff5f2">More...</a><br /></td></tr>
-<tr class="separator:ade35257cf58582ca7c3f6c7d1ceff5f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aea117e0cebca5f4642ed3f269217a09e"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:aea117e0cebca5f4642ed3f269217a09e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aea117e0cebca5f4642ed3f269217a09e">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_1, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_2, Ts...tensor_infos)</td></tr>
-<tr class="memdesc:aea117e0cebca5f4642ed3f269217a09e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensor infos have different shapes from the given dimension.  <a href="#aea117e0cebca5f4642ed3f269217a09e">More...</a><br /></td></tr>
-<tr class="separator:aea117e0cebca5f4642ed3f269217a09e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a41328dd4b943d34c1cc61410571fd6fa"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:a41328dd4b943d34c1cc61410571fd6fa"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a41328dd4b943d34c1cc61410571fd6fa">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_1, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_2, Ts...tensors)</td></tr>
-<tr class="memdesc:a41328dd4b943d34c1cc61410571fd6fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different shapes from the given dimension.  <a href="#a41328dd4b943d34c1cc61410571fd6fa">More...</a><br /></td></tr>
-<tr class="separator:a41328dd4b943d34c1cc61410571fd6fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aac6150cce1c9c666600e4b320a0066e9"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:aac6150cce1c9c666600e4b320a0066e9"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aac6150cce1c9c666600e4b320a0066e9">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, unsigned int upper_dim, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_1, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_2, Ts...tensor_infos)</td></tr>
-<tr class="memdesc:aac6150cce1c9c666600e4b320a0066e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different shapes from the given dimension.  <a href="#aac6150cce1c9c666600e4b320a0066e9">More...</a><br /></td></tr>
-<tr class="separator:aac6150cce1c9c666600e4b320a0066e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afa04b5bdea84e0effab066e3b1324ec5"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:afa04b5bdea84e0effab066e3b1324ec5"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afa04b5bdea84e0effab066e3b1324ec5">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, unsigned int upper_dim, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_1, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_2, Ts...tensors)</td></tr>
-<tr class="memdesc:afa04b5bdea84e0effab066e3b1324ec5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different shapes from the given dimension.  <a href="#afa04b5bdea84e0effab066e3b1324ec5">More...</a><br /></td></tr>
-<tr class="separator:afa04b5bdea84e0effab066e3b1324ec5"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:adc72c7263d6751e6e1a71fd33c6f8955"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:adc72c7263d6751e6e1a71fd33c6f8955"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adc72c7263d6751e6e1a71fd33c6f8955">error_on_mismatching_data_layouts</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, Ts...tensor_infos)</td></tr>
-<tr class="memdesc:adc72c7263d6751e6e1a71fd33c6f8955"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor infos have different data layouts.  <a href="#adc72c7263d6751e6e1a71fd33c6f8955">More...</a><br /></td></tr>
-<tr class="separator:adc72c7263d6751e6e1a71fd33c6f8955"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8571c7d34a35bcbddf5e4e2538ea0b10"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:a8571c7d34a35bcbddf5e4e2538ea0b10"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8571c7d34a35bcbddf5e4e2538ea0b10">error_on_mismatching_data_layouts</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, Ts...tensors)</td></tr>
-<tr class="memdesc:a8571c7d34a35bcbddf5e4e2538ea0b10"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensors have different data layouts.  <a href="#a8571c7d34a35bcbddf5e4e2538ea0b10">More...</a><br /></td></tr>
-<tr class="separator:a8571c7d34a35bcbddf5e4e2538ea0b10"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a00672eb7b5db5f6396b39b241eaf12f7"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:a00672eb7b5db5f6396b39b241eaf12f7"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a00672eb7b5db5f6396b39b241eaf12f7">error_on_mismatching_data_types</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, Ts...tensor_infos)</td></tr>
-<tr class="memdesc:a00672eb7b5db5f6396b39b241eaf12f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensor infos have different data types.  <a href="#a00672eb7b5db5f6396b39b241eaf12f7">More...</a><br /></td></tr>
-<tr class="separator:a00672eb7b5db5f6396b39b241eaf12f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a709c2aef39aa212b840c6395fc20ce17"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:a709c2aef39aa212b840c6395fc20ce17"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a709c2aef39aa212b840c6395fc20ce17">error_on_mismatching_data_types</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, Ts...tensors)</td></tr>
-<tr class="memdesc:a709c2aef39aa212b840c6395fc20ce17"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different data types.  <a href="#a709c2aef39aa212b840c6395fc20ce17">More...</a><br /></td></tr>
-<tr class="separator:a709c2aef39aa212b840c6395fc20ce17"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af4c3199d58278db542e1cdfb72a41901"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:af4c3199d58278db542e1cdfb72a41901"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af4c3199d58278db542e1cdfb72a41901">error_on_mismatching_quantization_info</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_1, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_2, Ts...tensor_infos)</td></tr>
-<tr class="memdesc:af4c3199d58278db542e1cdfb72a41901"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor infos have different asymmetric quantized data types or different quantization info.  <a href="#af4c3199d58278db542e1cdfb72a41901">More...</a><br /></td></tr>
-<tr class="separator:af4c3199d58278db542e1cdfb72a41901"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5be375b525bba68610a75da0a043df3a"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
-<tr class="memitem:a5be375b525bba68610a75da0a043df3a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5be375b525bba68610a75da0a043df3a">error_on_mismatching_quantization_info</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_1, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_2, Ts...tensors)</td></tr>
-<tr class="memdesc:a5be375b525bba68610a75da0a043df3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor have different asymmetric quantized data types or different quantization info.  <a href="#a5be375b525bba68610a75da0a043df3a">More...</a><br /></td></tr>
-<tr class="separator:a5be375b525bba68610a75da0a043df3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a0b360558b516e256f0af005a164c674e"><td class="memTemplParams" colspan="2">template&lt;typename T , typename F , typename... Fs&gt; </td></tr>
-<tr class="memitem:a0b360558b516e256f0af005a164c674e"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0b360558b516e256f0af005a164c674e">error_on_format_not_in</a> (const char *function, const char *file, const int line, const T *object, F &amp;&amp;format, Fs &amp;&amp;...formats)</td></tr>
-<tr class="memdesc:a0b360558b516e256f0af005a164c674e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Throw an error if the format of the passed tensor/multi-image does not match any of the formats provided.  <a href="#a0b360558b516e256f0af005a164c674e">More...</a><br /></td></tr>
-<tr class="separator:a0b360558b516e256f0af005a164c674e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a774ec1fdc7bd1e7973c866d13734bc21"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
-<tr class="memitem:a774ec1fdc7bd1e7973c866d13734bc21"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a774ec1fdc7bd1e7973c866d13734bc21">error_on_data_type_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, T &amp;&amp;dt, Ts &amp;&amp;...dts)</td></tr>
-<tr class="memdesc:a774ec1fdc7bd1e7973c866d13734bc21"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor info does not match any of the data types provided.  <a href="#a774ec1fdc7bd1e7973c866d13734bc21">More...</a><br /></td></tr>
-<tr class="separator:a774ec1fdc7bd1e7973c866d13734bc21"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a4ae0ca8176fce8caa48601dc8324ca97"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
-<tr class="memitem:a4ae0ca8176fce8caa48601dc8324ca97"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4ae0ca8176fce8caa48601dc8324ca97">error_on_data_type_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, T &amp;&amp;dt, Ts &amp;&amp;...dts)</td></tr>
-<tr class="memdesc:a4ae0ca8176fce8caa48601dc8324ca97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor does not match any of the data types provided.  <a href="#a4ae0ca8176fce8caa48601dc8324ca97">More...</a><br /></td></tr>
-<tr class="separator:a4ae0ca8176fce8caa48601dc8324ca97"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a499a45039b9bba66384504843d5823d4"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
-<tr class="memitem:a499a45039b9bba66384504843d5823d4"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a499a45039b9bba66384504843d5823d4">error_on_data_type_channel_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, size_t num_channels, T &amp;&amp;dt, Ts &amp;&amp;...dts)</td></tr>
-<tr class="memdesc:a499a45039b9bba66384504843d5823d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type or the number of channels of the passed tensor info does not match any of the data types and number of channels provided.  <a href="#a499a45039b9bba66384504843d5823d4">More...</a><br /></td></tr>
-<tr class="separator:a499a45039b9bba66384504843d5823d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ad3137e73dbd78133d25751abd84540d8"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
-<tr class="memitem:ad3137e73dbd78133d25751abd84540d8"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad3137e73dbd78133d25751abd84540d8">error_on_data_type_channel_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, size_t num_channels, T &amp;&amp;dt, Ts &amp;&amp;...dts)</td></tr>
-<tr class="memdesc:ad3137e73dbd78133d25751abd84540d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type or the number of channels of the passed tensor does not match any of the data types and number of channels provided.  <a href="#ad3137e73dbd78133d25751abd84540d8">More...</a><br /></td></tr>
-<tr class="separator:ad3137e73dbd78133d25751abd84540d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab345de887f15705698d993b97d848bdc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab345de887f15705698d993b97d848bdc">print_consecutive_elements</a> (std::ostream &amp;s, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt, const uint8_t *ptr, unsigned int n, int stream_width, const std::string &amp;element_delim=&quot; &quot;)</td></tr>
+<tr class="memdesc:ab345de887f15705698d993b97d848bdc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print consecutive elements to an output stream.  <a href="#ab345de887f15705698d993b97d848bdc">More...</a><br /></td></tr>
+<tr class="separator:ab345de887f15705698d993b97d848bdc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfbf24db2a651269a83f7e49e2b86850"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adfbf24db2a651269a83f7e49e2b86850">max_consecutive_elements_display_width</a> (std::ostream &amp;s, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt, const uint8_t *ptr, unsigned int n)</td></tr>
+<tr class="memdesc:adfbf24db2a651269a83f7e49e2b86850"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identify the maximum width of n consecutive elements.  <a href="#adfbf24db2a651269a83f7e49e2b86850">More...</a><br /></td></tr>
+<tr class="separator:adfbf24db2a651269a83f7e49e2b86850"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a069d7a20d1a7d62042f23039b356113b"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:a069d7a20d1a7d62042f23039b356113b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">error_on_nullptr</a> (const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</td></tr>
+<tr class="memdesc:a069d7a20d1a7d62042f23039b356113b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an error if one of the pointers is a nullptr.  <a href="#a069d7a20d1a7d62042f23039b356113b">More...</a><br /></td></tr>
+<tr class="separator:a069d7a20d1a7d62042f23039b356113b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7f5b38e9d5391afc4a5ce5702e7379b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad7f5b38e9d5391afc4a5ce5702e7379b">error_on_mismatching_windows</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;full, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
+<tr class="memdesc:ad7f5b38e9d5391afc4a5ce5702e7379b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed window is invalid.  <a href="#ad7f5b38e9d5391afc4a5ce5702e7379b">More...</a><br /></td></tr>
+<tr class="separator:ad7f5b38e9d5391afc4a5ce5702e7379b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae93ff1ca47057b95d0c6fd0d287253a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae93ff1ca47057b95d0c6fd0d287253a8">error_on_invalid_subwindow</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;full, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;sub)</td></tr>
+<tr class="memdesc:ae93ff1ca47057b95d0c6fd0d287253a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed subwindow is invalid.  <a href="#ae93ff1ca47057b95d0c6fd0d287253a8">More...</a><br /></td></tr>
+<tr class="separator:ae93ff1ca47057b95d0c6fd0d287253a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f63a617a4897663b386ba5e1f5cb675"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4f63a617a4897663b386ba5e1f5cb675">error_on_window_not_collapsable_at_dimension</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;full, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;window, const int dim)</td></tr>
+<tr class="memdesc:a4f63a617a4897663b386ba5e1f5cb675"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the window can't be collapsed at the given dimension.  <a href="#a4f63a617a4897663b386ba5e1f5cb675">More...</a><br /></td></tr>
+<tr class="separator:a4f63a617a4897663b386ba5e1f5cb675"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c62cc8d5ee934d42c115c9315d66c13"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3c62cc8d5ee934d42c115c9315d66c13">error_on_coordinates_dimensions_gte</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;pos, unsigned int max_dim)</td></tr>
+<tr class="memdesc:a3c62cc8d5ee934d42c115c9315d66c13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed coordinates have too many dimensions.  <a href="#a3c62cc8d5ee934d42c115c9315d66c13">More...</a><br /></td></tr>
+<tr class="separator:a3c62cc8d5ee934d42c115c9315d66c13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d65985a30fc1229047b7db32caaab43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7d65985a30fc1229047b7db32caaab43">error_on_window_dimensions_gte</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win, unsigned int max_dim)</td></tr>
+<tr class="memdesc:a7d65985a30fc1229047b7db32caaab43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed window has too many dimensions.  <a href="#a7d65985a30fc1229047b7db32caaab43">More...</a><br /></td></tr>
+<tr class="separator:a7d65985a30fc1229047b7db32caaab43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a632c1b33a482f7126de4aca221542b64"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
+<tr class="memitem:a632c1b33a482f7126de4aca221542b64"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a632c1b33a482f7126de4aca221542b64">error_on_mismatching_dimensions</a> (const char *function, const char *file, int line, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dim1, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dim2, Ts &amp;&amp;... dims)</td></tr>
+<tr class="memdesc:a632c1b33a482f7126de4aca221542b64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed dimension objects differ.  <a href="#a632c1b33a482f7126de4aca221542b64">More...</a><br /></td></tr>
+<tr class="separator:a632c1b33a482f7126de4aca221542b64"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8bcb895249c9b0207df5d6512433aab"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:aa8bcb895249c9b0207df5d6512433aab"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa8bcb895249c9b0207df5d6512433aab">error_on_tensors_not_even</a> (const char *function, const char *file, int line, const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor1, Ts... tensors)</td></tr>
+<tr class="memdesc:aa8bcb895249c9b0207df5d6512433aab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor objects are not even.  <a href="#aa8bcb895249c9b0207df5d6512433aab">More...</a><br /></td></tr>
+<tr class="separator:aa8bcb895249c9b0207df5d6512433aab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5865def3a35885dda73dd5f4d555d11c"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:a5865def3a35885dda73dd5f4d555d11c"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5865def3a35885dda73dd5f4d555d11c">error_on_tensors_not_subsampled</a> (const char *function, const char *file, int line, const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format, 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_i_tensor.xhtml">ITensor</a> *tensor1, Ts... tensors)</td></tr>
+<tr class="memdesc:a5865def3a35885dda73dd5f4d555d11c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor objects are not sub-sampled.  <a href="#a5865def3a35885dda73dd5f4d555d11c">More...</a><br /></td></tr>
+<tr class="separator:a5865def3a35885dda73dd5f4d555d11c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a900072ec18ac254db40901425e2b35b2"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:a900072ec18ac254db40901425e2b35b2"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a900072ec18ac254db40901425e2b35b2">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_1, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_2, Ts... tensor_infos)</td></tr>
+<tr class="memdesc:a900072ec18ac254db40901425e2b35b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensor infos have different shapes from the given dimension.  <a href="#a900072ec18ac254db40901425e2b35b2">More...</a><br /></td></tr>
+<tr class="separator:a900072ec18ac254db40901425e2b35b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a196a1a4faf1a8893963fd89d7efaf5d9"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:a196a1a4faf1a8893963fd89d7efaf5d9"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a196a1a4faf1a8893963fd89d7efaf5d9">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_1, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_2, Ts... tensors)</td></tr>
+<tr class="memdesc:a196a1a4faf1a8893963fd89d7efaf5d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different shapes from the given dimension.  <a href="#a196a1a4faf1a8893963fd89d7efaf5d9">More...</a><br /></td></tr>
+<tr class="separator:a196a1a4faf1a8893963fd89d7efaf5d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f08e05970c101f7a9c852dc036f5ffb"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:a8f08e05970c101f7a9c852dc036f5ffb"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8f08e05970c101f7a9c852dc036f5ffb">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, unsigned int upper_dim, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_1, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_2, Ts... tensor_infos)</td></tr>
+<tr class="memdesc:a8f08e05970c101f7a9c852dc036f5ffb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different shapes from the given dimension.  <a href="#a8f08e05970c101f7a9c852dc036f5ffb">More...</a><br /></td></tr>
+<tr class="separator:a8f08e05970c101f7a9c852dc036f5ffb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a314d37a14fb002f52a148122238499"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:a7a314d37a14fb002f52a148122238499"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7a314d37a14fb002f52a148122238499">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, unsigned int upper_dim, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_1, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_2, Ts... tensors)</td></tr>
+<tr class="memdesc:a7a314d37a14fb002f52a148122238499"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different shapes from the given dimension.  <a href="#a7a314d37a14fb002f52a148122238499">More...</a><br /></td></tr>
+<tr class="separator:a7a314d37a14fb002f52a148122238499"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8355d6db4cebee2724bf4463076526c6"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:a8355d6db4cebee2724bf4463076526c6"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8355d6db4cebee2724bf4463076526c6">error_on_mismatching_data_layouts</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, Ts... tensor_infos)</td></tr>
+<tr class="memdesc:a8355d6db4cebee2724bf4463076526c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor infos have different data layouts.  <a href="#a8355d6db4cebee2724bf4463076526c6">More...</a><br /></td></tr>
+<tr class="separator:a8355d6db4cebee2724bf4463076526c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6e5ea4c65e9a0e7853ce314024c955d"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:ad6e5ea4c65e9a0e7853ce314024c955d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad6e5ea4c65e9a0e7853ce314024c955d">error_on_mismatching_data_layouts</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, Ts... tensors)</td></tr>
+<tr class="memdesc:ad6e5ea4c65e9a0e7853ce314024c955d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensors have different data layouts.  <a href="#ad6e5ea4c65e9a0e7853ce314024c955d">More...</a><br /></td></tr>
+<tr class="separator:ad6e5ea4c65e9a0e7853ce314024c955d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85c38583df1a7998d58c51f7c3d4b354"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:a85c38583df1a7998d58c51f7c3d4b354"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a85c38583df1a7998d58c51f7c3d4b354">error_on_mismatching_data_types</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, Ts... tensor_infos)</td></tr>
+<tr class="memdesc:a85c38583df1a7998d58c51f7c3d4b354"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensor infos have different data types.  <a href="#a85c38583df1a7998d58c51f7c3d4b354">More...</a><br /></td></tr>
+<tr class="separator:a85c38583df1a7998d58c51f7c3d4b354"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8b68ddd24c352a4cdd4fb1eea263429"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:aa8b68ddd24c352a4cdd4fb1eea263429"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa8b68ddd24c352a4cdd4fb1eea263429">error_on_mismatching_data_types</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, Ts... tensors)</td></tr>
+<tr class="memdesc:aa8b68ddd24c352a4cdd4fb1eea263429"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different data types.  <a href="#aa8b68ddd24c352a4cdd4fb1eea263429">More...</a><br /></td></tr>
+<tr class="separator:aa8b68ddd24c352a4cdd4fb1eea263429"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49e1fb8719a6e3b4db298796bdeac758"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:a49e1fb8719a6e3b4db298796bdeac758"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a49e1fb8719a6e3b4db298796bdeac758">error_on_mismatching_quantization_info</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_1, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_2, Ts... tensor_infos)</td></tr>
+<tr class="memdesc:a49e1fb8719a6e3b4db298796bdeac758"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor infos have different asymmetric quantized data types or different quantization info.  <a href="#a49e1fb8719a6e3b4db298796bdeac758">More...</a><br /></td></tr>
+<tr class="separator:a49e1fb8719a6e3b4db298796bdeac758"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ba911901c6a47649cba6884e0f43a18"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
+<tr class="memitem:a3ba911901c6a47649cba6884e0f43a18"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3ba911901c6a47649cba6884e0f43a18">error_on_mismatching_quantization_info</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_1, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_2, Ts... tensors)</td></tr>
+<tr class="memdesc:a3ba911901c6a47649cba6884e0f43a18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor have different asymmetric quantized data types or different quantization info.  <a href="#a3ba911901c6a47649cba6884e0f43a18">More...</a><br /></td></tr>
+<tr class="separator:a3ba911901c6a47649cba6884e0f43a18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a09f045f83a973807cbfdd3083732ef"><td class="memTemplParams" colspan="2">template&lt;typename T , typename F , typename... Fs&gt; </td></tr>
+<tr class="memitem:a8a09f045f83a973807cbfdd3083732ef"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8a09f045f83a973807cbfdd3083732ef">error_on_format_not_in</a> (const char *function, const char *file, const int line, const T *object, F &amp;&amp;format, Fs &amp;&amp;... formats)</td></tr>
+<tr class="memdesc:a8a09f045f83a973807cbfdd3083732ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Throw an error if the format of the passed tensor/multi-image does not match any of the formats provided.  <a href="#a8a09f045f83a973807cbfdd3083732ef">More...</a><br /></td></tr>
+<tr class="separator:a8a09f045f83a973807cbfdd3083732ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb2e6a7590121c1c9139bdb14558f20a"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
+<tr class="memitem:abb2e6a7590121c1c9139bdb14558f20a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abb2e6a7590121c1c9139bdb14558f20a">error_on_data_type_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, T &amp;&amp;dt, Ts &amp;&amp;... dts)</td></tr>
+<tr class="memdesc:abb2e6a7590121c1c9139bdb14558f20a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor info does not match any of the data types provided.  <a href="#abb2e6a7590121c1c9139bdb14558f20a">More...</a><br /></td></tr>
+<tr class="separator:abb2e6a7590121c1c9139bdb14558f20a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8dfd7ddb80f1bd4042a0409d56cc72a"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
+<tr class="memitem:ae8dfd7ddb80f1bd4042a0409d56cc72a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae8dfd7ddb80f1bd4042a0409d56cc72a">error_on_data_type_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, T &amp;&amp;dt, Ts &amp;&amp;... dts)</td></tr>
+<tr class="memdesc:ae8dfd7ddb80f1bd4042a0409d56cc72a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor does not match any of the data types provided.  <a href="#ae8dfd7ddb80f1bd4042a0409d56cc72a">More...</a><br /></td></tr>
+<tr class="separator:ae8dfd7ddb80f1bd4042a0409d56cc72a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b97ba5512e8deb4a428515bc61c0c7a"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
+<tr class="memitem:a4b97ba5512e8deb4a428515bc61c0c7a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4b97ba5512e8deb4a428515bc61c0c7a">error_on_data_layout_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, T &amp;&amp;dl, Ts &amp;&amp;... dls)</td></tr>
+<tr class="memdesc:a4b97ba5512e8deb4a428515bc61c0c7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data layout of the passed tensor info does not match any of the data layouts provided.  <a href="#a4b97ba5512e8deb4a428515bc61c0c7a">More...</a><br /></td></tr>
+<tr class="separator:a4b97ba5512e8deb4a428515bc61c0c7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba935fe0dd1a33ed2525ace5b21e1a8a"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
+<tr class="memitem:aba935fe0dd1a33ed2525ace5b21e1a8a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aba935fe0dd1a33ed2525ace5b21e1a8a">error_on_data_layout_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, T &amp;&amp;dl, Ts &amp;&amp;... dls)</td></tr>
+<tr class="memdesc:aba935fe0dd1a33ed2525ace5b21e1a8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data layout of the passed tensor does not match any of the data layout provided.  <a href="#aba935fe0dd1a33ed2525ace5b21e1a8a">More...</a><br /></td></tr>
+<tr class="separator:aba935fe0dd1a33ed2525ace5b21e1a8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f061a50e9fd383396233a85234c1774"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
+<tr class="memitem:a2f061a50e9fd383396233a85234c1774"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2f061a50e9fd383396233a85234c1774">error_on_data_type_channel_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, size_t num_channels, T &amp;&amp;dt, Ts &amp;&amp;... dts)</td></tr>
+<tr class="memdesc:a2f061a50e9fd383396233a85234c1774"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type or the number of channels of the passed tensor info does not match any of the data types and number of channels provided.  <a href="#a2f061a50e9fd383396233a85234c1774">More...</a><br /></td></tr>
+<tr class="separator:a2f061a50e9fd383396233a85234c1774"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa87a2bd032fb1e4406506f5bb2da3225"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
+<tr class="memitem:aa87a2bd032fb1e4406506f5bb2da3225"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa87a2bd032fb1e4406506f5bb2da3225">error_on_data_type_channel_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, size_t num_channels, T &amp;&amp;dt, Ts &amp;&amp;... dts)</td></tr>
+<tr class="memdesc:aa87a2bd032fb1e4406506f5bb2da3225"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type or the number of channels of the passed tensor does not match any of the data types and number of channels provided.  <a href="#aa87a2bd032fb1e4406506f5bb2da3225">More...</a><br /></td></tr>
+<tr class="separator:aa87a2bd032fb1e4406506f5bb2da3225"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a76433394f276fbc92390850a15bd2cae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a76433394f276fbc92390850a15bd2cae">error_on_unsupported_fp16</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, bool is_fp16_supported)</td></tr>
 <tr class="memdesc:a76433394f276fbc92390850a15bd2cae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor info is FP16 and FP16 extension is not supported by the device.  <a href="#a76433394f276fbc92390850a15bd2cae">More...</a><br /></td></tr>
 <tr class="separator:a76433394f276fbc92390850a15bd2cae"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aea2b331c31943c1f726c9f552348c89c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aea2b331c31943c1f726c9f552348c89c">error_on_unsupported_fp16</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, bool is_fp16_supported)</td></tr>
 <tr class="memdesc:aea2b331c31943c1f726c9f552348c89c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor is FP16 and FP16 extension is not supported by the device.  <a href="#aea2b331c31943c1f726c9f552348c89c">More...</a><br /></td></tr>
 <tr class="separator:aea2b331c31943c1f726c9f552348c89c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9f37a1ead28d12ce216e27209dae2a81"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9f37a1ead28d12ce216e27209dae2a81">error_on_tensor_not_2d</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor)</td></tr>
-<tr class="memdesc:a9f37a1ead28d12ce216e27209dae2a81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the tensor is not 2D.  <a href="#a9f37a1ead28d12ce216e27209dae2a81">More...</a><br /></td></tr>
-<tr class="separator:a9f37a1ead28d12ce216e27209dae2a81"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6aca7957ee1166144ae3999c7cf42d29"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6aca7957ee1166144ae3999c7cf42d29">error_on_tensor_not_2d</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor)</td></tr>
-<tr class="memdesc:a6aca7957ee1166144ae3999c7cf42d29"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the tensor info is not 2D.  <a href="#a6aca7957ee1166144ae3999c7cf42d29">More...</a><br /></td></tr>
-<tr class="separator:a6aca7957ee1166144ae3999c7cf42d29"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae7fcde610527b8fa3d9acdf398187962"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
-<tr class="memitem:ae7fcde610527b8fa3d9acdf398187962"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae7fcde610527b8fa3d9acdf398187962">error_on_channel_not_in</a> (const char *function, const char *file, const int line, T cn, T &amp;&amp;channel, Ts &amp;&amp;...channels)</td></tr>
-<tr class="memdesc:ae7fcde610527b8fa3d9acdf398187962"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the channel is not in channels.  <a href="#ae7fcde610527b8fa3d9acdf398187962">More...</a><br /></td></tr>
-<tr class="separator:ae7fcde610527b8fa3d9acdf398187962"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aa2af31a4685af1fb5ecef784c5e96da0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa2af31a4685af1fb5ecef784c5e96da0">error_on_channel_not_in_known_format</a> (const char *function, const char *file, const int line, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> fmt, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> cn)</td></tr>
-<tr class="memdesc:aa2af31a4685af1fb5ecef784c5e96da0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the channel is not in format.  <a href="#aa2af31a4685af1fb5ecef784c5e96da0">More...</a><br /></td></tr>
-<tr class="separator:aa2af31a4685af1fb5ecef784c5e96da0"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:adf16abfe081654f8bb2b9a4fee09100e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adf16abfe081654f8bb2b9a4fee09100e">error_on_invalid_multi_hog</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml">IMultiHOG</a> *multi_hog)</td></tr>
-<tr class="memdesc:adf16abfe081654f8bb2b9a4fee09100e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml">IMultiHOG</a> container is invalid.  <a href="#adf16abfe081654f8bb2b9a4fee09100e">More...</a><br /></td></tr>
-<tr class="separator:adf16abfe081654f8bb2b9a4fee09100e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a33278ff3c7798e50c453599576f58bd8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a33278ff3c7798e50c453599576f58bd8">error_on_unconfigured_kernel</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_kernel.xhtml">IKernel</a> *kernel)</td></tr>
-<tr class="memdesc:a33278ff3c7798e50c453599576f58bd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the kernel is not configured.  <a href="#a33278ff3c7798e50c453599576f58bd8">More...</a><br /></td></tr>
-<tr class="separator:a33278ff3c7798e50c453599576f58bd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7fdf77ab857ef3a644eef09389cc808d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7fdf77ab857ef3a644eef09389cc808d">error_on_invalid_subtensor</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;parent_shape, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;coords, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape)</td></tr>
-<tr class="memdesc:a7fdf77ab857ef3a644eef09389cc808d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if if the coordinates and shape of the subtensor are within the parent tensor.  <a href="#a7fdf77ab857ef3a644eef09389cc808d">More...</a><br /></td></tr>
-<tr class="separator:a7fdf77ab857ef3a644eef09389cc808d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a74dd77930a4d0ccf755c1cc648601c63"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a74dd77930a4d0ccf755c1cc648601c63">error_on_invalid_subtensor_valid_region</a> (const char *function, const char *file, const int line, const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;parent_valid_region, const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;valid_region)</td></tr>
-<tr class="memdesc:a74dd77930a4d0ccf755c1cc648601c63"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the valid region of a subtensor is not inside the valid region of the parent tensor.  <a href="#a74dd77930a4d0ccf755c1cc648601c63">More...</a><br /></td></tr>
-<tr class="separator:a74dd77930a4d0ccf755c1cc648601c63"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afe3b7128bf77dd12c85eed944fe5b3d4"><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.xhtml#afe3b7128bf77dd12c85eed944fe5b3d4">convert_window_coord_to_position</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;w, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;<a class="el" href="helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a>)</td></tr>
+<tr class="memitem:a398f32595ee55b858853d5bcdcacfef5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a398f32595ee55b858853d5bcdcacfef5">error_on_tensor_not_2d</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor)</td></tr>
+<tr class="memdesc:a398f32595ee55b858853d5bcdcacfef5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the tensor is not 2D.  <a href="#a398f32595ee55b858853d5bcdcacfef5">More...</a><br /></td></tr>
+<tr class="separator:a398f32595ee55b858853d5bcdcacfef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa394a6ffa74616f886c889f04883663d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa394a6ffa74616f886c889f04883663d">error_on_tensor_not_2d</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor)</td></tr>
+<tr class="memdesc:aa394a6ffa74616f886c889f04883663d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the tensor info is not 2D.  <a href="#aa394a6ffa74616f886c889f04883663d">More...</a><br /></td></tr>
+<tr class="separator:aa394a6ffa74616f886c889f04883663d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a89059fcfb27bba71edffcc22c6e1a1a2"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
+<tr class="memitem:a89059fcfb27bba71edffcc22c6e1a1a2"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">error_on_channel_not_in</a> (const char *function, const char *file, const int line, T cn, T &amp;&amp;channel, Ts &amp;&amp;... channels)</td></tr>
+<tr class="memdesc:a89059fcfb27bba71edffcc22c6e1a1a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the channel is not in channels.  <a href="#a89059fcfb27bba71edffcc22c6e1a1a2">More...</a><br /></td></tr>
+<tr class="separator:a89059fcfb27bba71edffcc22c6e1a1a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66876161b2add31c70efb9d1ba9423cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a66876161b2add31c70efb9d1ba9423cb">error_on_channel_not_in_known_format</a> (const char *function, const char *file, const int line, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> fmt, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> cn)</td></tr>
+<tr class="memdesc:a66876161b2add31c70efb9d1ba9423cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the channel is not in format.  <a href="#a66876161b2add31c70efb9d1ba9423cb">More...</a><br /></td></tr>
+<tr class="separator:a66876161b2add31c70efb9d1ba9423cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a689cede2a5855c731f7d69b487f30aaa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a689cede2a5855c731f7d69b487f30aaa">error_on_invalid_multi_hog</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml">IMultiHOG</a> *multi_hog)</td></tr>
+<tr class="memdesc:a689cede2a5855c731f7d69b487f30aaa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml">IMultiHOG</a> container is invalid.  <a href="#a689cede2a5855c731f7d69b487f30aaa">More...</a><br /></td></tr>
+<tr class="separator:a689cede2a5855c731f7d69b487f30aaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd11fc94aa2828fee0715de0297eb306"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acd11fc94aa2828fee0715de0297eb306">error_on_unconfigured_kernel</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_kernel.xhtml">IKernel</a> *kernel)</td></tr>
+<tr class="memdesc:acd11fc94aa2828fee0715de0297eb306"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the kernel is not configured.  <a href="#acd11fc94aa2828fee0715de0297eb306">More...</a><br /></td></tr>
+<tr class="separator:acd11fc94aa2828fee0715de0297eb306"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f83032f49a13db29baa1af1a62e5627"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9f83032f49a13db29baa1af1a62e5627">error_on_invalid_subtensor</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;parent_shape, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;coords, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape)</td></tr>
+<tr class="memdesc:a9f83032f49a13db29baa1af1a62e5627"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if if the coordinates and shape of the subtensor are within the parent tensor.  <a href="#a9f83032f49a13db29baa1af1a62e5627">More...</a><br /></td></tr>
+<tr class="separator:a9f83032f49a13db29baa1af1a62e5627"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2ab765daf6f586ceaa12575743361e7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac2ab765daf6f586ceaa12575743361e7">error_on_invalid_subtensor_valid_region</a> (const char *function, const char *file, const int line, const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;parent_valid_region, const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;valid_region)</td></tr>
+<tr class="memdesc:ac2ab765daf6f586ceaa12575743361e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the valid region of a subtensor is not inside the valid region of the parent tensor.  <a href="#ac2ab765daf6f586ceaa12575743361e7">More...</a><br /></td></tr>
+<tr class="separator:ac2ab765daf6f586ceaa12575743361e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe3b7128bf77dd12c85eed944fe5b3d4"><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.xhtml#afe3b7128bf77dd12c85eed944fe5b3d4">convert_window_coord_to_position</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;w, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;<a class="el" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a>)</td></tr>
 <tr class="memdesc:afe3b7128bf77dd12c85eed944fe5b3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert an offset in window steps into absolute coordinates.  <a href="#afe3b7128bf77dd12c85eed944fe5b3d4">More...</a><br /></td></tr>
 <tr class="separator:afe3b7128bf77dd12c85eed944fe5b3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aaf5f536bf7ec25ff83b912badcf61405"><td class="memTemplParams" colspan="2">template&lt;typename L &gt; </td></tr>
 <tr class="memitem:aaf5f536bf7ec25ff83b912badcf61405"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window_iterator.xhtml">WindowIterator</a>&lt; L &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aaf5f536bf7ec25ff83b912badcf61405">create_window_iterator</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;w, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;start, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;end, L &amp;&amp;lambda_function)</td></tr>
 <tr class="memdesc:aaf5f536bf7ec25ff83b912badcf61405"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a <a class="el" href="classarm__compute_1_1_window_iterator.xhtml" title="Iterate over a portion of a Window. ">WindowIterator</a> object.  <a href="#aaf5f536bf7ec25ff83b912badcf61405">More...</a><br /></td></tr>
 <tr class="separator:aaf5f536bf7ec25ff83b912badcf61405"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ade65ba63cdf4becce903866f4a59815e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ade65ba63cdf4becce903866f4a59815e">data_type_from_name</a> (const std::string &amp;name)</td></tr>
-<tr class="memdesc:ade65ba63cdf4becce903866f4a59815e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a string to a strong types enumeration <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>.  <a href="#ade65ba63cdf4becce903866f4a59815e">More...</a><br /></td></tr>
-<tr class="separator:ade65ba63cdf4becce903866f4a59815e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7cec6ed141f3eb1d6330533a90bba9e1"><td class="memItemLeft" align="right" valign="top">inline::std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7cec6ed141f3eb1d6330533a90bba9e1">operator&gt;&gt;</a> (::std::istream &amp;stream, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a> &amp;data_type)</td></tr>
+<tr class="memitem:a307a55b07dc70dc9177ff26543b1c66f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a307a55b07dc70dc9177ff26543b1c66f">data_type_from_name</a> (const std::string &amp;name)</td></tr>
+<tr class="memdesc:a307a55b07dc70dc9177ff26543b1c66f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a string to a strong types enumeration <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>.  <a href="#a307a55b07dc70dc9177ff26543b1c66f">More...</a><br /></td></tr>
+<tr class="separator:a307a55b07dc70dc9177ff26543b1c66f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7cec6ed141f3eb1d6330533a90bba9e1"><td class="memItemLeft" align="right" valign="top">inline ::std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7cec6ed141f3eb1d6330533a90bba9e1">operator&gt;&gt;</a> (::std::istream &amp;stream, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a> &amp;data_type)</td></tr>
 <tr class="memdesc:a7cec6ed141f3eb1d6330533a90bba9e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Input Stream operator for <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>.  <a href="#a7cec6ed141f3eb1d6330533a90bba9e1">More...</a><br /></td></tr>
 <tr class="separator:a7cec6ed141f3eb1d6330533a90bba9e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a70c6f92f6b74982b31716cfd2fdf612a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a70c6f92f6b74982b31716cfd2fdf612a">data_layout_from_name</a> (const std::string &amp;name)</td></tr>
-<tr class="memdesc:a70c6f92f6b74982b31716cfd2fdf612a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a string to a strong types enumeration <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>.  <a href="#a70c6f92f6b74982b31716cfd2fdf612a">More...</a><br /></td></tr>
-<tr class="separator:a70c6f92f6b74982b31716cfd2fdf612a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9c4a3d0e80938810dd7b22b16785f5c8"><td class="memItemLeft" align="right" valign="top">inline::std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9c4a3d0e80938810dd7b22b16785f5c8">operator&gt;&gt;</a> (::std::istream &amp;stream, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a> &amp;data_layout)</td></tr>
+<tr class="memitem:a834b76c7d21af898f39def3b787d7530"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a834b76c7d21af898f39def3b787d7530">data_layout_from_name</a> (const std::string &amp;name)</td></tr>
+<tr class="memdesc:a834b76c7d21af898f39def3b787d7530"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a string to a strong types enumeration <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>.  <a href="#a834b76c7d21af898f39def3b787d7530">More...</a><br /></td></tr>
+<tr class="separator:a834b76c7d21af898f39def3b787d7530"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c4a3d0e80938810dd7b22b16785f5c8"><td class="memItemLeft" align="right" valign="top">inline ::std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9c4a3d0e80938810dd7b22b16785f5c8">operator&gt;&gt;</a> (::std::istream &amp;stream, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a> &amp;data_layout)</td></tr>
 <tr class="memdesc:a9c4a3d0e80938810dd7b22b16785f5c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Input Stream operator for <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>.  <a href="#a9c4a3d0e80938810dd7b22b16785f5c8">More...</a><br /></td></tr>
 <tr class="separator:a9c4a3d0e80938810dd7b22b16785f5c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aba90ba1790209a7ec569f3ce897be586"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aba90ba1790209a7ec569f3ce897be586">get_cpu_configuration</a> (<a class="el" href="classarm__compute_1_1_c_p_u_info.xhtml">CPUInfo</a> &amp;cpuinfo)</td></tr>
-<tr class="memdesc:aba90ba1790209a7ec569f3ce897be586"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function will try to detect the CPU configuration on the system and will fill the cpuinfo object accordingly to reflect this.  <a href="#aba90ba1790209a7ec569f3ce897be586">More...</a><br /></td></tr>
-<tr class="separator:aba90ba1790209a7ec569f3ce897be586"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a075f941d6e53f1513d8964043a3d809b"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a075f941d6e53f1513d8964043a3d809b">get_threads_hint</a> ()</td></tr>
-<tr class="memdesc:a075f941d6e53f1513d8964043a3d809b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Some systems have both big and small cores, this fuction computes the minimum number of cores that are exactly the same on the system.  <a href="#a075f941d6e53f1513d8964043a3d809b">More...</a><br /></td></tr>
-<tr class="separator:a075f941d6e53f1513d8964043a3d809b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aa5191117dc677a74552769b87131b1b6"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa5191117dc677a74552769b87131b1b6">string_from_scheduler_type</a> (<a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7">Scheduler::Type</a> t)</td></tr>
-<tr class="memdesc:aa5191117dc677a74552769b87131b1b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7" title="Scheduler type. ">Scheduler::Type</a> into a string.  <a href="#aa5191117dc677a74552769b87131b1b6">More...</a><br /></td></tr>
-<tr class="separator:aa5191117dc677a74552769b87131b1b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af3985189d478b45014e7dead9d002e2a"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af3985189d478b45014e7dead9d002e2a">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7">GradientDimension</a> &amp;dim)</td></tr>
+<tr class="memitem:a92d01d03db1530581737484c1290ca16"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a92d01d03db1530581737484c1290ca16">get_cpu_configuration</a> (<a class="el" href="classarm__compute_1_1_c_p_u_info.xhtml">CPUInfo</a> &amp;cpuinfo)</td></tr>
+<tr class="memdesc:a92d01d03db1530581737484c1290ca16"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function will try to detect the CPU configuration on the system and will fill the cpuinfo object accordingly to reflect this.  <a href="#a92d01d03db1530581737484c1290ca16">More...</a><br /></td></tr>
+<tr class="separator:a92d01d03db1530581737484c1290ca16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a9fa44b29bc17746a0b486626a76e0a"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9a9fa44b29bc17746a0b486626a76e0a">get_threads_hint</a> ()</td></tr>
+<tr class="memdesc:a9a9fa44b29bc17746a0b486626a76e0a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Some systems have both big and small cores, this fuction computes the minimum number of cores that are exactly the same on the system.  <a href="#a9a9fa44b29bc17746a0b486626a76e0a">More...</a><br /></td></tr>
+<tr class="separator:a9a9fa44b29bc17746a0b486626a76e0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a192c7cf59b34ae925eb1c8c315a06225"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a192c7cf59b34ae925eb1c8c315a06225">string_from_scheduler_type</a> (<a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7">Scheduler::Type</a> t)</td></tr>
+<tr class="memdesc:a192c7cf59b34ae925eb1c8c315a06225"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7" title="Scheduler type. ">Scheduler::Type</a> into a string.  <a href="#a192c7cf59b34ae925eb1c8c315a06225">More...</a><br /></td></tr>
+<tr class="separator:a192c7cf59b34ae925eb1c8c315a06225"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1e1cc57e3e2ae0ea65d607f6d6312f8"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad1e1cc57e3e2ae0ea65d607f6d6312f8">FloatFlip</a> (float val)</td></tr>
+<tr class="separator:ad1e1cc57e3e2ae0ea65d607f6d6312f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69c96727fe92b1ad1b07da3117c73c76"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a69c96727fe92b1ad1b07da3117c73c76">IFloatFlip</a> (int32_t val)</td></tr>
+<tr class="separator:a69c96727fe92b1ad1b07da3117c73c76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff311815b306f7885265c103dc0344b9"><td class="memTemplParams" colspan="2">template&lt;bool is_bounded_relu&gt; </td></tr>
+<tr class="memitem:aff311815b306f7885265c103dc0344b9"><td class="memTemplItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aff311815b306f7885265c103dc0344b9">finalize_quantization</a> (int32x4_t in_s32, int result_fixedpoint_multiplier, int32_t result_shift, int32x4_t result_offset_after_shift_s32, uint8_t min_u8, uint8_t max_u8)</td></tr>
+<tr class="separator:aff311815b306f7885265c103dc0344b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40552ea65ee3fc6d7fa7f1fb17baebe7"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a40552ea65ee3fc6d7fa7f1fb17baebe7"><td class="memTemplItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a40552ea65ee3fc6d7fa7f1fb17baebe7">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
+<tr class="separator:a40552ea65ee3fc6d7fa7f1fb17baebe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5229f4c7a2c8d07ebc247c3e5075af2b"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a5229f4c7a2c8d07ebc247c3e5075af2b"><td class="memTemplItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5229f4c7a2c8d07ebc247c3e5075af2b">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
+<tr class="separator:a5229f4c7a2c8d07ebc247c3e5075af2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2cb9483082ea29427722db15d23ec130"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a2cb9483082ea29427722db15d23ec130"><td class="memTemplItemLeft" align="right" valign="top">int8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2cb9483082ea29427722db15d23ec130">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
+<tr class="separator:a2cb9483082ea29427722db15d23ec130"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a46b08aeab78badc7365668e0051e7fac"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a46b08aeab78badc7365668e0051e7fac"><td class="memTemplItemLeft" align="right" valign="top">int8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a46b08aeab78badc7365668e0051e7fac">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
+<tr class="separator:a46b08aeab78badc7365668e0051e7fac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa7aea48ed8a5c267d4631ad6884e0bd"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:aaa7aea48ed8a5c267d4631ad6884e0bd"><td class="memTemplItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aaa7aea48ed8a5c267d4631ad6884e0bd">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
+<tr class="separator:aaa7aea48ed8a5c267d4631ad6884e0bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2aef7b4b81a6108c8d7a8f782340850"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:ab2aef7b4b81a6108c8d7a8f782340850"><td class="memTemplItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab2aef7b4b81a6108c8d7a8f782340850">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
+<tr class="separator:ab2aef7b4b81a6108c8d7a8f782340850"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21a10c0d7629ac794f59a6e06dad8b7c"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a21a10c0d7629ac794f59a6e06dad8b7c"><td class="memTemplItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a21a10c0d7629ac794f59a6e06dad8b7c">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
+<tr class="separator:a21a10c0d7629ac794f59a6e06dad8b7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab831e66636598a49c321c248da55108"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:aab831e66636598a49c321c248da55108"><td class="memTemplItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aab831e66636598a49c321c248da55108">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
+<tr class="separator:aab831e66636598a49c321c248da55108"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1050dd97652f516c036f54173d3cce10"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a1050dd97652f516c036f54173d3cce10"><td class="memTemplItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1050dd97652f516c036f54173d3cce10">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
+<tr class="separator:a1050dd97652f516c036f54173d3cce10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e766d98a0e130be624d6dee74c8fb29"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a6e766d98a0e130be624d6dee74c8fb29"><td class="memTemplItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6e766d98a0e130be624d6dee74c8fb29">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
+<tr class="separator:a6e766d98a0e130be624d6dee74c8fb29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc187f0eff944013383bdc28e8d1e713"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:adc187f0eff944013383bdc28e8d1e713"><td class="memTemplItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adc187f0eff944013383bdc28e8d1e713">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
+<tr class="separator:adc187f0eff944013383bdc28e8d1e713"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61f87c089f50e7016ac74d79bbc417eb"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a61f87c089f50e7016ac74d79bbc417eb"><td class="memTemplItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a61f87c089f50e7016ac74d79bbc417eb">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
+<tr class="separator:a61f87c089f50e7016ac74d79bbc417eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a696409f1f3c572c8a899605e36b87e9a"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a696409f1f3c572c8a899605e36b87e9a"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a696409f1f3c572c8a899605e36b87e9a">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; vec)</td></tr>
+<tr class="separator:a696409f1f3c572c8a899605e36b87e9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b122d56b7bf307cf06ec05b4bdeea63"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a2b122d56b7bf307cf06ec05b4bdeea63"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2b122d56b7bf307cf06ec05b4bdeea63">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; vec)</td></tr>
+<tr class="separator:a2b122d56b7bf307cf06ec05b4bdeea63"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45617be0c289f11c60f659f3123fb210"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
+<tr class="memitem:a45617be0c289f11c60f659f3123fb210"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a45617be0c289f11c60f659f3123fb210">vget_lane</a> (float32x4x4_t vec)</td></tr>
+<tr class="separator:a45617be0c289f11c60f659f3123fb210"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4b13d125dfe1bec25b8df8840c6dd8f"><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
+<tr class="memitem:af4b13d125dfe1bec25b8df8840c6dd8f"><td class="memTemplItemLeft" align="right" valign="top">constexpr size_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af4b13d125dfe1bec25b8df8840c6dd8f">vec_size_of</a> (const V &amp;vec)</td></tr>
+<tr class="separator:af4b13d125dfe1bec25b8df8840c6dd8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2603e5f72e3fa052025c189c1a6647ce"><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
+<tr class="memitem:a2603e5f72e3fa052025c189c1a6647ce"><td class="memTemplItemLeft" align="right" valign="top">V&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">vdup_n</a> (<a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a>&lt; V &gt; val)</td></tr>
+<tr class="separator:a2603e5f72e3fa052025c189c1a6647ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85d0b4103385d996d4014691d2df0cf1"><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
+<tr class="memitem:a85d0b4103385d996d4014691d2df0cf1"><td class="memTemplItemLeft" align="right" valign="top">V&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">vld</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a>&lt; V &gt;&gt; ptr)</td></tr>
+<tr class="separator:a85d0b4103385d996d4014691d2df0cf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a671b1da70aa3efc02c508648ae2d81b5"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a671b1da70aa3efc02c508648ae2d81b5"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a671b1da70aa3efc02c508648ae2d81b5">sqadd</a> (T a, T b)</td></tr>
+<tr class="separator:a671b1da70aa3efc02c508648ae2d81b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7462bb232b41864413a4d8603a660d16"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a7462bb232b41864413a4d8603a660d16"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7462bb232b41864413a4d8603a660d16">sqsub</a> (T a, T b)</td></tr>
+<tr class="separator:a7462bb232b41864413a4d8603a660d16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a705ed42150ffbe645f7ba2fb5d0a5bb6"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a705ed42150ffbe645f7ba2fb5d0a5bb6"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a705ed42150ffbe645f7ba2fb5d0a5bb6">sqmul</a> (T a, T b)</td></tr>
+<tr class="separator:a705ed42150ffbe645f7ba2fb5d0a5bb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a194e168c19bf049bd3e903552f112d5c"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a194e168c19bf049bd3e903552f112d5c"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a194e168c19bf049bd3e903552f112d5c">vdup_n&lt; vec_8_byte_t&lt; uint8_t &gt; &gt;</a> (uint8_t val)</td></tr>
+<tr class="separator:a194e168c19bf049bd3e903552f112d5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a84aacbb969d72f3b89aa93cc87af9bdf"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a84aacbb969d72f3b89aa93cc87af9bdf"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a84aacbb969d72f3b89aa93cc87af9bdf">vdup_n&lt; vec_16_byte_t&lt; uint8_t &gt; &gt;</a> (uint8_t val)</td></tr>
+<tr class="separator:a84aacbb969d72f3b89aa93cc87af9bdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abcfc5b1ed91557ba1b6edf2eae8533e7"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:abcfc5b1ed91557ba1b6edf2eae8533e7"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abcfc5b1ed91557ba1b6edf2eae8533e7">vld&lt; vec_8_byte_t&lt; uint8_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint8_t &gt; ptr)</td></tr>
+<tr class="separator:abcfc5b1ed91557ba1b6edf2eae8533e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70cff70817eb6a40e893331c4df276a5"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a70cff70817eb6a40e893331c4df276a5"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a70cff70817eb6a40e893331c4df276a5">vld&lt; vec_16_byte_t&lt; uint8_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint8_t &gt; ptr)</td></tr>
+<tr class="separator:a70cff70817eb6a40e893331c4df276a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3753b9d735032ba72e7df0c5cbba31a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3753b9d735032ba72e7df0c5cbba31a1">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint8_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
+<tr class="separator:a3753b9d735032ba72e7df0c5cbba31a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa17a7667769390f153ad5289d5390341"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa17a7667769390f153ad5289d5390341">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint8_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
+<tr class="separator:aa17a7667769390f153ad5289d5390341"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1cb1c90103d83ca052919e98dbaac553"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1cb1c90103d83ca052919e98dbaac553">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; b)</td></tr>
+<tr class="separator:a1cb1c90103d83ca052919e98dbaac553"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae85042ef273ca700734604b5488f2ff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aae85042ef273ca700734604b5488f2ff">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; b)</td></tr>
+<tr class="separator:aae85042ef273ca700734604b5488f2ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3bb60064e505cfd3a0d43528a3c1845d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3bb60064e505cfd3a0d43528a3c1845d">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
+<tr class="separator:a3bb60064e505cfd3a0d43528a3c1845d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af311129b4dccf2fbd9307a7d644876d1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af311129b4dccf2fbd9307a7d644876d1">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
+<tr class="separator:af311129b4dccf2fbd9307a7d644876d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbcedeccc32a67996ea90a0a97c94269"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:afbcedeccc32a67996ea90a0a97c94269"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afbcedeccc32a67996ea90a0a97c94269">vdup_n&lt; vec_8_byte_t&lt; int8_t &gt; &gt;</a> (int8_t val)</td></tr>
+<tr class="separator:afbcedeccc32a67996ea90a0a97c94269"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c5a58b994f82b7eb24e85803fdd08c1"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a3c5a58b994f82b7eb24e85803fdd08c1"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3c5a58b994f82b7eb24e85803fdd08c1">vdup_n&lt; vec_16_byte_t&lt; int8_t &gt; &gt;</a> (int8_t val)</td></tr>
+<tr class="separator:a3c5a58b994f82b7eb24e85803fdd08c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add42730b56d7b3614fc39f525eb55286"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:add42730b56d7b3614fc39f525eb55286"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#add42730b56d7b3614fc39f525eb55286">vld&lt; vec_8_byte_t&lt; int8_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int8_t &gt; ptr)</td></tr>
+<tr class="separator:add42730b56d7b3614fc39f525eb55286"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d896907abfbde0613b952bb4db5897a"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a9d896907abfbde0613b952bb4db5897a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9d896907abfbde0613b952bb4db5897a">vld&lt; vec_16_byte_t&lt; int8_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int8_t &gt; ptr)</td></tr>
+<tr class="separator:a9d896907abfbde0613b952bb4db5897a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acec5b4ba08b0ab7d080e2177e4b3deb1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acec5b4ba08b0ab7d080e2177e4b3deb1">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int8_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
+<tr class="separator:acec5b4ba08b0ab7d080e2177e4b3deb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2c29d96efc44a4163d8f594cd836d1e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab2c29d96efc44a4163d8f594cd836d1e">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int8_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
+<tr class="separator:ab2c29d96efc44a4163d8f594cd836d1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2ee044b41b71a344cad69a08aecb1d5f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ee044b41b71a344cad69a08aecb1d5f">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; b)</td></tr>
+<tr class="separator:a2ee044b41b71a344cad69a08aecb1d5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d9a679f8dfa41f17d46f6c1e56ca82d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0d9a679f8dfa41f17d46f6c1e56ca82d">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; b)</td></tr>
+<tr class="separator:a0d9a679f8dfa41f17d46f6c1e56ca82d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a0a49e26931849079897f0a225589cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2a0a49e26931849079897f0a225589cb">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
+<tr class="separator:a2a0a49e26931849079897f0a225589cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfb64320f5b05fc08dffafc2b039e559"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abfb64320f5b05fc08dffafc2b039e559">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
+<tr class="separator:abfb64320f5b05fc08dffafc2b039e559"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca706ca8cd2fec97cf6b3ab747c40dc6"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:aca706ca8cd2fec97cf6b3ab747c40dc6"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aca706ca8cd2fec97cf6b3ab747c40dc6">vdup_n&lt; vec_8_byte_t&lt; uint16_t &gt; &gt;</a> (uint16_t val)</td></tr>
+<tr class="separator:aca706ca8cd2fec97cf6b3ab747c40dc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93020987fbede1b8da7db6a1a855ddd4"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a93020987fbede1b8da7db6a1a855ddd4"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a93020987fbede1b8da7db6a1a855ddd4">vdup_n&lt; vec_16_byte_t&lt; uint16_t &gt; &gt;</a> (uint16_t val)</td></tr>
+<tr class="separator:a93020987fbede1b8da7db6a1a855ddd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab764431d90825796c5060d85810781fa"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:ab764431d90825796c5060d85810781fa"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab764431d90825796c5060d85810781fa">vld&lt; vec_8_byte_t&lt; uint16_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint16_t &gt; ptr)</td></tr>
+<tr class="separator:ab764431d90825796c5060d85810781fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2174760efe31f80528b5a4cf8ebed66"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:ad2174760efe31f80528b5a4cf8ebed66"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad2174760efe31f80528b5a4cf8ebed66">vld&lt; vec_16_byte_t&lt; uint16_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint16_t &gt; ptr)</td></tr>
+<tr class="separator:ad2174760efe31f80528b5a4cf8ebed66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9893527df6922f85f0f3173142247ece"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9893527df6922f85f0f3173142247ece">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint16_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
+<tr class="separator:a9893527df6922f85f0f3173142247ece"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a090a9d8254580d7c22668e21e581d58e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a090a9d8254580d7c22668e21e581d58e">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint16_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
+<tr class="separator:a090a9d8254580d7c22668e21e581d58e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c4bfe1c9c07571952a81783fa8540de"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7c4bfe1c9c07571952a81783fa8540de">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; b)</td></tr>
+<tr class="separator:a7c4bfe1c9c07571952a81783fa8540de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2bc9036a2d288d7a4ad2d015d91ba5d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2bc9036a2d288d7a4ad2d015d91ba5d9">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; b)</td></tr>
+<tr class="separator:a2bc9036a2d288d7a4ad2d015d91ba5d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b825f82ef9a09db968b003310b44030"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5b825f82ef9a09db968b003310b44030">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
+<tr class="separator:a5b825f82ef9a09db968b003310b44030"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebe61fd1828294b9794b3c87174649b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aebe61fd1828294b9794b3c87174649b2">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
+<tr class="separator:aebe61fd1828294b9794b3c87174649b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10a9088cc35ece085610063eec583ad1"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a10a9088cc35ece085610063eec583ad1"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a10a9088cc35ece085610063eec583ad1">vdup_n&lt; vec_8_byte_t&lt; int16_t &gt; &gt;</a> (int16_t val)</td></tr>
+<tr class="separator:a10a9088cc35ece085610063eec583ad1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6ec87dc4f97241833eace4b1784cc50"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:aa6ec87dc4f97241833eace4b1784cc50"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa6ec87dc4f97241833eace4b1784cc50">vdup_n&lt; vec_16_byte_t&lt; int16_t &gt; &gt;</a> (int16_t val)</td></tr>
+<tr class="separator:aa6ec87dc4f97241833eace4b1784cc50"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b29ca880e2b7282c9318d6c36f07140"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a1b29ca880e2b7282c9318d6c36f07140"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1b29ca880e2b7282c9318d6c36f07140">vld&lt; vec_8_byte_t&lt; int16_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int16_t &gt; ptr)</td></tr>
+<tr class="separator:a1b29ca880e2b7282c9318d6c36f07140"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd4981f6532c3a76716e3053d119e269"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:afd4981f6532c3a76716e3053d119e269"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afd4981f6532c3a76716e3053d119e269">vld&lt; vec_16_byte_t&lt; int16_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int16_t &gt; ptr)</td></tr>
+<tr class="separator:afd4981f6532c3a76716e3053d119e269"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a7441e9c3870a817f9084697730a0e9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7a7441e9c3870a817f9084697730a0e9">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int16_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
+<tr class="separator:a7a7441e9c3870a817f9084697730a0e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9aedf36525da0e2306db27867c2bb5d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac9aedf36525da0e2306db27867c2bb5d">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int16_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
+<tr class="separator:ac9aedf36525da0e2306db27867c2bb5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe221c26fe4f91102c0f7b5e2336c070"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abe221c26fe4f91102c0f7b5e2336c070">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; b)</td></tr>
+<tr class="separator:abe221c26fe4f91102c0f7b5e2336c070"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab831eb6268e8d3dcfd9ce6e1e7daf598"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab831eb6268e8d3dcfd9ce6e1e7daf598">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; b)</td></tr>
+<tr class="separator:ab831eb6268e8d3dcfd9ce6e1e7daf598"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a264ecd01ca0763d79aa4ad5515ce7b65"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a264ecd01ca0763d79aa4ad5515ce7b65">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
+<tr class="separator:a264ecd01ca0763d79aa4ad5515ce7b65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc14b8933176ce40c7b99a1ef0f6a062"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afc14b8933176ce40c7b99a1ef0f6a062">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
+<tr class="separator:afc14b8933176ce40c7b99a1ef0f6a062"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8c50d8dac4fe454183078d34515b50a"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:af8c50d8dac4fe454183078d34515b50a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af8c50d8dac4fe454183078d34515b50a">vdup_n&lt; vec_8_byte_t&lt; uint32_t &gt; &gt;</a> (uint32_t val)</td></tr>
+<tr class="separator:af8c50d8dac4fe454183078d34515b50a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacce75282b76aeb1eda5375b6dcef231"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:aacce75282b76aeb1eda5375b6dcef231"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aacce75282b76aeb1eda5375b6dcef231">vdup_n&lt; vec_16_byte_t&lt; uint32_t &gt; &gt;</a> (uint32_t val)</td></tr>
+<tr class="separator:aacce75282b76aeb1eda5375b6dcef231"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7a8e67b90d2c99626733ea9bdc60a1d"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:ac7a8e67b90d2c99626733ea9bdc60a1d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac7a8e67b90d2c99626733ea9bdc60a1d">vld&lt; vec_8_byte_t&lt; uint32_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint32_t &gt; ptr)</td></tr>
+<tr class="separator:ac7a8e67b90d2c99626733ea9bdc60a1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13a69ef04626a27771a6e19542cac767"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a13a69ef04626a27771a6e19542cac767"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a13a69ef04626a27771a6e19542cac767">vld&lt; vec_16_byte_t&lt; uint32_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint32_t &gt; ptr)</td></tr>
+<tr class="separator:a13a69ef04626a27771a6e19542cac767"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1e4aafb14bd8eee38caa7ad5db69507"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa1e4aafb14bd8eee38caa7ad5db69507">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint32_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
+<tr class="separator:aa1e4aafb14bd8eee38caa7ad5db69507"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca451511712482f55001063da2317427"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aca451511712482f55001063da2317427">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint32_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
+<tr class="separator:aca451511712482f55001063da2317427"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bb4dd507d55db5ae8fafab84d31b870"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1bb4dd507d55db5ae8fafab84d31b870">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; b)</td></tr>
+<tr class="separator:a1bb4dd507d55db5ae8fafab84d31b870"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacd10f0e821aff266057a1fc443c6344"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aacd10f0e821aff266057a1fc443c6344">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; b)</td></tr>
+<tr class="separator:aacd10f0e821aff266057a1fc443c6344"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0477c495757cd6c2bdf6f151aa26a542"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0477c495757cd6c2bdf6f151aa26a542">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
+<tr class="separator:a0477c495757cd6c2bdf6f151aa26a542"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94683a211fef1215ec7576bc74a1cc68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a94683a211fef1215ec7576bc74a1cc68">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
+<tr class="separator:a94683a211fef1215ec7576bc74a1cc68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee16a2b366642146ef353e0939a71b83"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:aee16a2b366642146ef353e0939a71b83"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aee16a2b366642146ef353e0939a71b83">vdup_n&lt; vec_8_byte_t&lt; int32_t &gt; &gt;</a> (int32_t val)</td></tr>
+<tr class="separator:aee16a2b366642146ef353e0939a71b83"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a434a14d651e75e624bfed91646a9582e"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a434a14d651e75e624bfed91646a9582e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a434a14d651e75e624bfed91646a9582e">vdup_n&lt; vec_16_byte_t&lt; int32_t &gt; &gt;</a> (int32_t val)</td></tr>
+<tr class="separator:a434a14d651e75e624bfed91646a9582e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10449c2936e1986b131e8c070db9c16b"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a10449c2936e1986b131e8c070db9c16b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a10449c2936e1986b131e8c070db9c16b">vld&lt; vec_8_byte_t&lt; int32_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int32_t &gt; ptr)</td></tr>
+<tr class="separator:a10449c2936e1986b131e8c070db9c16b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1acc117060f7ad740f059fbb97359d6b"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a1acc117060f7ad740f059fbb97359d6b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1acc117060f7ad740f059fbb97359d6b">vld&lt; vec_16_byte_t&lt; int32_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int32_t &gt; ptr)</td></tr>
+<tr class="separator:a1acc117060f7ad740f059fbb97359d6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59f96d9a74850a843c1f710803fe8de8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a59f96d9a74850a843c1f710803fe8de8">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int32_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
+<tr class="separator:a59f96d9a74850a843c1f710803fe8de8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a788c1fc3809f77d2866e4282d374770b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a788c1fc3809f77d2866e4282d374770b">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int32_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
+<tr class="separator:a788c1fc3809f77d2866e4282d374770b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e2374d1a63f2e9433b7965eede927af"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4e2374d1a63f2e9433b7965eede927af">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; b)</td></tr>
+<tr class="separator:a4e2374d1a63f2e9433b7965eede927af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb42b9eb65ed0207ddcdb9c870fd5697"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aeb42b9eb65ed0207ddcdb9c870fd5697">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; b)</td></tr>
+<tr class="separator:aeb42b9eb65ed0207ddcdb9c870fd5697"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4624ac629ac1199b9482f01334fe93a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4624ac629ac1199b9482f01334fe93a8">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
+<tr class="separator:a4624ac629ac1199b9482f01334fe93a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeaf3494a0fcf8be9555194a8e7a18a07"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aeaf3494a0fcf8be9555194a8e7a18a07">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
+<tr class="separator:aeaf3494a0fcf8be9555194a8e7a18a07"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae23d199254b002d668fde87246f2f6f7"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:ae23d199254b002d668fde87246f2f6f7"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae23d199254b002d668fde87246f2f6f7">vdup_n&lt; vec_8_byte_t&lt; float &gt; &gt;</a> (float val)</td></tr>
+<tr class="separator:ae23d199254b002d668fde87246f2f6f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace69f5de3783f9cd924dac392710facf"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:ace69f5de3783f9cd924dac392710facf"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ace69f5de3783f9cd924dac392710facf">vdup_n&lt; vec_16_byte_t&lt; float &gt; &gt;</a> (float val)</td></tr>
+<tr class="separator:ace69f5de3783f9cd924dac392710facf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a323be126777e57614c5dc57ee1345c7e"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a323be126777e57614c5dc57ee1345c7e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a323be126777e57614c5dc57ee1345c7e">vld&lt; vec_8_byte_t&lt; float &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; float &gt; ptr)</td></tr>
+<tr class="separator:a323be126777e57614c5dc57ee1345c7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8e2f6d1e361e3ac707595f1092b9103"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:aa8e2f6d1e361e3ac707595f1092b9103"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa8e2f6d1e361e3ac707595f1092b9103">vld&lt; vec_16_byte_t&lt; float &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; float &gt; ptr)</td></tr>
+<tr class="separator:aa8e2f6d1e361e3ac707595f1092b9103"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01cfd18ed87a496fc5d3be04a040be61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a01cfd18ed87a496fc5d3be04a040be61">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; float &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; vec)</td></tr>
+<tr class="separator:a01cfd18ed87a496fc5d3be04a040be61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd25994f8abe7093700a88a65fdb6ad5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abd25994f8abe7093700a88a65fdb6ad5">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; float &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; vec)</td></tr>
+<tr class="separator:abd25994f8abe7093700a88a65fdb6ad5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a837afab6fd85e34f2bd6e267f4c9e849"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a837afab6fd85e34f2bd6e267f4c9e849">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; b)</td></tr>
+<tr class="separator:a837afab6fd85e34f2bd6e267f4c9e849"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8efc828ccf4a8f2c6b26cfe3813952d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af8efc828ccf4a8f2c6b26cfe3813952d">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; b)</td></tr>
+<tr class="separator:af8efc828ccf4a8f2c6b26cfe3813952d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae83ce5db69a7a14f5c0ee9d9326e1a40"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae83ce5db69a7a14f5c0ee9d9326e1a40">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; vec)</td></tr>
+<tr class="separator:ae83ce5db69a7a14f5c0ee9d9326e1a40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc735b1b07e30e093dd39507606a1e35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abc735b1b07e30e093dd39507606a1e35">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; vec)</td></tr>
+<tr class="separator:abc735b1b07e30e093dd39507606a1e35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe949a509da417044624d62a73057441"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abe949a509da417044624d62a73057441">vadd</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; b)</td></tr>
+<tr class="separator:abe949a509da417044624d62a73057441"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab11431f1a64a618e5ed1d37634d0e0fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab11431f1a64a618e5ed1d37634d0e0fe">vadd</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; b)</td></tr>
+<tr class="separator:ab11431f1a64a618e5ed1d37634d0e0fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0ebbe865e9e6cfd1b2df041f8374ed0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad0ebbe865e9e6cfd1b2df041f8374ed0">vsub</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; b)</td></tr>
+<tr class="separator:ad0ebbe865e9e6cfd1b2df041f8374ed0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5dce3fda8114a32a2c8f1f517adca368"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5dce3fda8114a32a2c8f1f517adca368">vmul_n</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; vec, float val)</td></tr>
+<tr class="separator:a5dce3fda8114a32a2c8f1f517adca368"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cb464349a8f184ffb8eded9ae9e5925"><td class="memTemplParams" colspan="2">template&lt;typename VO , typename VI &gt; </td></tr>
+<tr class="memitem:a6cb464349a8f184ffb8eded9ae9e5925"><td class="memTemplItemLeft" align="right" valign="top">VO&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6cb464349a8f184ffb8eded9ae9e5925">vcvt</a> (VI vec)</td></tr>
+<tr class="separator:a6cb464349a8f184ffb8eded9ae9e5925"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a146b84422a0eaf6c66ba8156425b5bdf"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:a146b84422a0eaf6c66ba8156425b5bdf"><td class="memTemplItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a146b84422a0eaf6c66ba8156425b5bdf">vcvt&lt; float32x4x4_t &gt;</a> (uint8x16_t vec)</td></tr>
+<tr class="separator:a146b84422a0eaf6c66ba8156425b5bdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6bc00d6c4503a0bc303dd363e021476"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:ab6bc00d6c4503a0bc303dd363e021476"><td class="memTemplItemLeft" align="right" valign="top">uint8x16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab6bc00d6c4503a0bc303dd363e021476">vcvt&lt; uint8x16_t &gt;</a> (float32x4x4_t vec)</td></tr>
+<tr class="separator:ab6bc00d6c4503a0bc303dd363e021476"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91d2c1f68de68401d1aa465e27f78ab0"><td class="memItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a91d2c1f68de68401d1aa465e27f78ab0">vexp</a> (float32x4x4_t vec)</td></tr>
+<tr class="separator:a91d2c1f68de68401d1aa465e27f78ab0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcb77ffd576a7addf3be8508e50451d2"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adcb77ffd576a7addf3be8508e50451d2">vexp</a> (const float32x4_t &amp;vec)</td></tr>
+<tr class="separator:adcb77ffd576a7addf3be8508e50451d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeabe5dd1c5751f380322a841d7ad8d7a"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
+<tr class="memitem:aeabe5dd1c5751f380322a841d7ad8d7a"><td class="memTemplItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aeabe5dd1c5751f380322a841d7ad8d7a">vdup_n&lt; float32x4x4_t &gt;</a> (float val)</td></tr>
+<tr class="separator:aeabe5dd1c5751f380322a841d7ad8d7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc9f4323a93d34d19bab7cc371649441"><td class="memItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abc9f4323a93d34d19bab7cc371649441">vmul_n</a> (float32x4x4_t vec, float val)</td></tr>
+<tr class="separator:abc9f4323a93d34d19bab7cc371649441"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4cc9ed76f48e918e73249c894380f91b"><td class="memItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4cc9ed76f48e918e73249c894380f91b">vadd</a> (float32x4x4_t a, float32x4x4_t b)</td></tr>
+<tr class="separator:a4cc9ed76f48e918e73249c894380f91b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3985189d478b45014e7dead9d002e2a"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af3985189d478b45014e7dead9d002e2a">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7">GradientDimension</a> &amp;dim)</td></tr>
 <tr class="memdesc:af3985189d478b45014e7dead9d002e2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the GradientDimension type.  <a href="#af3985189d478b45014e7dead9d002e2a">More...</a><br /></td></tr>
 <tr class="separator:af3985189d478b45014e7dead9d002e2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ab75d8ff29ba9b398d5740b3efd156e71"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab75d8ff29ba9b398d5740b3efd156e71">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7">arm_compute::GradientDimension</a> &amp;type)</td></tr>
 <tr class="memdesc:ab75d8ff29ba9b398d5740b3efd156e71"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the GradientDimension type.  <a href="#ab75d8ff29ba9b398d5740b3efd156e71">More...</a><br /></td></tr>
 <tr class="separator:ab75d8ff29ba9b398d5740b3efd156e71"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1379e5f8a8b4640d7a52d901f0539ccd"><td class="memItemLeft" align="right" valign="top">inline::std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1379e5f8a8b4640d7a52d901f0539ccd">operator&gt;&gt;</a> (::std::istream &amp;is, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> &amp;mode)</td></tr>
+<tr class="memitem:a1379e5f8a8b4640d7a52d901f0539ccd"><td class="memItemLeft" align="right" valign="top">inline ::std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1379e5f8a8b4640d7a52d901f0539ccd">operator&gt;&gt;</a> (::std::istream &amp;is, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> &amp;mode)</td></tr>
 <tr class="memdesc:a1379e5f8a8b4640d7a52d901f0539ccd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted input of the BorderMode type.  <a href="#a1379e5f8a8b4640d7a52d901f0539ccd">More...</a><br /></td></tr>
 <tr class="separator:a1379e5f8a8b4640d7a52d901f0539ccd"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ad023d4ca1d3facf3975c941fd728a6f4"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
@@ -3342,37 +3829,58 @@
 <tr class="memdesc:ad023d4ca1d3facf3975c941fd728a6f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output if arg is not null.  <a href="#ad023d4ca1d3facf3975c941fd728a6f4">More...</a><br /></td></tr>
 <tr class="separator:ad023d4ca1d3facf3975c941fd728a6f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a18d43401e8f84ed020429b41ec4e99f5"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a18d43401e8f84ed020429b41ec4e99f5"><td class="memTemplItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a18d43401e8f84ed020429b41ec4e99f5">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dimensions)</td></tr>
+<tr class="memitem:a18d43401e8f84ed020429b41ec4e99f5"><td class="memTemplItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a18d43401e8f84ed020429b41ec4e99f5">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dimensions)</td></tr>
 <tr class="memdesc:a18d43401e8f84ed020429b41ec4e99f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality. ">Dimensions</a> type.  <a href="#a18d43401e8f84ed020429b41ec4e99f5">More...</a><br /></td></tr>
 <tr class="separator:a18d43401e8f84ed020429b41ec4e99f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae8c2a3451bcf739a75aa7438e7a78d45"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae8c2a3451bcf739a75aa7438e7a78d45">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> &amp;function)</td></tr>
+<tr class="memitem:ae8c2a3451bcf739a75aa7438e7a78d45"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae8c2a3451bcf739a75aa7438e7a78d45">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> &amp;function)</td></tr>
 <tr class="memdesc:ae8c2a3451bcf739a75aa7438e7a78d45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the NonLinearFilterFunction type.  <a href="#ae8c2a3451bcf739a75aa7438e7a78d45">More...</a><br /></td></tr>
 <tr class="separator:ae8c2a3451bcf739a75aa7438e7a78d45"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aabe16be22edb41656e66ed9eae3b69e6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aabe16be22edb41656e66ed9eae3b69e6">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> &amp;function)</td></tr>
 <tr class="memdesc:aabe16be22edb41656e66ed9eae3b69e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the NonLinearFilterFunction type.  <a href="#aabe16be22edb41656e66ed9eae3b69e6">More...</a><br /></td></tr>
 <tr class="separator:aabe16be22edb41656e66ed9eae3b69e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:acec416ec5af175a7aad47a518fefb770"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acec416ec5af175a7aad47a518fefb770">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> &amp;pattern)</td></tr>
+<tr class="memitem:acec416ec5af175a7aad47a518fefb770"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acec416ec5af175a7aad47a518fefb770">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> &amp;pattern)</td></tr>
 <tr class="memdesc:acec416ec5af175a7aad47a518fefb770"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the MatrixPattern type.  <a href="#acec416ec5af175a7aad47a518fefb770">More...</a><br /></td></tr>
 <tr class="separator:acec416ec5af175a7aad47a518fefb770"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a27f0ebddef1b83e0ac31c7a7a23a8d36"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a27f0ebddef1b83e0ac31c7a7a23a8d36">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> &amp;pattern)</td></tr>
 <tr class="memdesc:a27f0ebddef1b83e0ac31c7a7a23a8d36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the MatrixPattern type.  <a href="#a27f0ebddef1b83e0ac31c7a7a23a8d36">More...</a><br /></td></tr>
 <tr class="separator:a27f0ebddef1b83e0ac31c7a7a23a8d36"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a295edc9f8caf95838db2c5e251153514"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a295edc9f8caf95838db2c5e251153514">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> &amp;rounding_policy)</td></tr>
+<tr class="memitem:a295edc9f8caf95838db2c5e251153514"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a295edc9f8caf95838db2c5e251153514">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> &amp;rounding_policy)</td></tr>
 <tr class="memdesc:a295edc9f8caf95838db2c5e251153514"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the RoundingPolicy type.  <a href="#a295edc9f8caf95838db2c5e251153514">More...</a><br /></td></tr>
 <tr class="separator:a295edc9f8caf95838db2c5e251153514"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5972c7131d378f567af9c2961f088a0b"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5972c7131d378f567af9c2961f088a0b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_weights_info.xhtml">WeightsInfo</a> &amp;weights_info)</td></tr>
+<tr class="memitem:a5972c7131d378f567af9c2961f088a0b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5972c7131d378f567af9c2961f088a0b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_weights_info.xhtml">WeightsInfo</a> &amp;weights_info)</td></tr>
 <tr class="memdesc:a5972c7131d378f567af9c2961f088a0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_weights_info.xhtml" title="Convolution Layer Weights Information class. ">WeightsInfo</a> type.  <a href="#a5972c7131d378f567af9c2961f088a0b">More...</a><br /></td></tr>
 <tr class="separator:a5972c7131d378f567af9c2961f088a0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a352b805b77fde4f32f44af271580677b"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a352b805b77fde4f32f44af271580677b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_r_o_i_pooling_layer_info.xhtml">ROIPoolingLayerInfo</a> &amp;pool_info)</td></tr>
+<tr class="memitem:a352b805b77fde4f32f44af271580677b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a352b805b77fde4f32f44af271580677b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_r_o_i_pooling_layer_info.xhtml">ROIPoolingLayerInfo</a> &amp;pool_info)</td></tr>
 <tr class="memdesc:a352b805b77fde4f32f44af271580677b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ROIPoolingInfo type.  <a href="#a352b805b77fde4f32f44af271580677b">More...</a><br /></td></tr>
 <tr class="separator:a352b805b77fde4f32f44af271580677b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a32a5556a927543fe57c0d7b82c20e9b4"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a32a5556a927543fe57c0d7b82c20e9b4">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;quantization_info)</td></tr>
+<tr class="memitem:ac7e5dca61375f7583860ab07d951a323"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac7e5dca61375f7583860ab07d951a323">to_string</a> (const <a class="el" href="classarm__compute_1_1_r_o_i_pooling_layer_info.xhtml">ROIPoolingLayerInfo</a> &amp;pool_info)</td></tr>
+<tr class="memdesc:ac7e5dca61375f7583860ab07d951a323"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ROIPoolingInfo type.  <a href="#ac7e5dca61375f7583860ab07d951a323">More...</a><br /></td></tr>
+<tr class="separator:ac7e5dca61375f7583860ab07d951a323"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af81bb4f87d418311c7ca43a28c74bf03"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af81bb4f87d418311c7ca43a28c74bf03">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml">BoundingBoxTransformInfo</a> &amp;bbox_info)</td></tr>
+<tr class="memdesc:af81bb4f87d418311c7ca43a28c74bf03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml" title="Bounding Box Transform information class. ">BoundingBoxTransformInfo</a> type.  <a href="#af81bb4f87d418311c7ca43a28c74bf03">More...</a><br /></td></tr>
+<tr class="separator:af81bb4f87d418311c7ca43a28c74bf03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadd27b86f0ff4fbb03ed673a549e91a8"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aadd27b86f0ff4fbb03ed673a549e91a8">to_string</a> (const <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml">BoundingBoxTransformInfo</a> &amp;bbox_info)</td></tr>
+<tr class="memdesc:aadd27b86f0ff4fbb03ed673a549e91a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml" title="Bounding Box Transform information class. ">BoundingBoxTransformInfo</a> type.  <a href="#aadd27b86f0ff4fbb03ed673a549e91a8">More...</a><br /></td></tr>
+<tr class="separator:aadd27b86f0ff4fbb03ed673a549e91a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59ea8b6694897a281eb3105f5c99f28f"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a59ea8b6694897a281eb3105f5c99f28f">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml">ComputeAnchorsInfo</a> &amp;anchors_info)</td></tr>
+<tr class="memdesc:a59ea8b6694897a281eb3105f5c99f28f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml" title="ComputeAnchors information class. ">ComputeAnchorsInfo</a> type.  <a href="#a59ea8b6694897a281eb3105f5c99f28f">More...</a><br /></td></tr>
+<tr class="separator:a59ea8b6694897a281eb3105f5c99f28f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24bc4de5c636b56f9b59533fead920c2"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a24bc4de5c636b56f9b59533fead920c2">to_string</a> (const <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml">ComputeAnchorsInfo</a> &amp;anchors_info)</td></tr>
+<tr class="memdesc:a24bc4de5c636b56f9b59533fead920c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml" title="ComputeAnchors information class. ">ComputeAnchorsInfo</a> type.  <a href="#a24bc4de5c636b56f9b59533fead920c2">More...</a><br /></td></tr>
+<tr class="separator:a24bc4de5c636b56f9b59533fead920c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a54a883f8acc0664accdae9bed93494"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1a54a883f8acc0664accdae9bed93494">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml">GenerateProposalsInfo</a> &amp;proposals_info)</td></tr>
+<tr class="memdesc:a1a54a883f8acc0664accdae9bed93494"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml" title="Generate Proposals Information class. ">GenerateProposalsInfo</a> type.  <a href="#a1a54a883f8acc0664accdae9bed93494">More...</a><br /></td></tr>
+<tr class="separator:a1a54a883f8acc0664accdae9bed93494"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa597016c0aaa2990ed31b8aaa6f2ccc3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa597016c0aaa2990ed31b8aaa6f2ccc3">to_string</a> (const <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml">GenerateProposalsInfo</a> &amp;proposals_info)</td></tr>
+<tr class="memdesc:aa597016c0aaa2990ed31b8aaa6f2ccc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml" title="Generate Proposals Information class. ">GenerateProposalsInfo</a> type.  <a href="#aa597016c0aaa2990ed31b8aaa6f2ccc3">More...</a><br /></td></tr>
+<tr class="separator:aa597016c0aaa2990ed31b8aaa6f2ccc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a32a5556a927543fe57c0d7b82c20e9b4"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a32a5556a927543fe57c0d7b82c20e9b4">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;quantization_info)</td></tr>
 <tr class="memdesc:a32a5556a927543fe57c0d7b82c20e9b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_quantization_info.xhtml" title="Quantization settings (used for QASYMM8 data type) ">QuantizationInfo</a> type.  <a href="#a32a5556a927543fe57c0d7b82c20e9b4">More...</a><br /></td></tr>
 <tr class="separator:a32a5556a927543fe57c0d7b82c20e9b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ad9fd48b3c01116b217a684aaeaf8b24f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad9fd48b3c01116b217a684aaeaf8b24f">to_string</a> (const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;quantization_info)</td></tr>
 <tr class="memdesc:ad9fd48b3c01116b217a684aaeaf8b24f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_quantization_info.xhtml" title="Quantization settings (used for QASYMM8 data type) ">QuantizationInfo</a> type.  <a href="#ad9fd48b3c01116b217a684aaeaf8b24f">More...</a><br /></td></tr>
 <tr class="separator:ad9fd48b3c01116b217a684aaeaf8b24f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9d79efe2673aeb3f9a9160b6a78de50c"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9d79efe2673aeb3f9a9160b6a78de50c">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">ActivationLayerInfo::ActivationFunction</a> &amp;act_function)</td></tr>
+<tr class="memitem:a9d79efe2673aeb3f9a9160b6a78de50c"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9d79efe2673aeb3f9a9160b6a78de50c">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">ActivationLayerInfo::ActivationFunction</a> &amp;act_function)</td></tr>
 <tr class="memdesc:a9d79efe2673aeb3f9a9160b6a78de50c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the activation function type.  <a href="#a9d79efe2673aeb3f9a9160b6a78de50c">More...</a><br /></td></tr>
 <tr class="separator:a9d79efe2673aeb3f9a9160b6a78de50c"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a72626d2cca3922127c41526e37e9e623"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a72626d2cca3922127c41526e37e9e623">to_string</a> (const <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml">arm_compute::ActivationLayerInfo</a> &amp;info)</td></tr>
@@ -3381,64 +3889,67 @@
 <tr class="memitem:a8a18c453150ab547c1add44b3ed3bc56"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8a18c453150ab547c1add44b3ed3bc56">to_string</a> (const <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">arm_compute::ActivationLayerInfo::ActivationFunction</a> &amp;function)</td></tr>
 <tr class="memdesc:a8a18c453150ab547c1add44b3ed3bc56"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the activation function type.  <a href="#a8a18c453150ab547c1add44b3ed3bc56">More...</a><br /></td></tr>
 <tr class="separator:a8a18c453150ab547c1add44b3ed3bc56"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a2ab7370aab6e5698990c50c8871fa6fb"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ab7370aab6e5698990c50c8871fa6fb">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> &amp;norm_type)</td></tr>
+<tr class="memitem:a2ab7370aab6e5698990c50c8871fa6fb"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ab7370aab6e5698990c50c8871fa6fb">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> &amp;norm_type)</td></tr>
 <tr class="memdesc:a2ab7370aab6e5698990c50c8871fa6fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the NormType type.  <a href="#a2ab7370aab6e5698990c50c8871fa6fb">More...</a><br /></td></tr>
 <tr class="separator:a2ab7370aab6e5698990c50c8871fa6fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a45dd771bdecbafb975fd267c2ae320a7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a45dd771bdecbafb975fd267c2ae320a7">to_string</a> (const <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">arm_compute::NormalizationLayerInfo</a> &amp;info)</td></tr>
 <tr class="memdesc:a45dd771bdecbafb975fd267c2ae320a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a>.  <a href="#a45dd771bdecbafb975fd267c2ae320a7">More...</a><br /></td></tr>
 <tr class="separator:a45dd771bdecbafb975fd267c2ae320a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6e422c610c91f611590173cd595c94c5"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6e422c610c91f611590173cd595c94c5">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a> &amp;info)</td></tr>
+<tr class="memitem:a6e422c610c91f611590173cd595c94c5"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6e422c610c91f611590173cd595c94c5">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a> &amp;info)</td></tr>
 <tr class="memdesc:a6e422c610c91f611590173cd595c94c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a>.  <a href="#a6e422c610c91f611590173cd595c94c5">More...</a><br /></td></tr>
 <tr class="separator:a6e422c610c91f611590173cd595c94c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a336cf1e870f467e44c184587a13feeec"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a336cf1e870f467e44c184587a13feeec">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> &amp;pool_type)</td></tr>
+<tr class="memitem:a336cf1e870f467e44c184587a13feeec"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a336cf1e870f467e44c184587a13feeec">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> &amp;pool_type)</td></tr>
 <tr class="memdesc:a336cf1e870f467e44c184587a13feeec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the PoolingType type.  <a href="#a336cf1e870f467e44c184587a13feeec">More...</a><br /></td></tr>
 <tr class="separator:a336cf1e870f467e44c184587a13feeec"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae72a61a2ca5c962ab1d37065e5598060"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae72a61a2ca5c962ab1d37065e5598060">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a> &amp;info)</td></tr>
+<tr class="memitem:ae72a61a2ca5c962ab1d37065e5598060"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae72a61a2ca5c962ab1d37065e5598060">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a> &amp;info)</td></tr>
 <tr class="memdesc:ae72a61a2ca5c962ab1d37065e5598060"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of <a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a>.  <a href="#ae72a61a2ca5c962ab1d37065e5598060">More...</a><br /></td></tr>
 <tr class="separator:ae72a61a2ca5c962ab1d37065e5598060"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a25dac68b6321b9e53027e79222a0eb7f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a25dac68b6321b9e53027e79222a0eb7f">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> &amp;rounding_policy)</td></tr>
 <tr class="memdesc:a25dac68b6321b9e53027e79222a0eb7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a>.  <a href="#a25dac68b6321b9e53027e79222a0eb7f">More...</a><br /></td></tr>
 <tr class="separator:a25dac68b6321b9e53027e79222a0eb7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1698cb24508a2bc45962bc887f18a8d0"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1698cb24508a2bc45962bc887f18a8d0">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> &amp;data_layout)</td></tr>
-<tr class="memdesc:a1698cb24508a2bc45962bc887f18a8d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the DataLayout type.  <a href="#a1698cb24508a2bc45962bc887f18a8d0">More...</a><br /></td></tr>
+<tr class="memitem:a1698cb24508a2bc45962bc887f18a8d0"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1698cb24508a2bc45962bc887f18a8d0">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> &amp;data_layout)</td></tr>
+<tr class="memdesc:a1698cb24508a2bc45962bc887f18a8d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">[Print DataLayout type]  <a href="#a1698cb24508a2bc45962bc887f18a8d0">More...</a><br /></td></tr>
 <tr class="separator:a1698cb24508a2bc45962bc887f18a8d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ae1240e4698e8a901179e519102b5e033"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae1240e4698e8a901179e519102b5e033">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a> &amp;data_layout)</td></tr>
 <tr class="memdesc:ae1240e4698e8a901179e519102b5e033"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the DataLayout type.  <a href="#ae1240e4698e8a901179e519102b5e033">More...</a><br /></td></tr>
 <tr class="separator:ae1240e4698e8a901179e519102b5e033"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:adec19acb64bfca26fa53ef76f03b79ef"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adec19acb64bfca26fa53ef76f03b79ef">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">DataLayoutDimension</a> &amp;data_layout_dim)</td></tr>
-<tr class="memdesc:adec19acb64bfca26fa53ef76f03b79ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the DataLayoutDimension type.  <a href="#adec19acb64bfca26fa53ef76f03b79ef">More...</a><br /></td></tr>
+<tr class="memitem:adec19acb64bfca26fa53ef76f03b79ef"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adec19acb64bfca26fa53ef76f03b79ef">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">DataLayoutDimension</a> &amp;data_layout_dim)</td></tr>
+<tr class="memdesc:adec19acb64bfca26fa53ef76f03b79ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">[Print DataLayout type]  <a href="#adec19acb64bfca26fa53ef76f03b79ef">More...</a><br /></td></tr>
 <tr class="separator:adec19acb64bfca26fa53ef76f03b79ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a685af15532d70b8682bcc52f06f034f9"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a685af15532d70b8682bcc52f06f034f9">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;data_type)</td></tr>
+<tr class="memitem:a685af15532d70b8682bcc52f06f034f9"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a685af15532d70b8682bcc52f06f034f9">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;data_type)</td></tr>
 <tr class="memdesc:a685af15532d70b8682bcc52f06f034f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the DataType type.  <a href="#a685af15532d70b8682bcc52f06f034f9">More...</a><br /></td></tr>
 <tr class="separator:a685af15532d70b8682bcc52f06f034f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a96b47511b549b48d2ead05b5c757ccc9"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a96b47511b549b48d2ead05b5c757ccc9">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a> &amp;data_type)</td></tr>
 <tr class="memdesc:a96b47511b549b48d2ead05b5c757ccc9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the DataType type.  <a href="#a96b47511b549b48d2ead05b5c757ccc9">More...</a><br /></td></tr>
 <tr class="separator:a96b47511b549b48d2ead05b5c757ccc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a3b22e54b0ac0204c3b89aebcd695fa03"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3b22e54b0ac0204c3b89aebcd695fa03">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format)</td></tr>
+<tr class="memitem:a3b22e54b0ac0204c3b89aebcd695fa03"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3b22e54b0ac0204c3b89aebcd695fa03">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format)</td></tr>
 <tr class="memdesc:a3b22e54b0ac0204c3b89aebcd695fa03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Format type.  <a href="#a3b22e54b0ac0204c3b89aebcd695fa03">More...</a><br /></td></tr>
 <tr class="separator:a3b22e54b0ac0204c3b89aebcd695fa03"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ab0e6381843dc9901bb59285ec846dc5d"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab0e6381843dc9901bb59285ec846dc5d">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format)</td></tr>
 <tr class="memdesc:ab0e6381843dc9901bb59285ec846dc5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Format type.  <a href="#ab0e6381843dc9901bb59285ec846dc5d">More...</a><br /></td></tr>
 <tr class="separator:ab0e6381843dc9901bb59285ec846dc5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aa66be15c012986ebd4c1934b97e08a36"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa66be15c012986ebd4c1934b97e08a36">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> &amp;channel)</td></tr>
+<tr class="memitem:aa66be15c012986ebd4c1934b97e08a36"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa66be15c012986ebd4c1934b97e08a36">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> &amp;channel)</td></tr>
 <tr class="memdesc:aa66be15c012986ebd4c1934b97e08a36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Channel type.  <a href="#aa66be15c012986ebd4c1934b97e08a36">More...</a><br /></td></tr>
 <tr class="separator:aa66be15c012986ebd4c1934b97e08a36"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a813e71cd70c2bbcbf0743fa83a3608b9"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a813e71cd70c2bbcbf0743fa83a3608b9">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> &amp;channel)</td></tr>
 <tr class="memdesc:a813e71cd70c2bbcbf0743fa83a3608b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Channel type.  <a href="#a813e71cd70c2bbcbf0743fa83a3608b9">More...</a><br /></td></tr>
 <tr class="separator:a813e71cd70c2bbcbf0743fa83a3608b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7929032d41d5f23cd1778a70508d0219"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7929032d41d5f23cd1778a70508d0219">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> &amp;mode)</td></tr>
+<tr class="memitem:a7929032d41d5f23cd1778a70508d0219"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7929032d41d5f23cd1778a70508d0219">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> &amp;mode)</td></tr>
 <tr class="memdesc:a7929032d41d5f23cd1778a70508d0219"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the BorderMode type.  <a href="#a7929032d41d5f23cd1778a70508d0219">More...</a><br /></td></tr>
 <tr class="separator:a7929032d41d5f23cd1778a70508d0219"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af32c4c5cdd0efde09774eb803bc8a0bd"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af32c4c5cdd0efde09774eb803bc8a0bd">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> &amp;border)</td></tr>
+<tr class="memitem:af32c4c5cdd0efde09774eb803bc8a0bd"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af32c4c5cdd0efde09774eb803bc8a0bd">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> &amp;border)</td></tr>
 <tr class="memdesc:af32c4c5cdd0efde09774eb803bc8a0bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_border_size.xhtml" title="Container for 2D border size. ">BorderSize</a> type.  <a href="#af32c4c5cdd0efde09774eb803bc8a0bd">More...</a><br /></td></tr>
 <tr class="separator:af32c4c5cdd0efde09774eb803bc8a0bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a509047aefc691398f1bb60b1f967a98b"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a509047aefc691398f1bb60b1f967a98b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> &amp;policy)</td></tr>
+<tr class="memitem:af15a06b73e1fde15f0809ce07bf1ab7d"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af15a06b73e1fde15f0809ce07bf1ab7d">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> &amp;padding)</td></tr>
+<tr class="memdesc:af15a06b73e1fde15f0809ce07bf1ab7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the PaddingList type.  <a href="#af15a06b73e1fde15f0809ce07bf1ab7d">More...</a><br /></td></tr>
+<tr class="separator:af15a06b73e1fde15f0809ce07bf1ab7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a509047aefc691398f1bb60b1f967a98b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a509047aefc691398f1bb60b1f967a98b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> &amp;policy)</td></tr>
 <tr class="memdesc:a509047aefc691398f1bb60b1f967a98b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the InterpolationPolicy type.  <a href="#a509047aefc691398f1bb60b1f967a98b">More...</a><br /></td></tr>
 <tr class="separator:a509047aefc691398f1bb60b1f967a98b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aab8eb6dc1ba89bb8a69f1c3845988a2b"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aab8eb6dc1ba89bb8a69f1c3845988a2b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> &amp;policy)</td></tr>
+<tr class="memitem:aab8eb6dc1ba89bb8a69f1c3845988a2b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aab8eb6dc1ba89bb8a69f1c3845988a2b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> &amp;policy)</td></tr>
 <tr class="memdesc:aab8eb6dc1ba89bb8a69f1c3845988a2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the SamplingPolicy type.  <a href="#aab8eb6dc1ba89bb8a69f1c3845988a2b">More...</a><br /></td></tr>
 <tr class="separator:aab8eb6dc1ba89bb8a69f1c3845988a2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ab398837465010958bfccff032ad1ee51"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab398837465010958bfccff032ad1ee51">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_tensor_info.xhtml">TensorInfo</a> &amp;info)</td></tr>
+<tr class="memitem:ab398837465010958bfccff032ad1ee51"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab398837465010958bfccff032ad1ee51">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_tensor_info.xhtml">TensorInfo</a> &amp;info)</td></tr>
 <tr class="memdesc:ab398837465010958bfccff032ad1ee51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_tensor_info.xhtml" title="Store the tensor&#39;s metadata. ">TensorInfo</a> type.  <a href="#ab398837465010958bfccff032ad1ee51">More...</a><br /></td></tr>
 <tr class="separator:ab398837465010958bfccff032ad1ee51"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a48fd5e28bdb4975c141841f0b96f8707"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a48fd5e28bdb4975c141841f0b96f8707">to_string</a> (const <a class="el" href="classarm__compute_1_1_tensor_info.xhtml">TensorInfo</a> &amp;info)</td></tr>
@@ -3457,16 +3968,16 @@
 <tr class="memitem:a805a74997e303d29108845956a674387"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a805a74997e303d29108845956a674387">to_string</a> (const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;coord)</td></tr>
 <tr class="memdesc:a805a74997e303d29108845956a674387"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item. ">Coordinates</a> type.  <a href="#a805a74997e303d29108845956a674387">More...</a><br /></td></tr>
 <tr class="separator:a805a74997e303d29108845956a674387"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a0fc75dce8064a37effa5e71344b6a5d2"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0fc75dce8064a37effa5e71344b6a5d2">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml">GEMMReshapeInfo</a> &amp;info)</td></tr>
+<tr class="memitem:a0fc75dce8064a37effa5e71344b6a5d2"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0fc75dce8064a37effa5e71344b6a5d2">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml">GEMMReshapeInfo</a> &amp;info)</td></tr>
 <tr class="memdesc:a0fc75dce8064a37effa5e71344b6a5d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml" title="GEMM reshape information class. ">GEMMReshapeInfo</a> type.  <a href="#a0fc75dce8064a37effa5e71344b6a5d2">More...</a><br /></td></tr>
 <tr class="separator:a0fc75dce8064a37effa5e71344b6a5d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5fdae5de2d2cf2e7957f0299d17ce5ec"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5fdae5de2d2cf2e7957f0299d17ce5ec">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml">GEMMInfo</a> &amp;info)</td></tr>
+<tr class="memitem:a5fdae5de2d2cf2e7957f0299d17ce5ec"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5fdae5de2d2cf2e7957f0299d17ce5ec">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml">GEMMInfo</a> &amp;info)</td></tr>
 <tr class="memdesc:a5fdae5de2d2cf2e7957f0299d17ce5ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml" title="GEMM information class. ">GEMMInfo</a> type.  <a href="#a5fdae5de2d2cf2e7957f0299d17ce5ec">More...</a><br /></td></tr>
 <tr class="separator:a5fdae5de2d2cf2e7957f0299d17ce5ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6ed8dc0f587448d14a1a33cbd5fc4f70"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6ed8dc0f587448d14a1a33cbd5fc4f70">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a> &amp;dim)</td></tr>
+<tr class="memitem:a6ed8dc0f587448d14a1a33cbd5fc4f70"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6ed8dc0f587448d14a1a33cbd5fc4f70">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a> &amp;dim)</td></tr>
 <tr class="memdesc:a6ed8dc0f587448d14a1a33cbd5fc4f70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml" title="Describe one of the image&#39;s dimensions with a start, end and step. ">Window::Dimension</a> type.  <a href="#a6ed8dc0f587448d14a1a33cbd5fc4f70">More...</a><br /></td></tr>
 <tr class="separator:a6ed8dc0f587448d14a1a33cbd5fc4f70"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afc6e49991e36423027a467eab1e405b2"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afc6e49991e36423027a467eab1e405b2">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
+<tr class="memitem:afc6e49991e36423027a467eab1e405b2"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afc6e49991e36423027a467eab1e405b2">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
 <tr class="memdesc:afc6e49991e36423027a467eab1e405b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window. ">Window</a> type.  <a href="#afc6e49991e36423027a467eab1e405b2">More...</a><br /></td></tr>
 <tr class="separator:afc6e49991e36423027a467eab1e405b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a26a595cd5522bae4fa1c4f2fb9b8f4d5"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a26a595cd5522bae4fa1c4f2fb9b8f4d5">to_string</a> (const <a class="el" href="classarm__compute_1_1_weights_info.xhtml">WeightsInfo</a> &amp;info)</td></tr>
@@ -3484,10 +3995,10 @@
 <tr class="memitem:a99aba2774f142d36c6a286cbfe027772"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a99aba2774f142d36c6a286cbfe027772">to_string</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
 <tr class="memdesc:a99aba2774f142d36c6a286cbfe027772"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window. ">Window</a> type.  <a href="#a99aba2774f142d36c6a286cbfe027772">More...</a><br /></td></tr>
 <tr class="separator:a99aba2774f142d36c6a286cbfe027772"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a17881750c427aedd95deba46a4366ace"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a17881750c427aedd95deba46a4366ace">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_rectangle.xhtml">Rectangle</a> &amp;rect)</td></tr>
+<tr class="memitem:a17881750c427aedd95deba46a4366ace"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a17881750c427aedd95deba46a4366ace">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_rectangle.xhtml">Rectangle</a> &amp;rect)</td></tr>
 <tr class="memdesc:a17881750c427aedd95deba46a4366ace"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_rectangle.xhtml" title="Rectangle type. ">Rectangle</a> type.  <a href="#a17881750c427aedd95deba46a4366ace">More...</a><br /></td></tr>
 <tr class="separator:a17881750c427aedd95deba46a4366ace"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8af36ae3a3613112c3a95e57f606359a"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8af36ae3a3613112c3a95e57f606359a">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;pad_stride_info)</td></tr>
+<tr class="memitem:a8af36ae3a3613112c3a95e57f606359a"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8af36ae3a3613112c3a95e57f606359a">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;pad_stride_info)</td></tr>
 <tr class="memdesc:a8af36ae3a3613112c3a95e57f606359a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml" title="Padding and stride information class. ">PadStrideInfo</a> type.  <a href="#a8af36ae3a3613112c3a95e57f606359a">More...</a><br /></td></tr>
 <tr class="separator:a8af36ae3a3613112c3a95e57f606359a"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a2c0e6c1c4cf10da25e7a7362ba151ba2"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2c0e6c1c4cf10da25e7a7362ba151ba2">to_string</a> (const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;pad_stride_info)</td></tr>
@@ -3499,18 +4010,21 @@
 <tr class="memitem:a5c9cde9144eaeceaf086377b9bc5a5be"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5c9cde9144eaeceaf086377b9bc5a5be">to_string</a> (const <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> &amp;border)</td></tr>
 <tr class="memdesc:a5c9cde9144eaeceaf086377b9bc5a5be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_border_size.xhtml" title="Container for 2D border size. ">BorderSize</a> type.  <a href="#a5c9cde9144eaeceaf086377b9bc5a5be">More...</a><br /></td></tr>
 <tr class="separator:a5c9cde9144eaeceaf086377b9bc5a5be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a09b674dcee4a1b59f9c7c51ecaae40a6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a09b674dcee4a1b59f9c7c51ecaae40a6">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> &amp;padding)</td></tr>
+<tr class="memdesc:a09b674dcee4a1b59f9c7c51ecaae40a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the PaddingList type.  <a href="#a09b674dcee4a1b59f9c7c51ecaae40a6">More...</a><br /></td></tr>
+<tr class="separator:a09b674dcee4a1b59f9c7c51ecaae40a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a94bd78942b683c05cba85048537d3ee7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a94bd78942b683c05cba85048537d3ee7">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> &amp;policy)</td></tr>
 <tr class="memdesc:a94bd78942b683c05cba85048537d3ee7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the InterpolationPolicy type.  <a href="#a94bd78942b683c05cba85048537d3ee7">More...</a><br /></td></tr>
 <tr class="separator:a94bd78942b683c05cba85048537d3ee7"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a5b8e815072ae54278cb1c91e254be4d3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5b8e815072ae54278cb1c91e254be4d3">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> &amp;policy)</td></tr>
 <tr class="memdesc:a5b8e815072ae54278cb1c91e254be4d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the SamplingPolicy type.  <a href="#a5b8e815072ae54278cb1c91e254be4d3">More...</a><br /></td></tr>
 <tr class="separator:a5b8e815072ae54278cb1c91e254be4d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a4287c6842a60e5f6bf309e55f8813527"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4287c6842a60e5f6bf309e55f8813527">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6f">ConvertPolicy</a> &amp;policy)</td></tr>
+<tr class="memitem:a4287c6842a60e5f6bf309e55f8813527"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4287c6842a60e5f6bf309e55f8813527">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6f">ConvertPolicy</a> &amp;policy)</td></tr>
 <tr class="memdesc:a4287c6842a60e5f6bf309e55f8813527"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ConvertPolicy type.  <a href="#a4287c6842a60e5f6bf309e55f8813527">More...</a><br /></td></tr>
 <tr class="separator:a4287c6842a60e5f6bf309e55f8813527"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:adcc7e107e7dbd2ffac02189089c33e4f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adcc7e107e7dbd2ffac02189089c33e4f">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6f">ConvertPolicy</a> &amp;policy)</td></tr>
 <tr class="separator:adcc7e107e7dbd2ffac02189089c33e4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a292505a0ec686541cfe0dcfd1d651ec5"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a292505a0ec686541cfe0dcfd1d651ec5">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">ReductionOperation</a> &amp;op)</td></tr>
+<tr class="memitem:a292505a0ec686541cfe0dcfd1d651ec5"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a292505a0ec686541cfe0dcfd1d651ec5">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">ReductionOperation</a> &amp;op)</td></tr>
 <tr class="memdesc:a292505a0ec686541cfe0dcfd1d651ec5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Reduction Operations.  <a href="#a292505a0ec686541cfe0dcfd1d651ec5">More...</a><br /></td></tr>
 <tr class="separator:a292505a0ec686541cfe0dcfd1d651ec5"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aae534105c7ea67999ccbb34a0ed567cd"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aae534105c7ea67999ccbb34a0ed567cd">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">ReductionOperation</a> &amp;op)</td></tr>
@@ -3525,78 +4039,84 @@
 <tr class="memitem:acef515348c5f7f73c89aa4b8a47a02bc"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acef515348c5f7f73c89aa4b8a47a02bc">to_string</a> (const <a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a> &amp;info)</td></tr>
 <tr class="memdesc:acef515348c5f7f73c89aa4b8a47a02bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Pooling Layer Info.  <a href="#acef515348c5f7f73c89aa4b8a47a02bc">More...</a><br /></td></tr>
 <tr class="separator:acef515348c5f7f73c89aa4b8a47a02bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9a2e48a508dc85b7280f955876bb4462"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9a2e48a508dc85b7280f955876bb4462">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a> &amp;point)</td></tr>
+<tr class="memitem:ae62747a5179626328bf7e67c709d5fcf"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae62747a5179626328bf7e67c709d5fcf">to_string</a> (const <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a> &amp;info)</td></tr>
+<tr class="memdesc:ae62747a5179626328bf7e67c709d5fcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml" title="PriorBox layer info. ">PriorBoxLayerInfo</a>.  <a href="#ae62747a5179626328bf7e67c709d5fcf">More...</a><br /></td></tr>
+<tr class="separator:ae62747a5179626328bf7e67c709d5fcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a2e48a508dc85b7280f955876bb4462"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9a2e48a508dc85b7280f955876bb4462">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a> &amp;point)</td></tr>
 <tr class="memdesc:a9a2e48a508dc85b7280f955876bb4462"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_key_point.xhtml" title="Keypoint type. ">KeyPoint</a> type.  <a href="#a9a2e48a508dc85b7280f955876bb4462">More...</a><br /></td></tr>
 <tr class="separator:a9a2e48a508dc85b7280f955876bb4462"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:abe52a76af2aa88876d54ce8a5969e509"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abe52a76af2aa88876d54ce8a5969e509">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72">PhaseType</a> &amp;phase_type)</td></tr>
+<tr class="memitem:abe52a76af2aa88876d54ce8a5969e509"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abe52a76af2aa88876d54ce8a5969e509">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72">PhaseType</a> &amp;phase_type)</td></tr>
 <tr class="memdesc:abe52a76af2aa88876d54ce8a5969e509"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the PhaseType type.  <a href="#abe52a76af2aa88876d54ce8a5969e509">More...</a><br /></td></tr>
 <tr class="separator:abe52a76af2aa88876d54ce8a5969e509"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ae4ead564f3c96ea5f1ec7fe035b941f3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae4ead564f3c96ea5f1ec7fe035b941f3">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72">arm_compute::PhaseType</a> &amp;type)</td></tr>
 <tr class="memdesc:ae4ead564f3c96ea5f1ec7fe035b941f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the PhaseType type.  <a href="#ae4ead564f3c96ea5f1ec7fe035b941f3">More...</a><br /></td></tr>
 <tr class="separator:ae4ead564f3c96ea5f1ec7fe035b941f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a530d86eec3dbd22cab6336ffdceb0d37"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a530d86eec3dbd22cab6336ffdceb0d37">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8a">MagnitudeType</a> &amp;magnitude_type)</td></tr>
+<tr class="memitem:a530d86eec3dbd22cab6336ffdceb0d37"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a530d86eec3dbd22cab6336ffdceb0d37">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8a">MagnitudeType</a> &amp;magnitude_type)</td></tr>
 <tr class="memdesc:a530d86eec3dbd22cab6336ffdceb0d37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the MagnitudeType type.  <a href="#a530d86eec3dbd22cab6336ffdceb0d37">More...</a><br /></td></tr>
 <tr class="separator:a530d86eec3dbd22cab6336ffdceb0d37"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a42e6f8761f01b5846f56c3b8025c8c0a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a42e6f8761f01b5846f56c3b8025c8c0a">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8a">arm_compute::MagnitudeType</a> &amp;type)</td></tr>
 <tr class="memdesc:a42e6f8761f01b5846f56c3b8025c8c0a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the MagnitudeType type.  <a href="#a42e6f8761f01b5846f56c3b8025c8c0a">More...</a><br /></td></tr>
 <tr class="separator:a42e6f8761f01b5846f56c3b8025c8c0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5e7a61df2b926347b42ecadf8bcc8969"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5e7a61df2b926347b42ecadf8bcc8969">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3">HOGNormType</a> &amp;norm_type)</td></tr>
+<tr class="memitem:a5e7a61df2b926347b42ecadf8bcc8969"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5e7a61df2b926347b42ecadf8bcc8969">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3">HOGNormType</a> &amp;norm_type)</td></tr>
 <tr class="memdesc:a5e7a61df2b926347b42ecadf8bcc8969"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the HOGNormType type.  <a href="#a5e7a61df2b926347b42ecadf8bcc8969">More...</a><br /></td></tr>
 <tr class="separator:a5e7a61df2b926347b42ecadf8bcc8969"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a950ba288e8136db4bf52f7c51dea20eb"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a950ba288e8136db4bf52f7c51dea20eb">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3">HOGNormType</a> &amp;type)</td></tr>
 <tr class="memdesc:a950ba288e8136db4bf52f7c51dea20eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the HOGNormType type.  <a href="#a950ba288e8136db4bf52f7c51dea20eb">More...</a><br /></td></tr>
 <tr class="separator:a950ba288e8136db4bf52f7c51dea20eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ab91d110e020f6ed987e05e82df3e350b"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab91d110e020f6ed987e05e82df3e350b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;size)</td></tr>
+<tr class="memitem:ab91d110e020f6ed987e05e82df3e350b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab91d110e020f6ed987e05e82df3e350b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;size)</td></tr>
 <tr class="memdesc:ab91d110e020f6ed987e05e82df3e350b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_size2_d.xhtml" title="Class for specifying the size of an image or rectangle. ">Size2D</a> type.  <a href="#ab91d110e020f6ed987e05e82df3e350b">More...</a><br /></td></tr>
 <tr class="separator:ab91d110e020f6ed987e05e82df3e350b"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aee88a2c259879eb9dc18cb5965e87c29"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aee88a2c259879eb9dc18cb5965e87c29">to_string</a> (const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;type)</td></tr>
 <tr class="memdesc:aee88a2c259879eb9dc18cb5965e87c29"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_size2_d.xhtml" title="Class for specifying the size of an image or rectangle. ">Size2D</a> type.  <a href="#aee88a2c259879eb9dc18cb5965e87c29">More...</a><br /></td></tr>
 <tr class="separator:aee88a2c259879eb9dc18cb5965e87c29"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a4228b490e13b79a60737929d9d9e5957"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4228b490e13b79a60737929d9d9e5957">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml">HOGInfo</a> &amp;hog_info)</td></tr>
+<tr class="memitem:a4228b490e13b79a60737929d9d9e5957"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4228b490e13b79a60737929d9d9e5957">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml">HOGInfo</a> &amp;hog_info)</td></tr>
 <tr class="memdesc:a4228b490e13b79a60737929d9d9e5957"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml" title="Store the HOG&#39;s metadata. ">HOGInfo</a> type.  <a href="#a4228b490e13b79a60737929d9d9e5957">More...</a><br /></td></tr>
 <tr class="separator:a4228b490e13b79a60737929d9d9e5957"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a3cf43a216912b361eaffc3c71452a31e"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3cf43a216912b361eaffc3c71452a31e">to_string</a> (const <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml">HOGInfo</a> &amp;type)</td></tr>
 <tr class="memdesc:a3cf43a216912b361eaffc3c71452a31e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml" title="Store the HOG&#39;s metadata. ">HOGInfo</a> type.  <a href="#a3cf43a216912b361eaffc3c71452a31e">More...</a><br /></td></tr>
 <tr class="separator:a3cf43a216912b361eaffc3c71452a31e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:abd35c1c3fb716078b1f4a25981defac4"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abd35c1c3fb716078b1f4a25981defac4">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">ConvolutionMethod</a> &amp;conv_method)</td></tr>
+<tr class="memitem:abd35c1c3fb716078b1f4a25981defac4"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abd35c1c3fb716078b1f4a25981defac4">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">ConvolutionMethod</a> &amp;conv_method)</td></tr>
 <tr class="memdesc:abd35c1c3fb716078b1f4a25981defac4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ConvolutionMethod type.  <a href="#abd35c1c3fb716078b1f4a25981defac4">More...</a><br /></td></tr>
 <tr class="separator:abd35c1c3fb716078b1f4a25981defac4"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a853d44a32a328fb4455f6200a11c4785"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a853d44a32a328fb4455f6200a11c4785">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">ConvolutionMethod</a> &amp;conv_method)</td></tr>
 <tr class="memdesc:a853d44a32a328fb4455f6200a11c4785"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ConvolutionMethod type.  <a href="#a853d44a32a328fb4455f6200a11c4785">More...</a><br /></td></tr>
 <tr class="separator:a853d44a32a328fb4455f6200a11c4785"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1f4d95d65a62a085e929ab0a1a77add2"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1f4d95d65a62a085e929ab0a1a77add2">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> &amp;gpu_target)</td></tr>
+<tr class="memitem:a1f4d95d65a62a085e929ab0a1a77add2"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1f4d95d65a62a085e929ab0a1a77add2">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> &amp;gpu_target)</td></tr>
 <tr class="memdesc:a1f4d95d65a62a085e929ab0a1a77add2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the GPUTarget type.  <a href="#a1f4d95d65a62a085e929ab0a1a77add2">More...</a><br /></td></tr>
 <tr class="separator:a1f4d95d65a62a085e929ab0a1a77add2"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aee29ccfc095313663fc954f581ddf40a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aee29ccfc095313663fc954f581ddf40a">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> &amp;gpu_target)</td></tr>
 <tr class="memdesc:aee29ccfc095313663fc954f581ddf40a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the GPUTarget type.  <a href="#aee29ccfc095313663fc954f581ddf40a">More...</a><br /></td></tr>
 <tr class="separator:aee29ccfc095313663fc954f581ddf40a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a907c93ba5daaabf6af7095f20340d024"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a907c93ba5daaabf6af7095f20340d024">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &amp;detection_window)</td></tr>
+<tr class="memitem:a907c93ba5daaabf6af7095f20340d024"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a907c93ba5daaabf6af7095f20340d024">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &amp;detection_window)</td></tr>
 <tr class="memdesc:a907c93ba5daaabf6af7095f20340d024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_detection_window.xhtml" title="Detection window used for the object detection. ">DetectionWindow</a> type.  <a href="#a907c93ba5daaabf6af7095f20340d024">More...</a><br /></td></tr>
 <tr class="separator:a907c93ba5daaabf6af7095f20340d024"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a905d7ec8787e8c4b7e88b0a2faaccd1f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a905d7ec8787e8c4b7e88b0a2faaccd1f">to_string</a> (const <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &amp;detection_window)</td></tr>
 <tr class="memdesc:a905d7ec8787e8c4b7e88b0a2faaccd1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_detection_window.xhtml" title="Detection window used for the object detection. ">DetectionWindow</a> type.  <a href="#a905d7ec8787e8c4b7e88b0a2faaccd1f">More...</a><br /></td></tr>
 <tr class="separator:a905d7ec8787e8c4b7e88b0a2faaccd1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8cfa7d498e60be008d557d025fe62ff3"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8cfa7d498e60be008d557d025fe62ff3">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453">Termination</a> &amp;termination)</td></tr>
+<tr class="memitem:a8cfa7d498e60be008d557d025fe62ff3"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8cfa7d498e60be008d557d025fe62ff3">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453">Termination</a> &amp;termination)</td></tr>
 <tr class="memdesc:a8cfa7d498e60be008d557d025fe62ff3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Termination type.  <a href="#a8cfa7d498e60be008d557d025fe62ff3">More...</a><br /></td></tr>
 <tr class="separator:a8cfa7d498e60be008d557d025fe62ff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a51fc944d872cf00c1e8e71ccdf8be264"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a51fc944d872cf00c1e8e71ccdf8be264">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453">Termination</a> &amp;termination)</td></tr>
 <tr class="memdesc:a51fc944d872cf00c1e8e71ccdf8be264"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Termination type.  <a href="#a51fc944d872cf00c1e8e71ccdf8be264">More...</a><br /></td></tr>
 <tr class="separator:a51fc944d872cf00c1e8e71ccdf8be264"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a2329ad899483ca80bbffd03a63da9f5d"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2329ad899483ca80bbffd03a63da9f5d">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a> &amp;cpu_model)</td></tr>
+<tr class="memitem:a2329ad899483ca80bbffd03a63da9f5d"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2329ad899483ca80bbffd03a63da9f5d">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a> &amp;cpu_model)</td></tr>
 <tr class="memdesc:a2329ad899483ca80bbffd03a63da9f5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the CPUModel type.  <a href="#a2329ad899483ca80bbffd03a63da9f5d">More...</a><br /></td></tr>
 <tr class="separator:a2329ad899483ca80bbffd03a63da9f5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:add33a9d992aeaa69d6940fd896ee5e75"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#add33a9d992aeaa69d6940fd896ee5e75">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a> &amp;cpu_model)</td></tr>
 <tr class="memdesc:add33a9d992aeaa69d6940fd896ee5e75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the CPUModel type.  <a href="#add33a9d992aeaa69d6940fd896ee5e75">More...</a><br /></td></tr>
 <tr class="separator:add33a9d992aeaa69d6940fd896ee5e75"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a29cd1c3e1b33d61a479fa49465c5a7e7"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a29cd1c3e1b33d61a479fa49465c5a7e7"><td class="memTemplItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a29cd1c3e1b33d61a479fa49465c5a7e7">operator&lt;&lt;</a> (::std::ostream &amp;os, const std::vector&lt; T &gt; &amp;args)</td></tr>
+<tr class="memitem:a29cd1c3e1b33d61a479fa49465c5a7e7"><td class="memTemplItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a29cd1c3e1b33d61a479fa49465c5a7e7">operator&lt;&lt;</a> (::std::ostream &amp;os, const std::vector&lt; T &gt; &amp;args)</td></tr>
 <tr class="memdesc:a29cd1c3e1b33d61a479fa49465c5a7e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of a vector of objects.  <a href="#a29cd1c3e1b33d61a479fa49465c5a7e7">More...</a><br /></td></tr>
 <tr class="separator:a29cd1c3e1b33d61a479fa49465c5a7e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7393414bb7b814bf70e0399f2347847"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae7393414bb7b814bf70e0399f2347847">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a> &amp;info)</td></tr>
+<tr class="memdesc:ae7393414bb7b814bf70e0399f2347847"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a>.  <a href="#ae7393414bb7b814bf70e0399f2347847">More...</a><br /></td></tr>
+<tr class="separator:ae7393414bb7b814bf70e0399f2347847"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a6411da4e87e64e8859f8b725645ee9aa"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
 <tr class="memitem:a6411da4e87e64e8859f8b725645ee9aa"><td class="memTemplItemLeft" align="right" valign="top">std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6411da4e87e64e8859f8b725645ee9aa">to_string</a> (const std::vector&lt; T &gt; &amp;args)</td></tr>
 <tr class="memdesc:a6411da4e87e64e8859f8b725645ee9aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of a vector of objects.  <a href="#a6411da4e87e64e8859f8b725645ee9aa">More...</a><br /></td></tr>
 <tr class="separator:a6411da4e87e64e8859f8b725645ee9aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af3cba8a4493cee4c431d128eed565ffe"><td class="memItemLeft" align="right" valign="top">inline::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af3cba8a4493cee4c431d128eed565ffe">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_winograd_info.xhtml">WinogradInfo</a> &amp;info)</td></tr>
+<tr class="memitem:af3cba8a4493cee4c431d128eed565ffe"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af3cba8a4493cee4c431d128eed565ffe">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_winograd_info.xhtml">WinogradInfo</a> &amp;info)</td></tr>
 <tr class="memdesc:af3cba8a4493cee4c431d128eed565ffe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_winograd_info.xhtml" title="Winograd information. ">WinogradInfo</a> type.  <a href="#af3cba8a4493cee4c431d128eed565ffe">More...</a><br /></td></tr>
 <tr class="separator:af3cba8a4493cee4c431d128eed565ffe"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a37cc282b0852aab04b13a6e6566adda7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a37cc282b0852aab04b13a6e6566adda7">to_string</a> (const <a class="el" href="structarm__compute_1_1_winograd_info.xhtml">WinogradInfo</a> &amp;type)</td></tr>
@@ -3626,16 +4146,44 @@
 <tr class="memitem:a2ebcd5423d5fba468e7debd2e1aabe91"><td class="memItemLeft" align="right" valign="top">constexpr float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ebcd5423d5fba468e7debd2e1aabe91">SCALE_PYRAMID_ORB</a> = 8.408964152537146130583778358414e-01</td></tr>
 <tr class="memdesc:a2ebcd5423d5fba468e7debd2e1aabe91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant value used to indicate a ORB scaled pyramid.  <a href="#a2ebcd5423d5fba468e7debd2e1aabe91">More...</a><br /></td></tr>
 <tr class="separator:a2ebcd5423d5fba468e7debd2e1aabe91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13d15bf68bbaf481be9ba3988b1cf779"><td class="memItemLeft" align="right" valign="top">constexpr unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a13d15bf68bbaf481be9ba3988b1cf779">num_num_elems_processed_per_iteration</a> = 16</td></tr>
+<tr class="separator:a13d15bf68bbaf481be9ba3988b1cf779"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>This file contains all available output stages for GEMMLowp on OpenCL. </p>
+<div class="textblock"><p>Copyright (c) 2017-2018 ARM Limited. </p>
 <p>This file contains all available output stages for GEMMLowp on NEON.</p>
+<p>This file contains all available output stages for GEMMLowp on OpenCL.</p>
+<p>Copyright (c) 2018 ARM Limited.</p>
+<p>SPDX-License-Identifier: MIT</p>
+<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
+<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
+<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
 <p>In gemmlowp, the "output stage" is the process that takes a final int32 accumulator value (the output of <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_core.xhtml">CLGEMMLowpMatrixMultiplyCore</a>), and processes it to obtain the final ASYMM8 value.</p>
 <p>More information about the GEMMLowp output stage can be found at <a href="https://github.com/google/gemmlowp/blob/master/doc/output.md">https://github.com/google/gemmlowp/blob/master/doc/output.md</a></p>
 <p>In gemmlowp, the "output stage" is the process that takes a final int32 accumulator value (the output of <a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_multiply_core.xhtml">NEGEMMLowpMatrixMultiplyCore</a>), and processes it to obtain the final ASYMM8 value.</p>
 <p>More information about the GEMMLowp output stage can be found at <a href="https://github.com/google/gemmlowp/blob/master/doc/output.md">https://github.com/google/gemmlowp/blob/master/doc/output.md</a> </p>
 </div><h2 class="groupheader">Typedef Documentation</h2>
-<a class="anchor" id="afcef84cf3b7d147b2b6ab0bd884afc16"></a>
+<a id="a11916d4148a39a67794050373f54825a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a11916d4148a39a67794050373f54825a">&#9670;&nbsp;</a></span>BiStrides</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a11916d4148a39a67794050373f54825a">BiStrides</a> =  <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Bidirectional strides. </p>
+
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00049">49</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="afcef84cf3b7d147b2b6ab0bd884afc16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afcef84cf3b7d147b2b6ab0bd884afc16">&#9670;&nbsp;</a></span>CLCoefficientTableArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3647,11 +4195,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Coefficient Tables. </p>
 
-<p>Definition at line <a class="el" href="_c_l_optical_flow_8h_source.xhtml#l00049">49</a> of file <a class="el" href="_c_l_optical_flow_8h_source.xhtml">CLOpticalFlow.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_optical_flow_8h_source.xhtml#l00049">49</a> of file <a class="el" href="_c_l_optical_flow_8h_source.xhtml">CLOpticalFlow.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a4751499f1c526c7285e7e946c2e84541"></a>
+<a id="a4751499f1c526c7285e7e946c2e84541"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4751499f1c526c7285e7e946c2e84541">&#9670;&nbsp;</a></span>CLConvolution3x3Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3663,11 +4213,13 @@
 
 <p>Interface for the kernel which applies a 3x3 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00070">70</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00070">70</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a843447b81f09d837e90d44e6e6bd236d"></a>
+<a id="a843447b81f09d837e90d44e6e6bd236d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a843447b81f09d837e90d44e6e6bd236d">&#9670;&nbsp;</a></span>CLConvolution5x5</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3679,11 +4231,13 @@
 
 <p>Basic function to run 5x5 convolution. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_8h_source.xhtml#l00102">102</a> of file <a class="el" href="_c_l_convolution_8h_source.xhtml">CLConvolution.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_8h_source.xhtml#l00102">102</a> of file <a class="el" href="_c_l_convolution_8h_source.xhtml">CLConvolution.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ac4cfbdf439d7bf5d420546298bd5ca0d"></a>
+<a id="ac4cfbdf439d7bf5d420546298bd5ca0d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac4cfbdf439d7bf5d420546298bd5ca0d">&#9670;&nbsp;</a></span>CLConvolution5x5Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3695,11 +4249,13 @@
 
 <p>Interface for the kernel which applies a 5x5 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00072">72</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00072">72</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a1992a8362b7074e709394a5219d16e62"></a>
+<a id="a1992a8362b7074e709394a5219d16e62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1992a8362b7074e709394a5219d16e62">&#9670;&nbsp;</a></span>CLConvolution7x7</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3711,11 +4267,13 @@
 
 <p>Basic function to run 7x7 convolution. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_8h_source.xhtml#l00104">104</a> of file <a class="el" href="_c_l_convolution_8h_source.xhtml">CLConvolution.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_8h_source.xhtml#l00104">104</a> of file <a class="el" href="_c_l_convolution_8h_source.xhtml">CLConvolution.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a99a54c937a254c96cd1a29a96ffa7dcf"></a>
+<a id="a99a54c937a254c96cd1a29a96ffa7dcf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99a54c937a254c96cd1a29a96ffa7dcf">&#9670;&nbsp;</a></span>CLConvolution7x7Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3727,11 +4285,13 @@
 
 <p>Interface for the kernel which applies a 7x7 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00074">74</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00074">74</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a587dee5d7f05d5e9c3b8704ae8927101"></a>
+<a id="a587dee5d7f05d5e9c3b8704ae8927101"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a587dee5d7f05d5e9c3b8704ae8927101">&#9670;&nbsp;</a></span>CLConvolution9x9</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3743,11 +4303,13 @@
 
 <p>Basic function to run 9x9 convolution. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_8h_source.xhtml#l00106">106</a> of file <a class="el" href="_c_l_convolution_8h_source.xhtml">CLConvolution.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_8h_source.xhtml#l00106">106</a> of file <a class="el" href="_c_l_convolution_8h_source.xhtml">CLConvolution.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a908439cd5cf8253865d5c70a413fd607"></a>
+<a id="a908439cd5cf8253865d5c70a413fd607"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a908439cd5cf8253865d5c70a413fd607">&#9670;&nbsp;</a></span>CLConvolution9x9Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3759,11 +4321,13 @@
 
 <p>Interface for the kernel which applies a 9x9 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00076">76</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00076">76</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a0fd5f0310a26faad00b905bac3792726"></a>
+<a id="a0fd5f0310a26faad00b905bac3792726"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0fd5f0310a26faad00b905bac3792726">&#9670;&nbsp;</a></span>CLCoordinates2DArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3775,11 +4339,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item. ">Coordinates</a>. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00109">109</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00109">109</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ab8d2c7efb7643ce8f9e5446dbe1da0b4"></a>
+<a id="ab8d2c7efb7643ce8f9e5446dbe1da0b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab8d2c7efb7643ce8f9e5446dbe1da0b4">&#9670;&nbsp;</a></span>CLDetectionWindowArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3791,11 +4357,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Detection Windows. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00111">111</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00111">111</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a193a4859b365f3ef4e0d73a1e6b12c85"></a>
+<a id="a193a4859b365f3ef4e0d73a1e6b12c85"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a193a4859b365f3ef4e0d73a1e6b12c85">&#9670;&nbsp;</a></span>CLFloatArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3807,11 +4375,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of floats. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00127">127</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00127">127</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="aae712f442eae2d56d17529ca6cb9cb77"></a>
+<a id="aae712f442eae2d56d17529ca6cb9cb77"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae712f442eae2d56d17529ca6cb9cb77">&#9670;&nbsp;</a></span>CLImage</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3823,11 +4393,13 @@
 
 <p>OpenCL <a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a>. </p>
 
-<p>Definition at line <a class="el" href="_c_l_tensor_8h_source.xhtml#l00080">80</a> of file <a class="el" href="_c_l_tensor_8h_source.xhtml">CLTensor.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_tensor_8h_source.xhtml#l00080">80</a> of file <a class="el" href="_c_l_tensor_8h_source.xhtml">CLTensor.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a5fb8cb339705102066c915d18f0701ac"></a>
+<a id="a5fb8cb339705102066c915d18f0701ac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5fb8cb339705102066c915d18f0701ac">&#9670;&nbsp;</a></span>CLInt16Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3839,11 +4411,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of int16s. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00123">123</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00123">123</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a8a401a071524761c661a75969c951cf5"></a>
+<a id="a8a401a071524761c661a75969c951cf5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a401a071524761c661a75969c951cf5">&#9670;&nbsp;</a></span>CLInt32Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3855,11 +4429,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of int32s. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00125">125</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00125">125</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a55e1c5ed17b7ee3762198a38eb50650a"></a>
+<a id="a55e1c5ed17b7ee3762198a38eb50650a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55e1c5ed17b7ee3762198a38eb50650a">&#9670;&nbsp;</a></span>CLKeyPointArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3871,11 +4447,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Key Points. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00107">107</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00107">107</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a70997613219641045213b0c12948fb74"></a>
+<a id="a70997613219641045213b0c12948fb74"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70997613219641045213b0c12948fb74">&#9670;&nbsp;</a></span>CLLKInternalKeypointArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3887,11 +4465,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Internal Keypoints. </p>
 
-<p>Definition at line <a class="el" href="_c_l_optical_flow_8h_source.xhtml#l00047">47</a> of file <a class="el" href="_c_l_optical_flow_8h_source.xhtml">CLOpticalFlow.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_optical_flow_8h_source.xhtml#l00047">47</a> of file <a class="el" href="_c_l_optical_flow_8h_source.xhtml">CLOpticalFlow.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ac87d48489667d7ff7fc4cc7d0d12c52e"></a>
+<a id="ac87d48489667d7ff7fc4cc7d0d12c52e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac87d48489667d7ff7fc4cc7d0d12c52e">&#9670;&nbsp;</a></span>CLMemoryGroup</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3903,11 +4483,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object. ">Memory</a> Group in OpenCL. </p>
 
-<p>Definition at line <a class="el" href="_c_l_memory_group_8h_source.xhtml#l00035">35</a> of file <a class="el" href="_c_l_memory_group_8h_source.xhtml">CLMemoryGroup.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_memory_group_8h_source.xhtml#l00035">35</a> of file <a class="el" href="_c_l_memory_group_8h_source.xhtml">CLMemoryGroup.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a4ec6965f606c588137f7a48d84c1d6f0"></a>
+<a id="a4ec6965f606c588137f7a48d84c1d6f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ec6965f606c588137f7a48d84c1d6f0">&#9670;&nbsp;</a></span>CLOldValueArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3919,11 +4501,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Old Values. </p>
 
-<p>Definition at line <a class="el" href="_c_l_optical_flow_8h_source.xhtml#l00051">51</a> of file <a class="el" href="_c_l_optical_flow_8h_source.xhtml">CLOpticalFlow.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_optical_flow_8h_source.xhtml#l00051">51</a> of file <a class="el" href="_c_l_optical_flow_8h_source.xhtml">CLOpticalFlow.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a7d756aef16b9c22456bb7aca8fbb4f4c"></a>
+<a id="a7d756aef16b9c22456bb7aca8fbb4f4c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d756aef16b9c22456bb7aca8fbb4f4c">&#9670;&nbsp;</a></span>CLROIArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3935,11 +4519,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of ROIs. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00113">113</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00113">113</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ac72d613f7270604dbcad2553c278b16c"></a>
+<a id="ac72d613f7270604dbcad2553c278b16c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac72d613f7270604dbcad2553c278b16c">&#9670;&nbsp;</a></span>CLSeparableConvolution5x5HorKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3951,11 +4537,13 @@
 
 <p>Interface for the kernel which applies a horizontal pass of 5x5 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00106">106</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00106">106</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ac7295b0d8d71be75033238ad7fbba38c"></a>
+<a id="ac7295b0d8d71be75033238ad7fbba38c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7295b0d8d71be75033238ad7fbba38c">&#9670;&nbsp;</a></span>CLSeparableConvolution5x5VertKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3967,11 +4555,13 @@
 
 <p>Interface for the kernel which applies a vertical pass of 5x5 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00133">133</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00133">133</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="aab26624bf4b326f8145b2909a5042004"></a>
+<a id="aab26624bf4b326f8145b2909a5042004"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab26624bf4b326f8145b2909a5042004">&#9670;&nbsp;</a></span>CLSeparableConvolution7x7HorKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3983,11 +4573,13 @@
 
 <p>Interface for the kernel which applies a horizontal pass of 7x7 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00108">108</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00108">108</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a0ffdf01e236016ce8d366a69875d1375"></a>
+<a id="a0ffdf01e236016ce8d366a69875d1375"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ffdf01e236016ce8d366a69875d1375">&#9670;&nbsp;</a></span>CLSeparableConvolution7x7VertKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -3999,11 +4591,13 @@
 
 <p>Interface for the kernel which applies a vertical pass of 7x7 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00135">135</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00135">135</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a9f34ccad344bc43d25e8be2b828853aa"></a>
+<a id="a9f34ccad344bc43d25e8be2b828853aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9f34ccad344bc43d25e8be2b828853aa">&#9670;&nbsp;</a></span>CLSeparableConvolution9x9HorKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4015,11 +4609,13 @@
 
 <p>Interface for the kernel which applies a horizontal pass of 9x9 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00110">110</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00110">110</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a6d08e1e881bf611c1e1b9e2bb8810d19"></a>
+<a id="a6d08e1e881bf611c1e1b9e2bb8810d19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d08e1e881bf611c1e1b9e2bb8810d19">&#9670;&nbsp;</a></span>CLSeparableConvolution9x9VertKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4031,11 +4627,13 @@
 
 <p>Interface for the kernel which applies a vertical pass of 9x9 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00137">137</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00137">137</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a3f9ab729931f4e4fa36ff1683186d988"></a>
+<a id="a3f9ab729931f4e4fa36ff1683186d988"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f9ab729931f4e4fa36ff1683186d988">&#9670;&nbsp;</a></span>CLSize2DArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4047,11 +4645,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of 2D Sizes. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00115">115</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00115">115</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a7b4c4a79c73a3f85ba89aff03fddefa7"></a>
+<a id="a7b4c4a79c73a3f85ba89aff03fddefa7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7b4c4a79c73a3f85ba89aff03fddefa7">&#9670;&nbsp;</a></span>CLUInt16Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4063,11 +4663,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint16s. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00119">119</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00119">119</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a1d7d89b7e990055dc95ed37dfb24da48"></a>
+<a id="a1d7d89b7e990055dc95ed37dfb24da48"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d7d89b7e990055dc95ed37dfb24da48">&#9670;&nbsp;</a></span>CLUInt32Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4079,11 +4681,13 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint32s. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00121">121</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00121">121</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="aa031694bb03711e09e25546ad2b643cc"></a>
+<a id="aa031694bb03711e09e25546ad2b643cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa031694bb03711e09e25546ad2b643cc">&#9670;&nbsp;</a></span>CLUInt8Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4095,11 +4699,29 @@
 
 <p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint8s. </p>
 
-<p>Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00117">117</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00117">117</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a327abccf7b43aa32d6a24319b986f3ab"></a>
+<a id="a926fa1a0e7fd320cff5ba6c6f62f463b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a926fa1a0e7fd320cff5ba6c6f62f463b">&#9670;&nbsp;</a></span>const_ptr_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a> =  const T *</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00095">95</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a327abccf7b43aa32d6a24319b986f3ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a327abccf7b43aa32d6a24319b986f3ab">&#9670;&nbsp;</a></span>Coordinates2DArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4111,11 +4733,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item. ">Coordinates</a>. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00067">67</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00067">67</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a5fe01ab895629edd84a511b56657d79e"></a>
+<a id="a5fe01ab895629edd84a511b56657d79e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5fe01ab895629edd84a511b56657d79e">&#9670;&nbsp;</a></span>DetectionWindowArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4127,11 +4751,29 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Detection Windows. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00069">69</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00069">69</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a6e06029aa1b68c0cdeb80656cc9353fe"></a>
+<a id="a534a101b6176c3e065eba4b4cde7a40e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a534a101b6176c3e065eba4b4cde7a40e">&#9670;&nbsp;</a></span>elem_type_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a> =  decltype(<a class="el" href="namespacearm__compute.xhtml#a40552ea65ee3fc6d7fa7f1fb17baebe7">vget_lane</a>&lt;0&gt;(std::declval&lt;V&gt;()))</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00120">120</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a6e06029aa1b68c0cdeb80656cc9353fe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e06029aa1b68c0cdeb80656cc9353fe">&#9670;&nbsp;</a></span>FloatArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4143,11 +4785,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of floats. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00085">85</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00085">85</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a10f3af894ca8b0479a5e6bc296083314"></a>
+<a id="a10f3af894ca8b0479a5e6bc296083314"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10f3af894ca8b0479a5e6bc296083314">&#9670;&nbsp;</a></span>GCDirectConvolutionLayer1x1Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4159,11 +4803,13 @@
 
 <p>Interface for the 1x1 direct convolution kernel. </p>
 
-<p>Definition at line <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml#l00086">86</a> of file <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml">GCDirectConvolutionLayerKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml#l00086">86</a> of file <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml">GCDirectConvolutionLayerKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a35ccf8834da8b67bfb9c61fbc5e5f1e6"></a>
+<a id="a35ccf8834da8b67bfb9c61fbc5e5f1e6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a35ccf8834da8b67bfb9c61fbc5e5f1e6">&#9670;&nbsp;</a></span>GCDirectConvolutionLayer3x3Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4175,11 +4821,13 @@
 
 <p>Interface for the 3x3 direct convolution kernel. </p>
 
-<p>Definition at line <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml#l00088">88</a> of file <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml">GCDirectConvolutionLayerKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml#l00088">88</a> of file <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml">GCDirectConvolutionLayerKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a227e525a4d0a4da25040cfdf8a3cf06b"></a>
+<a id="a227e525a4d0a4da25040cfdf8a3cf06b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a227e525a4d0a4da25040cfdf8a3cf06b">&#9670;&nbsp;</a></span>GCDirectConvolutionLayer5x5Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4191,11 +4839,13 @@
 
 <p>Interface for the 5x5 direct convolution kernel. </p>
 
-<p>Definition at line <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml#l00090">90</a> of file <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml">GCDirectConvolutionLayerKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml#l00090">90</a> of file <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml">GCDirectConvolutionLayerKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a0b1d72d612fb6f33393ea6cd6cbcf523"></a>
+<a id="a0b1d72d612fb6f33393ea6cd6cbcf523"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b1d72d612fb6f33393ea6cd6cbcf523">&#9670;&nbsp;</a></span>GCImage</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4207,11 +4857,13 @@
 
 <p>OpenGL ES <a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a>. </p>
 
-<p>Definition at line <a class="el" href="_g_c_tensor_8h_source.xhtml#l00098">98</a> of file <a class="el" href="_g_c_tensor_8h_source.xhtml">GCTensor.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_g_c_tensor_8h_source.xhtml#l00098">98</a> of file <a class="el" href="_g_c_tensor_8h_source.xhtml">GCTensor.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="abb079bea3cd2a65a7018eab99392747e"></a>
+<a id="abb079bea3cd2a65a7018eab99392747e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb079bea3cd2a65a7018eab99392747e">&#9670;&nbsp;</a></span>GCMemoryGroup</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4221,27 +4873,31 @@
       </table>
 </div><div class="memdoc">
 
-<p>Definition at line <a class="el" href="_g_c_memory_group_8h_source.xhtml#l00035">35</a> of file <a class="el" href="_g_c_memory_group_8h_source.xhtml">GCMemoryGroup.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_g_c_memory_group_8h_source.xhtml#l00035">35</a> of file <a class="el" href="_g_c_memory_group_8h_source.xhtml">GCMemoryGroup.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ad2398d0f2ce77c10bbebf1f85317dde5"></a>
+<a id="ad2398d0f2ce77c10bbebf1f85317dde5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad2398d0f2ce77c10bbebf1f85317dde5">&#9670;&nbsp;</a></span>GroupMappings</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ad2398d0f2ce77c10bbebf1f85317dde5">GroupMappings</a> =  std::map&lt;size_t, <a class="el" href="namespacearm__compute.xhtml#a762c7da7319adcc433b3ac7a67e18ed5">MemoryMappings</a>&gt;</td>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ad2398d0f2ce77c10bbebf1f85317dde5">GroupMappings</a> =  std::map&lt;size_t, <a class="el" href="namespacearm__compute.xhtml#a43b7da220a8ead83acff98f218f7eb6b">MemoryMappings</a>&gt;</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 <p>A map of the groups and memory mappings. </p>
 
-<p>Definition at line <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml#l00046">46</a> of file <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml">Types.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml#l00048">48</a> of file <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml">Types.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a73e2825fd61d349c5ca2f5313e3c8ea1"></a>
+<a id="a73e2825fd61d349c5ca2f5313e3c8ea1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73e2825fd61d349c5ca2f5313e3c8ea1">&#9670;&nbsp;</a></span>half</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4253,11 +4909,13 @@
 
 <p>16-bit floating point type </p>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00044">44</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00044">44</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a05d88c40a53babe38cb2cb5841c4a0ad"></a>
+<a id="a05d88c40a53babe38cb2cb5841c4a0ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05d88c40a53babe38cb2cb5841c4a0ad">&#9670;&nbsp;</a></span>ICLCoefficientTableArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4269,11 +4927,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Coefficient Tables. </p>
 
-<p>Definition at line <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml#l00068">68</a> of file <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml">CLLKTrackerKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml#l00068">68</a> of file <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml">CLLKTrackerKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="adf4063963bf3a4b07a5d0cc840da9ee2"></a>
+<a id="adf4063963bf3a4b07a5d0cc840da9ee2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf4063963bf3a4b07a5d0cc840da9ee2">&#9670;&nbsp;</a></span>ICLCoordinates2DArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4285,11 +4945,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item. ">Coordinates</a>. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00121">121</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00121">121</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a4cc908807b0a45ccc6ce7ba340ae2259"></a>
+<a id="a4cc908807b0a45ccc6ce7ba340ae2259"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4cc908807b0a45ccc6ce7ba340ae2259">&#9670;&nbsp;</a></span>ICLDetectionWindowArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4301,11 +4963,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Detection Windows. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00123">123</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00123">123</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a631bac7c033a0d341c631870f9755217"></a>
+<a id="a631bac7c033a0d341c631870f9755217"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a631bac7c033a0d341c631870f9755217">&#9670;&nbsp;</a></span>ICLFloatArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4317,11 +4981,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of floats. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00139">139</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00139">139</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="aa80145f30ddae0c2ccbcaa910e3e71dd"></a>
+<a id="aa80145f30ddae0c2ccbcaa910e3e71dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa80145f30ddae0c2ccbcaa910e3e71dd">&#9670;&nbsp;</a></span>ICLImage</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4333,11 +4999,13 @@
 
 <p>Interface for OpenCL images. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_multi_image_8h_source.xhtml#l00033">33</a> of file <a class="el" href="_i_c_l_multi_image_8h_source.xhtml">ICLMultiImage.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_multi_image_8h_source.xhtml#l00033">33</a> of file <a class="el" href="_i_c_l_multi_image_8h_source.xhtml">ICLMultiImage.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a67328fa21e30aecd0c27d6d2e63a2b9c"></a>
+<a id="a67328fa21e30aecd0c27d6d2e63a2b9c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a67328fa21e30aecd0c27d6d2e63a2b9c">&#9670;&nbsp;</a></span>ICLInt16Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4349,11 +5017,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of int16s. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00135">135</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00135">135</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ab95380ecf1c0253f6c785c0f59194066"></a>
+<a id="ab95380ecf1c0253f6c785c0f59194066"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab95380ecf1c0253f6c785c0f59194066">&#9670;&nbsp;</a></span>ICLInt32Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4365,11 +5035,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of int32s. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00137">137</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00137">137</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="adb969f0e554bf563f2fa671399d59280"></a>
+<a id="adb969f0e554bf563f2fa671399d59280"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adb969f0e554bf563f2fa671399d59280">&#9670;&nbsp;</a></span>ICLKeyPointArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4381,11 +5053,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Key Points. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00119">119</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00119">119</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a569a32a7a853d4708fd4f4840c88a157"></a>
+<a id="a569a32a7a853d4708fd4f4840c88a157"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a569a32a7a853d4708fd4f4840c88a157">&#9670;&nbsp;</a></span>ICLLKInternalKeypointArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4397,11 +5071,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Internal Key Points. </p>
 
-<p>Definition at line <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml#l00066">66</a> of file <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml">CLLKTrackerKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml#l00066">66</a> of file <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml">CLLKTrackerKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a0339a19c93dde6754834a7d4ec7dab73"></a>
+<a id="a0339a19c93dde6754834a7d4ec7dab73"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0339a19c93dde6754834a7d4ec7dab73">&#9670;&nbsp;</a></span>ICLOldValArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4413,11 +5089,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Old Values. </p>
 
-<p>Definition at line <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml#l00070">70</a> of file <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml">CLLKTrackerKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml#l00070">70</a> of file <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml">CLLKTrackerKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a64e11fcdd0f4a3f7d832495b7053fbe9"></a>
+<a id="a64e11fcdd0f4a3f7d832495b7053fbe9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64e11fcdd0f4a3f7d832495b7053fbe9">&#9670;&nbsp;</a></span>ICLROIArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4429,11 +5107,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of ROIs. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00125">125</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00125">125</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a68396eee600b3d23bf7f95a802e65dff"></a>
+<a id="a68396eee600b3d23bf7f95a802e65dff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a68396eee600b3d23bf7f95a802e65dff">&#9670;&nbsp;</a></span>ICLSize2DArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4445,11 +5125,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of 2D Sizes. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00127">127</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00127">127</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="aed5c7222c31a34327f00de37d8c4f4fc"></a>
+<a id="aed5c7222c31a34327f00de37d8c4f4fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aed5c7222c31a34327f00de37d8c4f4fc">&#9670;&nbsp;</a></span>ICLUInt16Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4461,11 +5143,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint16s. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00131">131</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00131">131</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a6b5f839e8d27c6351e8d58812dd46c97"></a>
+<a id="a6b5f839e8d27c6351e8d58812dd46c97"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6b5f839e8d27c6351e8d58812dd46c97">&#9670;&nbsp;</a></span>ICLUInt32Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4477,11 +5161,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint32s. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00133">133</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00133">133</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a72251c7a73b3c057ffca9f32ee3e19ea"></a>
+<a id="a72251c7a73b3c057ffca9f32ee3e19ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72251c7a73b3c057ffca9f32ee3e19ea">&#9670;&nbsp;</a></span>ICLUInt8Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4493,11 +5179,13 @@
 
 <p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint8s. </p>
 
-<p>Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00129">129</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00129">129</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="aac9efd49d3bbbd53779713e5fb37de62"></a>
+<a id="aac9efd49d3bbbd53779713e5fb37de62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac9efd49d3bbbd53779713e5fb37de62">&#9670;&nbsp;</a></span>ICoordinates2DArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4509,11 +5197,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item. ">Coordinates</a>. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00142">142</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00142">142</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a52b3b9de6092ae37321159c4c2f1bf40"></a>
+<a id="a52b3b9de6092ae37321159c4c2f1bf40"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52b3b9de6092ae37321159c4c2f1bf40">&#9670;&nbsp;</a></span>IDetectionWindowArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4525,11 +5215,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Detection Windows. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00144">144</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00144">144</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a8a82a1928159e86b0778c3c14e8842be"></a>
+<a id="a8a82a1928159e86b0778c3c14e8842be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a82a1928159e86b0778c3c14e8842be">&#9670;&nbsp;</a></span>IFloatArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4541,11 +5233,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of floats. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00160">160</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00160">160</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a39070701484fa98eaa18cfcdb6aeb175"></a>
+<a id="a39070701484fa98eaa18cfcdb6aeb175"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a39070701484fa98eaa18cfcdb6aeb175">&#9670;&nbsp;</a></span>IGCImage</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4557,11 +5251,13 @@
 
 <p>Interface for GLES Compute image. </p>
 
-<p>Definition at line <a class="el" href="_i_g_c_tensor_8h_source.xhtml#l00111">111</a> of file <a class="el" href="_i_g_c_tensor_8h_source.xhtml">IGCTensor.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_g_c_tensor_8h_source.xhtml#l00111">111</a> of file <a class="el" href="_i_g_c_tensor_8h_source.xhtml">IGCTensor.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ac20902ac1ef01783c8a8d71a9bdf1100"></a>
+<a id="ac20902ac1ef01783c8a8d71a9bdf1100"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac20902ac1ef01783c8a8d71a9bdf1100">&#9670;&nbsp;</a></span>IImage</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4573,11 +5269,13 @@
 
 <p>Interface for CPP Images. </p>
 
-<p>Definition at line <a class="el" href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">37</a> of file <a class="el" href="_c_p_p_corner_candidates_kernel_8h_source.xhtml">CPPCornerCandidatesKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">37</a> of file <a class="el" href="_c_p_p_corner_candidates_kernel_8h_source.xhtml">CPPCornerCandidatesKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a1dd5e04cea002eae658fa2a899848ad7"></a>
+<a id="a1dd5e04cea002eae658fa2a899848ad7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1dd5e04cea002eae658fa2a899848ad7">&#9670;&nbsp;</a></span>IInt16Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4589,11 +5287,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of int16s. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00156">156</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00156">156</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a51fdf34dfc5c60b6f4f455f0a9cac457"></a>
+<a id="a51fdf34dfc5c60b6f4f455f0a9cac457"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51fdf34dfc5c60b6f4f455f0a9cac457">&#9670;&nbsp;</a></span>IInt32Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4605,11 +5305,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of int32s. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00158">158</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00158">158</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ab56a557a5fdf97819f23c35c24f0b0d2"></a>
+<a id="ab56a557a5fdf97819f23c35c24f0b0d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab56a557a5fdf97819f23c35c24f0b0d2">&#9670;&nbsp;</a></span>IKeyPointArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4621,11 +5323,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Key Points. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00140">140</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00140">140</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a7fb6a368d181ef193475f725c713430a"></a>
+<a id="a7fb6a368d181ef193475f725c713430a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7fb6a368d181ef193475f725c713430a">&#9670;&nbsp;</a></span>Image</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4637,11 +5341,13 @@
 
 <p><a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a>. </p>
 
-<p>Definition at line <a class="el" href="runtime_2_tensor_8h_source.xhtml#l00064">64</a> of file <a class="el" href="runtime_2_tensor_8h_source.xhtml">Tensor.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="runtime_2_tensor_8h_source.xhtml#l00064">64</a> of file <a class="el" href="runtime_2_tensor_8h_source.xhtml">Tensor.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a9f3ed96e009111cfbe53d3f77c712390"></a>
+<a id="a9f3ed96e009111cfbe53d3f77c712390"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9f3ed96e009111cfbe53d3f77c712390">&#9670;&nbsp;</a></span>INEKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4653,11 +5359,13 @@
 
 <p>Common interface for all kernels implemented in NEON. </p>
 
-<p>Definition at line <a class="el" href="_i_n_e_kernel_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_i_n_e_kernel_8h_source.xhtml">INEKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_n_e_kernel_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_i_n_e_kernel_8h_source.xhtml">INEKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a19699533eb1b662e46a10715f6086487"></a>
+<a id="a19699533eb1b662e46a10715f6086487"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a19699533eb1b662e46a10715f6086487">&#9670;&nbsp;</a></span>INELKInternalKeypointArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4669,11 +5377,13 @@
 
 <p>Interface for NEON <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Internal Key Points. </p>
 
-<p>Definition at line <a class="el" href="_n_e_l_k_tracker_kernel_8h_source.xhtml#l00049">49</a> of file <a class="el" href="_n_e_l_k_tracker_kernel_8h_source.xhtml">NELKTrackerKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_l_k_tracker_kernel_8h_source.xhtml#l00049">49</a> of file <a class="el" href="_n_e_l_k_tracker_kernel_8h_source.xhtml">NELKTrackerKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a4aad0c49ce3d7cf4693830398f190250"></a>
+<a id="a4aad0c49ce3d7cf4693830398f190250"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4aad0c49ce3d7cf4693830398f190250">&#9670;&nbsp;</a></span>INESimpleKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4685,11 +5395,13 @@
 
 <p>Interface for simple NEON kernels having 1 tensor input and 1 tensor output. </p>
 
-<p>Definition at line <a class="el" href="_i_n_e_simple_kernel_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_i_n_e_simple_kernel_8h_source.xhtml">INESimpleKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_n_e_simple_kernel_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_i_n_e_simple_kernel_8h_source.xhtml">INESimpleKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a69c19b38cbee8fa6680513f6ff76bbb3"></a>
+<a id="a69c19b38cbee8fa6680513f6ff76bbb3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a69c19b38cbee8fa6680513f6ff76bbb3">&#9670;&nbsp;</a></span>Int16Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4701,11 +5413,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of int16s. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00081">81</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00081">81</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a6af9862834629c287a81b16837b51e44"></a>
+<a id="a6af9862834629c287a81b16837b51e44"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6af9862834629c287a81b16837b51e44">&#9670;&nbsp;</a></span>Int32Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4717,11 +5431,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of int32s. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00083">83</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00083">83</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a2ab89a5d0959531aac270879cdd3ed78"></a>
+<a id="a2ab89a5d0959531aac270879cdd3ed78"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ab89a5d0959531aac270879cdd3ed78">&#9670;&nbsp;</a></span>InternalKeypoint</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4733,11 +5449,13 @@
 
 <p>Internal key point. </p>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00445">445</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00450">450</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ae273be451a4d6de5fa255cb8fb09a64b"></a>
+<a id="ae273be451a4d6de5fa255cb8fb09a64b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae273be451a4d6de5fa255cb8fb09a64b">&#9670;&nbsp;</a></span>IROIArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4749,11 +5467,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of ROIs. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00146">146</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00146">146</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a32e4b9083329486a06960006af89a84c"></a>
+<a id="a32e4b9083329486a06960006af89a84c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a32e4b9083329486a06960006af89a84c">&#9670;&nbsp;</a></span>ISize2DArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4765,11 +5485,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of 2D Sizes. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00148">148</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00148">148</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a1ffe8af91a934c926d102938db8d3ce1"></a>
+<a id="a1ffe8af91a934c926d102938db8d3ce1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ffe8af91a934c926d102938db8d3ce1">&#9670;&nbsp;</a></span>IUInt16Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4781,11 +5503,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint16s. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00152">152</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00152">152</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ac9b2a6fa6e146437bfc8c0bee96e4760"></a>
+<a id="ac9b2a6fa6e146437bfc8c0bee96e4760"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac9b2a6fa6e146437bfc8c0bee96e4760">&#9670;&nbsp;</a></span>IUInt32Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4797,11 +5521,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint32s. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00154">154</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00154">154</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a276401fd5651e75431d3e1cc90601caa"></a>
+<a id="a276401fd5651e75431d3e1cc90601caa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a276401fd5651e75431d3e1cc90601caa">&#9670;&nbsp;</a></span>IUInt8Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4813,11 +5539,13 @@
 
 <p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint8s. </p>
 
-<p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00150">150</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00150">150</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a8856eca9a83e16bb0cb5880e9c6c9fe7"></a>
+<a id="a8856eca9a83e16bb0cb5880e9c6c9fe7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8856eca9a83e16bb0cb5880e9c6c9fe7">&#9670;&nbsp;</a></span>KeyPointArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4829,11 +5557,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of Key Points. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00065">65</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00065">65</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a681c120e2188371794ec3a59768c64ab"></a>
+<a id="a681c120e2188371794ec3a59768c64ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a681c120e2188371794ec3a59768c64ab">&#9670;&nbsp;</a></span>LKInternalKeypointArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4845,11 +5575,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of LK Internel Keypoints. </p>
 
-<p>Definition at line <a class="el" href="_n_e_optical_flow_8h_source.xhtml#l00046">46</a> of file <a class="el" href="_n_e_optical_flow_8h_source.xhtml">NEOpticalFlow.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_optical_flow_8h_source.xhtml#l00046">46</a> of file <a class="el" href="_n_e_optical_flow_8h_source.xhtml">NEOpticalFlow.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a0e7a03e2e133cb1fbb12517a3f646a09"></a>
+<a id="a0e7a03e2e133cb1fbb12517a3f646a09"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0e7a03e2e133cb1fbb12517a3f646a09">&#9670;&nbsp;</a></span>MemoryGroup</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4861,16 +5593,18 @@
 
 <p><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object. ">Memory</a> Group. </p>
 
-<p>Definition at line <a class="el" href="_memory_group_8h_source.xhtml#l00034">34</a> of file <a class="el" href="_memory_group_8h_source.xhtml">MemoryGroup.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_memory_group_8h_source.xhtml#l00034">34</a> of file <a class="el" href="_memory_group_8h_source.xhtml">MemoryGroup.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a762c7da7319adcc433b3ac7a67e18ed5"></a>
+<a id="a43b7da220a8ead83acff98f218f7eb6b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a43b7da220a8ead83acff98f218f7eb6b">&#9670;&nbsp;</a></span>MemoryMappings</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a762c7da7319adcc433b3ac7a67e18ed5">MemoryMappings</a> =  std::map&lt;void **, size_t&gt;</td>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a43b7da220a8ead83acff98f218f7eb6b">MemoryMappings</a> =  std::map&lt;<a class="el" href="classarm__compute_1_1_i_memory.xhtml">IMemory</a> *, size_t&gt;</td>
         </tr>
       </table>
 </div><div class="memdoc">
@@ -4878,11 +5612,13 @@
 <p>A map of (handle, index/offset), where handle is the memory handle of the object to provide the memory for and index/offset is the buffer/offset from the pool that should be used. </p>
 <dl class="section note"><dt>Note</dt><dd>All objects are pre-pinned to specific buffers to avoid any relevant overheads </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml#l00043">43</a> of file <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml">Types.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml#l00045">45</a> of file <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml">Types.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="acded863dbfdd730829d4188d67eefcf0"></a>
+<a id="acded863dbfdd730829d4188d67eefcf0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acded863dbfdd730829d4188d67eefcf0">&#9670;&nbsp;</a></span>Mutex</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4894,11 +5630,13 @@
 
 <p>Wrapper of Mutex data-object. </p>
 
-<p>Definition at line <a class="el" href="_mutex_8h_source.xhtml#l00033">33</a> of file <a class="el" href="_mutex_8h_source.xhtml">Mutex.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_mutex_8h_source.xhtml#l00033">33</a> of file <a class="el" href="_mutex_8h_source.xhtml">Mutex.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="aff99c045b07329b332b1cb97a2dd1518"></a>
+<a id="aff99c045b07329b332b1cb97a2dd1518"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aff99c045b07329b332b1cb97a2dd1518">&#9670;&nbsp;</a></span>NEAccumulateWeightedFP16Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4910,11 +5648,13 @@
 
 <p>Interface for the accumulate weighted kernel using F16. </p>
 
-<p>Definition at line <a class="el" href="_n_e_accumulate_kernel_8h_source.xhtml#l00105">105</a> of file <a class="el" href="_n_e_accumulate_kernel_8h_source.xhtml">NEAccumulateKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_accumulate_kernel_8h_source.xhtml#l00105">105</a> of file <a class="el" href="_n_e_accumulate_kernel_8h_source.xhtml">NEAccumulateKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a96f7f6f98dc47e0dc3b928bf87397ebf"></a>
+<a id="a96f7f6f98dc47e0dc3b928bf87397ebf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96f7f6f98dc47e0dc3b928bf87397ebf">&#9670;&nbsp;</a></span>NEBox3x3FP16Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4926,11 +5666,13 @@
 
 <p>NEON kernel to perform a Box 3x3 filter for FP16 datatype. </p>
 
-<p>Definition at line <a class="el" href="_n_e_box3x3_kernel_8h_source.xhtml#l00068">68</a> of file <a class="el" href="_n_e_box3x3_kernel_8h_source.xhtml">NEBox3x3Kernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_box3x3_kernel_8h_source.xhtml#l00068">68</a> of file <a class="el" href="_n_e_box3x3_kernel_8h_source.xhtml">NEBox3x3Kernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="acf81639b3d33b5da654ef088e4d10520"></a>
+<a id="acf81639b3d33b5da654ef088e4d10520"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf81639b3d33b5da654ef088e4d10520">&#9670;&nbsp;</a></span>NEConvolution3x3Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4942,11 +5684,13 @@
 
 <p>Interface for the kernel which applied a 3x3 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00088">88</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00088">88</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="adbc7771d367ba8f51da1450d3602e5c0"></a>
+<a id="adbc7771d367ba8f51da1450d3602e5c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adbc7771d367ba8f51da1450d3602e5c0">&#9670;&nbsp;</a></span>NEConvolution5x5</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4958,11 +5702,13 @@
 
 <p>Basic function to run 5x5 convolution. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_8h_source.xhtml#l00102">102</a> of file <a class="el" href="_n_e_convolution_8h_source.xhtml">NEConvolution.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_8h_source.xhtml#l00102">102</a> of file <a class="el" href="_n_e_convolution_8h_source.xhtml">NEConvolution.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a21898b2d2e31ab9af8933c66ff82c8c6"></a>
+<a id="a21898b2d2e31ab9af8933c66ff82c8c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a21898b2d2e31ab9af8933c66ff82c8c6">&#9670;&nbsp;</a></span>NEConvolution5x5Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4974,11 +5720,13 @@
 
 <p>Interface for the kernel which applied a 5x5 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00090">90</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00090">90</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="aeb2682fbeb2766df26b4be1971c9757d"></a>
+<a id="aeb2682fbeb2766df26b4be1971c9757d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb2682fbeb2766df26b4be1971c9757d">&#9670;&nbsp;</a></span>NEConvolution7x7</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -4990,11 +5738,13 @@
 
 <p>Basic function to run 7x7 convolution. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_8h_source.xhtml#l00104">104</a> of file <a class="el" href="_n_e_convolution_8h_source.xhtml">NEConvolution.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_8h_source.xhtml#l00104">104</a> of file <a class="el" href="_n_e_convolution_8h_source.xhtml">NEConvolution.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ae46cbbe03d31c6c8e7eba7b58999842d"></a>
+<a id="ae46cbbe03d31c6c8e7eba7b58999842d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae46cbbe03d31c6c8e7eba7b58999842d">&#9670;&nbsp;</a></span>NEConvolution7x7Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5006,11 +5756,13 @@
 
 <p>Interface for the kernel which applied a 7x7 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00092">92</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00092">92</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ae5a088552f26a1afafd0cbf821d256fb"></a>
+<a id="ae5a088552f26a1afafd0cbf821d256fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5a088552f26a1afafd0cbf821d256fb">&#9670;&nbsp;</a></span>NEConvolution9x9</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5022,11 +5774,13 @@
 
 <p>Basic function to run 9x9 convolution. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_8h_source.xhtml#l00106">106</a> of file <a class="el" href="_n_e_convolution_8h_source.xhtml">NEConvolution.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_8h_source.xhtml#l00106">106</a> of file <a class="el" href="_n_e_convolution_8h_source.xhtml">NEConvolution.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a1025306f820a9e76df7e5891caacff7b"></a>
+<a id="a1025306f820a9e76df7e5891caacff7b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1025306f820a9e76df7e5891caacff7b">&#9670;&nbsp;</a></span>NEConvolution9x9Kernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5038,43 +5792,13 @@
 
 <p>Interface for the kernel which applied a 9x9 convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00094">94</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00094">94</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a593fd1da692f305db6ca306cb8e0158e"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a593fd1da692f305db6ca306cb8e0158e">NEGradientFP16Kernel</a> =  <a class="el" href="classarm__compute_1_1_n_e_gradient_kernel.xhtml">NEGradientKernel</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
+<a id="a38cad49e6beaef76bc1ec5064c9e9dba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a38cad49e6beaef76bc1ec5064c9e9dba">&#9670;&nbsp;</a></span>NENonMaximaSuppression3x3FP16Kernel</h2>
 
-<p>NEON kernel to perform Gradient computation for FP16 datatype. </p>
-
-<p>Definition at line <a class="el" href="_n_e_canny_edge_kernel_8h_source.xhtml#l00103">103</a> of file <a class="el" href="_n_e_canny_edge_kernel_8h_source.xhtml">NECannyEdgeKernel.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a0b6679b5d5c7f7dc527258181b04cf35"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a0b6679b5d5c7f7dc527258181b04cf35">NEHarrisScoreFP16Kernel</a> =  <a class="el" href="classarm__compute_1_1_n_e_harris_score_kernel.xhtml">NEHarrisScoreKernel</a>&lt;block_size&gt;</td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-
-<p>Interface for the accumulate Weighted kernel using FP16. </p>
-
-<p>Definition at line <a class="el" href="_n_e_harris_corners_kernel_8h_source.xhtml#l00132">132</a> of file <a class="el" href="_n_e_harris_corners_kernel_8h_source.xhtml">NEHarrisCornersKernel.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a38cad49e6beaef76bc1ec5064c9e9dba"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5086,11 +5810,13 @@
 
 <p>NEON kernel to perform Non-Maxima suppression 3x3 with intermediate results in FP16 if the input data type is FP32. </p>
 
-<p>Definition at line <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8h_source.xhtml#l00105">105</a> of file <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8h_source.xhtml">NENonMaximaSuppression3x3Kernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8h_source.xhtml#l00105">105</a> of file <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8h_source.xhtml">NENonMaximaSuppression3x3Kernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a0604c803e41880a4a16408efc4e6a69b"></a>
+<a id="a0604c803e41880a4a16408efc4e6a69b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0604c803e41880a4a16408efc4e6a69b">&#9670;&nbsp;</a></span>NEScheduler</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5102,11 +5828,13 @@
 
 <p>NEON <a class="el" href="classarm__compute_1_1_scheduler.xhtml" title="Configurable scheduler which supports multiple multithreading APIs and choosing between different sch...">Scheduler</a>. </p>
 
-<p>Definition at line <a class="el" href="_n_e_scheduler_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_n_e_scheduler_8h_source.xhtml">NEScheduler.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_scheduler_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_n_e_scheduler_8h_source.xhtml">NEScheduler.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ac78a7593874c21cff86478c1ba6df27b"></a>
+<a id="ac78a7593874c21cff86478c1ba6df27b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac78a7593874c21cff86478c1ba6df27b">&#9670;&nbsp;</a></span>NESeparableConvolution5x5HorKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5118,11 +5846,13 @@
 
 <p>Interface for the kernel which applied a 5x1 horizontal convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00138">138</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00138">138</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ae4152320657df499674ed64b16c28a7b"></a>
+<a id="ae4152320657df499674ed64b16c28a7b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4152320657df499674ed64b16c28a7b">&#9670;&nbsp;</a></span>NESeparableConvolution5x5VertKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5134,11 +5864,13 @@
 
 <p>Interface for the kernel which applied a 1x5 vertical convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00198">198</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00198">198</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="aca4adbcd292c26b0e392c59875c1e926"></a>
+<a id="aca4adbcd292c26b0e392c59875c1e926"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca4adbcd292c26b0e392c59875c1e926">&#9670;&nbsp;</a></span>NESeparableConvolution7x7HorKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5150,11 +5882,13 @@
 
 <p>Interface for the kernel which applied a 7x1 horizontal convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00140">140</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00140">140</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a0f952bd0821b506e18514a3f4dbc6c39"></a>
+<a id="a0f952bd0821b506e18514a3f4dbc6c39"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0f952bd0821b506e18514a3f4dbc6c39">&#9670;&nbsp;</a></span>NESeparableConvolution7x7VertKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5166,11 +5900,13 @@
 
 <p>Interface for the kernel which applied a 1x7 vertical convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00200">200</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00200">200</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a4ba5f6b7cd6b70b75e42149f3bc08f38"></a>
+<a id="a4ba5f6b7cd6b70b75e42149f3bc08f38"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ba5f6b7cd6b70b75e42149f3bc08f38">&#9670;&nbsp;</a></span>NESeparableConvolution9x9HorKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5182,11 +5918,13 @@
 
 <p>Interface for the kernel which applied a 9x1 horizontal convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00142">142</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00142">142</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a6310d21f215fface41df4cde725a62b9"></a>
+<a id="a6310d21f215fface41df4cde725a62b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6310d21f215fface41df4cde725a62b9">&#9670;&nbsp;</a></span>NESeparableConvolution9x9VertKernel</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5198,11 +5936,49 @@
 
 <p>Interface for the kernel which applied a 1x9 vertical convolution to a tensor. </p>
 
-<p>Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00202">202</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00202">202</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a4467b302fc9ec312c40580336ab783da"></a>
+<a id="a669b5d3c5994f9ae3be31df9a1014297"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a669b5d3c5994f9ae3be31df9a1014297">&#9670;&nbsp;</a></span>PaddingInfo</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a669b5d3c5994f9ae3be31df9a1014297">PaddingInfo</a> =  std::pair&lt;uint32_t, uint32_t&gt;</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Padding information as a pair of unsigned int start/end. </p>
+
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00477">477</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="ac1a1b012674e0f1de071a611391828ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1a1b012674e0f1de071a611391828ad">&#9670;&nbsp;</a></span>PaddingList</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> =  std::vector&lt;<a class="el" href="namespacearm__compute.xhtml#a669b5d3c5994f9ae3be31df9a1014297">PaddingInfo</a>&gt;</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>List of padding information. </p>
+
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00480">480</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="a4467b302fc9ec312c40580336ab783da"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4467b302fc9ec312c40580336ab783da">&#9670;&nbsp;</a></span>PaddingSize</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5214,11 +5990,13 @@
 
 <p>Container for 2D padding size. </p>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00376">376</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00381">381</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a33e65be485104e2e9e69fca551d6f492"></a>
+<a id="a33e65be485104e2e9e69fca551d6f492"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33e65be485104e2e9e69fca551d6f492">&#9670;&nbsp;</a></span>PermutationVector</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5230,11 +6008,29 @@
 
 <p>Permutation vector. </p>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00047">47</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00047">47</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ab8938bcb3ec0f5f8d93285eb3a28b701"></a>
+<a id="a1e36f8a2df3d6bd1756b90e2efb151e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e36f8a2df3d6bd1756b90e2efb151e9">&#9670;&nbsp;</a></span>ptr_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a> =  T *</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00098">98</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab8938bcb3ec0f5f8d93285eb3a28b701"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab8938bcb3ec0f5f8d93285eb3a28b701">&#9670;&nbsp;</a></span>qasymm8_t</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5246,11 +6042,13 @@
 
 <p>8 bit quantized asymmetric scalar value </p>
 
-<p>Definition at line <a class="el" href="_q_asymm8_8h_source.xhtml#l00030">30</a> of file <a class="el" href="_q_asymm8_8h_source.xhtml">QAsymm8.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_q_asymm8_8h_source.xhtml#l00030">30</a> of file <a class="el" href="_q_asymm8_8h_source.xhtml">QAsymm8.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ac7e1832b8c58f07a98fc8d390b16ac27"></a>
+<a id="ac7e1832b8c58f07a98fc8d390b16ac27"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7e1832b8c58f07a98fc8d390b16ac27">&#9670;&nbsp;</a></span>qasymm8x16_t</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5262,11 +6060,13 @@
 
 <p>8 bit quantized asymmetric vector with 16 elements </p>
 
-<p>Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00035">35</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00035">35</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a70ecc99f2f6b646579b58463dc026671"></a>
+<a id="a70ecc99f2f6b646579b58463dc026671"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70ecc99f2f6b646579b58463dc026671">&#9670;&nbsp;</a></span>qasymm8x8_t</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5278,11 +6078,13 @@
 
 <p>8 bit quantized asymmetric vector with 8 elements </p>
 
-<p>Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00031">31</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00031">31</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a805d740633d70a5f0b019d72c517e67d"></a>
+<a id="a805d740633d70a5f0b019d72c517e67d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a805d740633d70a5f0b019d72c517e67d">&#9670;&nbsp;</a></span>qasymm8x8x2_t</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5294,11 +6096,13 @@
 
 <p>8 bit quantized asymmetric vector with 16 elements </p>
 
-<p>Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a0c6e16826765130b480af53eda3635be"></a>
+<a id="a0c6e16826765130b480af53eda3635be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c6e16826765130b480af53eda3635be">&#9670;&nbsp;</a></span>qasymm8x8x3_t</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5310,11 +6114,13 @@
 
 <p>8 bit quantized asymmetric vector with 24 elements </p>
 
-<p>Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00033">33</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00033">33</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a41d3460ff424e2e21c629b3f27386a8b"></a>
+<a id="a41d3460ff424e2e21c629b3f27386a8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41d3460ff424e2e21c629b3f27386a8b">&#9670;&nbsp;</a></span>qasymm8x8x4_t</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5326,11 +6132,13 @@
 
 <p>8 bit quantized asymmetric vector with 32 elements </p>
 
-<p>Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00034">34</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00034">34</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a35ae0858a604c4c0672ce857e8080ae4"></a>
+<a id="a35ae0858a604c4c0672ce857e8080ae4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a35ae0858a604c4c0672ce857e8080ae4">&#9670;&nbsp;</a></span>ROIArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5342,11 +6150,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of ROIs. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00071">71</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00071">71</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="abd445adaaca7913c9344c90dc8c76358"></a>
+<a id="abd445adaaca7913c9344c90dc8c76358"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd445adaaca7913c9344c90dc8c76358">&#9670;&nbsp;</a></span>Size2DArray</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5358,11 +6168,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of 2D Sizes. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00073">73</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00073">73</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="ab91cb2269b2e58ed2cb6bd2ca831d434"></a>
+<a id="ab91cb2269b2e58ed2cb6bd2ca831d434"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab91cb2269b2e58ed2cb6bd2ca831d434">&#9670;&nbsp;</a></span>UInt16Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5374,11 +6186,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint16s. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00077">77</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00077">77</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="acd6eb2619ccd5eee4963de3195785359"></a>
+<a id="acd6eb2619ccd5eee4963de3195785359"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acd6eb2619ccd5eee4963de3195785359">&#9670;&nbsp;</a></span>UInt32Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5390,11 +6204,13 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint32s. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00079">79</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00079">79</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a9dbb5e00a3f397691eb782f03f65375c"></a>
+<a id="a9dbb5e00a3f397691eb782f03f65375c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9dbb5e00a3f397691eb782f03f65375c">&#9670;&nbsp;</a></span>UInt8Array</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -5406,12 +6222,78 @@
 
 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of uint8s. </p>
 
-<p>Definition at line <a class="el" href="_array_8h_source.xhtml#l00075">75</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00075">75</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
+
+</div>
+</div>
+<a id="aef7a69b9cf4a1732d2be114b9b9bf3e3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef7a69b9cf4a1732d2be114b9b9bf3e3">&#9670;&nbsp;</a></span>vec_16_byte_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a> =  <a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a>&lt;T, 16&gt;</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00089">89</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab448de27f94cd38059b63980c3c08f40"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab448de27f94cd38059b63980c3c08f40">&#9670;&nbsp;</a></span>vec_8_byte_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a> =  <a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a>&lt;T, 8&gt;</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00092">92</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a5cd8407762d2446f8eceefcc4b63e537"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5cd8407762d2446f8eceefcc4b63e537">&#9670;&nbsp;</a></span>vec_n_byte_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a> =  <a class="el" href="namespacearm__compute.xhtml#a3fd0d641ff68bfe8475361a13de7b1cc">vec_n_t</a> &lt; T, N / sizeof(T) &gt;</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00086">86</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a3fd0d641ff68bfe8475361a13de7b1cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fd0d641ff68bfe8475361a13de7b1cc">&#9670;&nbsp;</a></span>vec_n_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a3fd0d641ff68bfe8475361a13de7b1cc">vec_n_t</a> =  typename vec_n_type&lt;T, N&gt;::type</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00083">83</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
 
 </div>
 </div>
 <h2 class="groupheader">Enumeration Type Documentation</h2>
-<a class="anchor" id="a2d8a00f1d80a53ce8f75fa929c873202"></a>
+<a id="a2d8a00f1d80a53ce8f75fa929c873202"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d8a00f1d80a53ce8f75fa929c873202">&#9670;&nbsp;</a></span>BilinearInterpolation</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5431,21 +6313,21 @@
 
 <p>Bilinear Interpolation method used by LKTracker. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532"></a>BILINEAR_OLD_NEW&#160;</td><td class="fielddoc">
-<p>Old-new method. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532"></a>BILINEAR_OLD_NEW&#160;</td><td class="fielddoc"><p>Old-new method. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64"></a>BILINEAR_SCHARR&#160;</td><td class="fielddoc">
-<p>Scharr method. </p>
+<tr><td class="fieldname"><a id="a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64"></a>BILINEAR_SCHARR&#160;</td><td class="fielddoc"><p>Scharr method. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00394">394</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;{</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532">BILINEAR_OLD_NEW</a>, </div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64">BILINEAR_SCHARR</a>   </div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532">arm_compute::BilinearInterpolation::BILINEAR_OLD_NEW</a></div><div class="ttdoc">Old-new method. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00399">399</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;{</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532">BILINEAR_OLD_NEW</a>, </div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64">BILINEAR_SCHARR</a>   </div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532">arm_compute::BilinearInterpolation::BILINEAR_OLD_NEW</a></div><div class="ttdoc">Old-new method. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64">arm_compute::BilinearInterpolation::BILINEAR_SCHARR</a></div><div class="ttdoc">Scharr method. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a15a05537a472ee742404821851529327"></a>
+<a id="a15a05537a472ee742404821851529327"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a15a05537a472ee742404821851529327">&#9670;&nbsp;</a></span>BorderMode</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5465,25 +6347,24 @@
 
 <p>Methods available to handle borders. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3"></a>UNDEFINED&#160;</td><td class="fielddoc">
-<p>Borders are left undefined. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3"></a>UNDEFINED&#160;</td><td class="fielddoc"><p>Borders are left undefined. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92"></a>CONSTANT&#160;</td><td class="fielddoc">
-<p>Pixels outside the image are assumed to have a constant value. </p>
+<tr><td class="fieldname"><a id="a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92"></a>CONSTANT&#160;</td><td class="fielddoc"><p>Pixels outside the image are assumed to have a constant value. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa"></a>REPLICATE&#160;</td><td class="fielddoc">
-<p>Pixels outside the image are assumed to have the same value as the closest image pixel. </p>
+<tr><td class="fieldname"><a id="a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa"></a>REPLICATE&#160;</td><td class="fielddoc"><p>Pixels outside the image are assumed to have the same value as the closest image pixel. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00281">281</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;{</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>, </div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">CONSTANT</a>,  </div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">REPLICATE</a>  </div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3"><div class="ttname"><a href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">arm_compute::BorderMode::UNDEFINED</a></div><div class="ttdoc">Borders are left undefined. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00286">286</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;{</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>, </div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">CONSTANT</a>,  </div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">REPLICATE</a>  </div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3"><div class="ttname"><a href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">arm_compute::BorderMode::UNDEFINED</a></div><div class="ttdoc">Borders are left undefined. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa"><div class="ttname"><a href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">arm_compute::BorderMode::REPLICATE</a></div><div class="ttdoc">Pixels outside the image are assumed to have the same value as the closest image pixel. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92"><div class="ttname"><a href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">arm_compute::BorderMode::CONSTANT</a></div><div class="ttdoc">Pixels outside the image are assumed to have a constant value. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455a"></a>
+<a id="a1ce9b523fd4f3b5bbcadcd796183455a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ce9b523fd4f3b5bbcadcd796183455a">&#9670;&nbsp;</a></span>Channel</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5503,46 +6384,34 @@
 
 <p>Available channels. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aa696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53"></a>C0&#160;</td><td class="fielddoc">
-<p>Unknown channel format. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53"></a>C0&#160;</td><td class="fielddoc"><p>Unknown channel format. </p>
 <p>First channel (used by formats with unknown channel types). </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1"></a>C1&#160;</td><td class="fielddoc">
-<p>Second channel (used by formats with unknown channel types). </p>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1"></a>C1&#160;</td><td class="fielddoc"><p>Second channel (used by formats with unknown channel types). </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4"></a>C2&#160;</td><td class="fielddoc">
-<p>Third channel (used by formats with unknown channel types). </p>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4"></a>C2&#160;</td><td class="fielddoc"><p>Third channel (used by formats with unknown channel types). </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c"></a>C3&#160;</td><td class="fielddoc">
-<p>Fourth channel (used by formats with unknown channel types). </p>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c"></a>C3&#160;</td><td class="fielddoc"><p>Fourth channel (used by formats with unknown channel types). </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6"></a>R&#160;</td><td class="fielddoc">
-<p>Red channel. </p>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6"></a>R&#160;</td><td class="fielddoc"><p>Red channel. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf"></a>G&#160;</td><td class="fielddoc">
-<p>Green channel. </p>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf"></a>G&#160;</td><td class="fielddoc"><p>Green channel. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571"></a>B&#160;</td><td class="fielddoc">
-<p>Blue channel. </p>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571"></a>B&#160;</td><td class="fielddoc"><p>Blue channel. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"></a>A&#160;</td><td class="fielddoc">
-<p>Alpha channel. </p>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"></a>A&#160;</td><td class="fielddoc"><p>Alpha channel. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0"></a>Y&#160;</td><td class="fielddoc">
-<p>Luma channel. </p>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0"></a>Y&#160;</td><td class="fielddoc"><p>Luma channel. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb"></a>U&#160;</td><td class="fielddoc">
-<p>Cb/U channel. </p>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb"></a>U&#160;</td><td class="fielddoc"><p>Cb/U channel. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce"></a>V&#160;</td><td class="fielddoc">
-<p>Cr/V/Value channel. </p>
+<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce"></a>V&#160;</td><td class="fielddoc"><p>Cr/V/Value channel. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00479">479</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;{</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, </div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53">C0</a>,      </div><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">C1</a>,      </div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4">C2</a>,      </div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c">C3</a>,      </div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>,       </div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>,       </div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>,       </div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>,       </div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>,       </div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>,       </div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>        </div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a></div><div class="ttdoc">Alpha channel. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00490">490</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;{</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, </div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53">C0</a>,      </div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">C1</a>,      </div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4">C2</a>,      </div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c">C3</a>,      </div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>,       </div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>,       </div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>,       </div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>,       </div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>,       </div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>,       </div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>        </div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a></div><div class="ttdoc">Alpha channel. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">arm_compute::Channel::C1</a></div><div class="ttdoc">Second channel (used by formats with unknown channel types). </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">arm_compute::Channel::V</a></div><div class="ttdoc">Cr/V/Value channel. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::Channel::B</a></div><div class="ttdoc">Blue channel. </div></div>
@@ -5557,7 +6426,9 @@
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a3a440b3893fa10608d4428958be1c52e"></a>
+<a id="a3a440b3893fa10608d4428958be1c52e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3a440b3893fa10608d4428958be1c52e">&#9670;&nbsp;</a></span>CLVersion</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5577,19 +6448,14 @@
 
 <p>Available OpenCL Version. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a"></a>CL10&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a3a440b3893fa10608d4428958be1c52ea80e95ed62d0c47e4d8c0696d467d4db3"></a>CL11&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675"></a>CL12&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab"></a>CL20&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc">
-</td></tr>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a"></a>CL10&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a3a440b3893fa10608d4428958be1c52ea80e95ed62d0c47e4d8c0696d467d4db3"></a>CL11&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675"></a>CL12&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab"></a>CL20&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"></td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="_c_l_types_8h_source.xhtml#l00037">37</a> of file <a class="el" href="_c_l_types_8h_source.xhtml">CLTypes.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_types_8h_source.xhtml#l00037">37</a> of file <a class="el" href="_c_l_types_8h_source.xhtml">CLTypes.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;{</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a">CL10</a>,   <span class="comment">/* the OpenCL 1.0 */</span></div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea80e95ed62d0c47e4d8c0696d467d4db3">CL11</a>,   <span class="comment">/* the OpenCL 1.1 */</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675">CL12</a>,   <span class="comment">/* the OpenCL 1.2 */</span></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab">CL20</a>,   <span class="comment">/* the OpenCL 2.0 and above */</span></div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a> <span class="comment">/* unkown version */</span></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab">arm_compute::CLVersion::CL20</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675">arm_compute::CLVersion::CL12</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a">arm_compute::CLVersion::CL10</a></div></div>
@@ -5598,7 +6464,9 @@
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a82b8ac759c804bc1fb4e2d21e178fb6f"></a>
+<a id="a82b8ac759c804bc1fb4e2d21e178fb6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a82b8ac759c804bc1fb4e2d21e178fb6f">&#9670;&nbsp;</a></span>ConvertPolicy</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5618,21 +6486,21 @@
 
 <p>Policy to handle overflow. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0"></a>WRAP&#160;</td><td class="fielddoc">
-<p>Wrap around. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0"></a>WRAP&#160;</td><td class="fielddoc"><p>Wrap around. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86"></a>SATURATE&#160;</td><td class="fielddoc">
-<p>Saturate. </p>
+<tr><td class="fieldname"><a id="a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86"></a>SATURATE&#160;</td><td class="fielddoc"><p>Saturate. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00379">379</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;{</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0">WRAP</a>,    </div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86">SATURATE</a> </div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0"><div class="ttname"><a href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0">arm_compute::ConvertPolicy::WRAP</a></div><div class="ttdoc">Wrap around. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00384">384</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;{</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0">WRAP</a>,    </div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86">SATURATE</a> </div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0"><div class="ttname"><a href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0">arm_compute::ConvertPolicy::WRAP</a></div><div class="ttdoc">Wrap around. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86"><div class="ttname"><a href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86">arm_compute::ConvertPolicy::SATURATE</a></div><div class="ttdoc">Saturate. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a683661ae75dcb7aef16b9c9bde31517d"></a>
+<a id="a683661ae75dcb7aef16b9c9bde31517d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a683661ae75dcb7aef16b9c9bde31517d">&#9670;&nbsp;</a></span>ConvolutionMethod</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5652,25 +6520,24 @@
 
 <p>Available ConvolutionMethod. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3"></a>GEMM&#160;</td><td class="fielddoc">
-<p>Convolution using GEMM. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3"></a>GEMM&#160;</td><td class="fielddoc"><p>Convolution using GEMM. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76"></a>DIRECT&#160;</td><td class="fielddoc">
-<p>Direct convolution. </p>
+<tr><td class="fieldname"><a id="a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76"></a>DIRECT&#160;</td><td class="fielddoc"><p>Direct convolution. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8"></a>WINOGRAD&#160;</td><td class="fielddoc">
-<p>Convolution using Winograd. </p>
+<tr><td class="fieldname"><a id="a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8"></a>WINOGRAD&#160;</td><td class="fielddoc"><p>Convolution using Winograd. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01304">1304</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>&#160;{</div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3">GEMM</a>,    </div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">DIRECT</a>,  </div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8">WINOGRAD</a> </div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76"><div class="ttname"><a href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">arm_compute::ConvolutionMethod::DIRECT</a></div><div class="ttdoc">Direct convolution. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01792">1792</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160;{</div><div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3">GEMM</a>,    </div><div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">DIRECT</a>,  </div><div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8">WINOGRAD</a> </div><div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76"><div class="ttname"><a href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">arm_compute::ConvolutionMethod::DIRECT</a></div><div class="ttdoc">Direct convolution. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8"><div class="ttname"><a href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8">arm_compute::ConvolutionMethod::WINOGRAD</a></div><div class="ttdoc">Convolution using Winograd. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3"><div class="ttname"><a href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3">arm_compute::ConvolutionMethod::GEMM</a></div><div class="ttdoc">Convolution using GEMM. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa41d7415a5386798147cccae2333d5d4"></a>
+<a id="aa41d7415a5386798147cccae2333d5d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa41d7415a5386798147cccae2333d5d4">&#9670;&nbsp;</a></span>CPUModel</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5691,22 +6558,16 @@
 <p>CPU models - we only need to detect CPUs we have microarchitecture-specific code for. </p>
 <p>Architecture features are detected via HWCAPs. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b"></a>GENERIC&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8"></a>GENERIC_FP16&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7"></a>GENERIC_FP16_DOT&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d"></a>A53&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92"></a>A55r0&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca"></a>A55r1&#160;</td><td class="fielddoc">
-</td></tr>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b"></a>GENERIC&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8"></a>GENERIC_FP16&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7"></a>GENERIC_FP16_DOT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d"></a>A53&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92"></a>A55r0&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca"></a>A55r1&#160;</td><td class="fielddoc"></td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="_c_p_p_types_8h_source.xhtml#l00036">36</a> of file <a class="el" href="_c_p_p_types_8h_source.xhtml">CPPTypes.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;{</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>,</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">GENERIC_FP16</a>,</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">GENERIC_FP16_DOT</a>,</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">A53</a>,</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">A55r0</a>,</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca">A55r1</a></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">arm_compute::CPUModel::GENERIC_FP16_DOT</a></div></div>
+<p class="definition">Definition at line <a class="el" href="_c_p_p_types_8h_source.xhtml#l00040">40</a> of file <a class="el" href="_c_p_p_types_8h_source.xhtml">CPPTypes.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;{</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>,</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">GENERIC_FP16</a>,</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">GENERIC_FP16_DOT</a>,</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">A53</a>,</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">A55r0</a>,</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca">A55r1</a></div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">arm_compute::CPUModel::GENERIC_FP16_DOT</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">arm_compute::CPUModel::A53</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">arm_compute::CPUModel::A55r0</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">arm_compute::CPUModel::GENERIC_FP16</a></div></div>
@@ -5715,7 +6576,9 @@
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad1d5cce2d9e9a5d61c243e5c989112e0"></a>
+<a id="ad1d5cce2d9e9a5d61c243e5c989112e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad1d5cce2d9e9a5d61c243e5c989112e0">&#9670;&nbsp;</a></span>DataLayout</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5733,27 +6596,27 @@
 </table>
 </div><div class="memdoc">
 
-<p>Supported tensor data layouts. </p>
+<p>[DataLayout enum definition] </p>
+<p>Supported tensor data layouts </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ad1d5cce2d9e9a5d61c243e5c989112e0a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc">
-<p>Unknown data layout. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad1d5cce2d9e9a5d61c243e5c989112e0a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"><p>Unknown data layout. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"></a>NCHW&#160;</td><td class="fielddoc">
-<p>Num samples, channels, height, width. </p>
+<tr><td class="fieldname"><a id="ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"></a>NCHW&#160;</td><td class="fielddoc"><p>Num samples, channels, height, width. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51"></a>NHWC&#160;</td><td class="fielddoc">
-<p>Num samples, height, width, channels. </p>
+<tr><td class="fieldname"><a id="ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51"></a>NHWC&#160;</td><td class="fielddoc"><p>Num samples, height, width, channels. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00107">107</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;{</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, </div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>,    </div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>     </div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">arm_compute::DataLayout::NCHW</a></div><div class="ttdoc">Num samples, channels, height, width. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00111">111</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;{</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, </div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>,    </div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>     </div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">arm_compute::DataLayout::NCHW</a></div><div class="ttdoc">Num samples, channels, height, width. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::CLVersion::UNKNOWN</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">arm_compute::DataLayout::NHWC</a></div><div class="ttdoc">Num samples, height, width, channels. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a74ce3f7420453d3446218ff3b7453e02"></a>
+<a id="a74ce3f7420453d3446218ff3b7453e02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74ce3f7420453d3446218ff3b7453e02">&#9670;&nbsp;</a></span>DataLayoutDimension</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5771,31 +6634,30 @@
 </table>
 </div><div class="memdoc">
 
-<p>Supported tensor data layout dimensions. </p>
+<p>[DataLayout enum definition] </p>
+<p>Supported tensor data layout dimensions </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229"></a>CHANNEL&#160;</td><td class="fielddoc">
-<p>channel </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229"></a>CHANNEL&#160;</td><td class="fielddoc"><p>channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6"></a>HEIGHT&#160;</td><td class="fielddoc">
-<p>height </p>
+<tr><td class="fieldname"><a id="a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6"></a>HEIGHT&#160;</td><td class="fielddoc"><p>height </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195"></a>WIDTH&#160;</td><td class="fielddoc">
-<p>width </p>
+<tr><td class="fieldname"><a id="a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195"></a>WIDTH&#160;</td><td class="fielddoc"><p>width </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a"></a>BATCHES&#160;</td><td class="fielddoc">
-<p>batches </p>
+<tr><td class="fieldname"><a id="a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a"></a>BATCHES&#160;</td><td class="fielddoc"><p>batches </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00115">115</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;{</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, </div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>,  </div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>,   </div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a>  </div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6"><div class="ttname"><a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">arm_compute::DataLayoutDimension::HEIGHT</a></div><div class="ttdoc">height </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00120">120</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;{</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, </div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>,  </div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>,   </div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a>  </div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6"><div class="ttname"><a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">arm_compute::DataLayoutDimension::HEIGHT</a></div><div class="ttdoc">height </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229"><div class="ttname"><a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">arm_compute::DataLayoutDimension::CHANNEL</a></div><div class="ttdoc">channel </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a"><div class="ttname"><a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">arm_compute::DataLayoutDimension::BATCHES</a></div><div class="ttdoc">batches </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195"><div class="ttname"><a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">arm_compute::DataLayoutDimension::WIDTH</a></div><div class="ttdoc">width </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6"></a>
+<a id="ad8ed01ff3ff33333d8e19db4d2818bb6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8ed01ff3ff33333d8e19db4d2818bb6">&#9670;&nbsp;</a></span>DataType</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5815,52 +6677,38 @@
 
 <p>Available data types. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc">
-<p>Unknown data type. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"><p>Unknown data type. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6a6669348b484e3008dca2bfa8e85e40b5"></a>U8&#160;</td><td class="fielddoc">
-<p>unsigned 8-bit number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a6669348b484e3008dca2bfa8e85e40b5"></a>U8&#160;</td><td class="fielddoc"><p>unsigned 8-bit number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975"></a>S8&#160;</td><td class="fielddoc">
-<p>signed 8-bit number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975"></a>S8&#160;</td><td class="fielddoc"><p>signed 8-bit number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924"></a>QASYMM8&#160;</td><td class="fielddoc">
-<p>quantized, asymmetric fixed-point 8-bit number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924"></a>QASYMM8&#160;</td><td class="fielddoc"><p>quantized, asymmetric fixed-point 8-bit number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6aef9ef3ebca4d2b64b6ec83808bafa5f2"></a>U16&#160;</td><td class="fielddoc">
-<p>unsigned 16-bit number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6aef9ef3ebca4d2b64b6ec83808bafa5f2"></a>U16&#160;</td><td class="fielddoc"><p>unsigned 16-bit number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6a6e0b0886efb94aec797f6b830329b72c"></a>S16&#160;</td><td class="fielddoc">
-<p>signed 16-bit number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a6e0b0886efb94aec797f6b830329b72c"></a>S16&#160;</td><td class="fielddoc"><p>signed 16-bit number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6ac8bd5bedff8ef192d39a962afc0e19ee"></a>U32&#160;</td><td class="fielddoc">
-<p>unsigned 32-bit number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6ac8bd5bedff8ef192d39a962afc0e19ee"></a>U32&#160;</td><td class="fielddoc"><p>unsigned 32-bit number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6aa1e28eee0339658d39a8b4d325b56e9c"></a>S32&#160;</td><td class="fielddoc">
-<p>signed 32-bit number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6aa1e28eee0339658d39a8b4d325b56e9c"></a>S32&#160;</td><td class="fielddoc"><p>signed 32-bit number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa"></a>U64&#160;</td><td class="fielddoc">
-<p>unsigned 64-bit number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa"></a>U64&#160;</td><td class="fielddoc"><p>unsigned 64-bit number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc"></a>S64&#160;</td><td class="fielddoc">
-<p>signed 64-bit number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc"></a>S64&#160;</td><td class="fielddoc"><p>signed 64-bit number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6a56d8353718e6fdc78b8d69078a2cdb94"></a>F16&#160;</td><td class="fielddoc">
-<p>16-bit floating-point number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a56d8353718e6fdc78b8d69078a2cdb94"></a>F16&#160;</td><td class="fielddoc"><p>16-bit floating-point number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6a44ad4ef5a76e6aa6fb3e3fa079a54fda"></a>F32&#160;</td><td class="fielddoc">
-<p>32-bit floating-point number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a44ad4ef5a76e6aa6fb3e3fa079a54fda"></a>F32&#160;</td><td class="fielddoc"><p>32-bit floating-point number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e"></a>F64&#160;</td><td class="fielddoc">
-<p>64-bit floating-point number </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e"></a>F64&#160;</td><td class="fielddoc"><p>64-bit floating-point number </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1"></a>SIZET&#160;</td><td class="fielddoc">
-<p>size_t </p>
+<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1"></a>SIZET&#160;</td><td class="fielddoc"><p>size_t </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00072">72</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;{</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, </div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>,      </div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>,      </div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, </div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>,     </div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>,     </div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>,     </div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>,     </div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>,     </div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>,     </div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>,     </div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>,     </div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>,     </div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>    </div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">arm_compute::Format::U8</a></div><div class="ttdoc">1 channel, 1 U8 per channel </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00074">74</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;{</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, </div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>,      </div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>,      </div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, </div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>,     </div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>,     </div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>,     </div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>,     </div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>,     </div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>,     </div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>,     </div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>,     </div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>,     </div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>    </div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">arm_compute::Format::U8</a></div><div class="ttdoc">1 channel, 1 U8 per channel </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">arm_compute::Format::F32</a></div><div class="ttdoc">1 channel, 1 F32 per channel </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">arm_compute::Format::U16</a></div><div class="ttdoc">1 channel, 1 U16 per channel </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">arm_compute::Format::F16</a></div><div class="ttdoc">1 channel, 1 F16 per channel </div></div>
@@ -5877,7 +6725,9 @@
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1fece1bd804e64f39f602d1c3969849a"></a>
+<a id="a1fece1bd804e64f39f602d1c3969849a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1fece1bd804e64f39f602d1c3969849a">&#9670;&nbsp;</a></span>DimensionRoundingType</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5898,21 +6748,21 @@
 <p>Dimension rounding type when down-scaling on CNNs. </p>
 <dl class="section note"><dt>Note</dt><dd>Used in pooling and convolution layer </dd></dl>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe"></a>FLOOR&#160;</td><td class="fielddoc">
-<p>Floor rounding. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe"></a>FLOOR&#160;</td><td class="fielddoc"><p>Floor rounding. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff"></a>CEIL&#160;</td><td class="fielddoc">
-<p>Ceil rounding. </p>
+<tr><td class="fieldname"><a id="a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff"></a>CEIL&#160;</td><td class="fielddoc"><p>Ceil rounding. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00554">554</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;{</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe">FLOOR</a>, </div><div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">CEIL</a>   </div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff"><div class="ttname"><a href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">arm_compute::DimensionRoundingType::CEIL</a></div><div class="ttdoc">Ceil rounding. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00566">566</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;{</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe">FLOOR</a>, </div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">CEIL</a>   </div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff"><div class="ttname"><a href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">arm_compute::DimensionRoundingType::CEIL</a></div><div class="ttdoc">Ceil rounding. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe"><div class="ttname"><a href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe">arm_compute::DimensionRoundingType::FLOOR</a></div><div class="ttdoc">Floor rounding. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a59e56af19e754a6aa26a612ebf91d05f"></a>
+<a id="a59e56af19e754a6aa26a612ebf91d05f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59e56af19e754a6aa26a612ebf91d05f">&#9670;&nbsp;</a></span>ErrorCode</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5932,25 +6782,24 @@
 
 <p>Available error codes. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564"></a>OK&#160;</td><td class="fielddoc">
-<p>No error. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564"></a>OK&#160;</td><td class="fielddoc"><p>No error. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579"></a>RUNTIME_ERROR&#160;</td><td class="fielddoc">
-<p>Generic runtime error. </p>
+<tr><td class="fieldname"><a id="a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579"></a>RUNTIME_ERROR&#160;</td><td class="fielddoc"><p>Generic runtime error. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7"></a>UNSUPPORTED_EXTENSION_USE&#160;</td><td class="fielddoc">
-<p>Unsupported extension used. </p>
+<tr><td class="fieldname"><a id="a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7"></a>UNSUPPORTED_EXTENSION_USE&#160;</td><td class="fielddoc"><p>Unsupported extension used. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="_error_8h_source.xhtml#l00044">44</a> of file <a class="el" href="_error_8h_source.xhtml">Error.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_error_8h_source.xhtml#l00044">44</a> of file <a class="el" href="_error_8h_source.xhtml">Error.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;{</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564">OK</a>,                       </div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579">RUNTIME_ERROR</a>,            </div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">UNSUPPORTED_EXTENSION_USE</a> </div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7"><div class="ttname"><a href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">arm_compute::ErrorCode::UNSUPPORTED_EXTENSION_USE</a></div><div class="ttdoc">Unsupported extension used. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564"><div class="ttname"><a href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564">arm_compute::ErrorCode::OK</a></div><div class="ttdoc">No error. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579"><div class="ttname"><a href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579">arm_compute::ErrorCode::RUNTIME_ERROR</a></div><div class="ttdoc">Generic runtime error. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58"></a>
+<a id="ab4e88c89b3b7ea1735996cc4def22d58"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4e88c89b3b7ea1735996cc4def22d58">&#9670;&nbsp;</a></span>Format</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -5970,61 +6819,44 @@
 
 <p><a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a> colour formats. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc">
-<p>Unknown image format. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"><p>Unknown image format. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5"></a>U8&#160;</td><td class="fielddoc">
-<p>1 channel, 1 U8 per channel </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5"></a>U8&#160;</td><td class="fielddoc"><p>1 channel, 1 U8 per channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c"></a>S16&#160;</td><td class="fielddoc">
-<p>1 channel, 1 S16 per channel </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c"></a>S16&#160;</td><td class="fielddoc"><p>1 channel, 1 S16 per channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2"></a>U16&#160;</td><td class="fielddoc">
-<p>1 channel, 1 U16 per channel </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2"></a>U16&#160;</td><td class="fielddoc"><p>1 channel, 1 U16 per channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c"></a>S32&#160;</td><td class="fielddoc">
-<p>1 channel, 1 S32 per channel </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c"></a>S32&#160;</td><td class="fielddoc"><p>1 channel, 1 S32 per channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee"></a>U32&#160;</td><td class="fielddoc">
-<p>1 channel, 1 U32 per channel </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee"></a>U32&#160;</td><td class="fielddoc"><p>1 channel, 1 U32 per channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94"></a>F16&#160;</td><td class="fielddoc">
-<p>1 channel, 1 F16 per channel </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94"></a>F16&#160;</td><td class="fielddoc"><p>1 channel, 1 F16 per channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda"></a>F32&#160;</td><td class="fielddoc">
-<p>1 channel, 1 F32 per channel </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda"></a>F32&#160;</td><td class="fielddoc"><p>1 channel, 1 F32 per channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825"></a>UV88&#160;</td><td class="fielddoc">
-<p>2 channel, 1 U8 per channel </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825"></a>UV88&#160;</td><td class="fielddoc"><p>2 channel, 1 U8 per channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0"></a>RGB888&#160;</td><td class="fielddoc">
-<p>3 channels, 1 U8 per channel </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0"></a>RGB888&#160;</td><td class="fielddoc"><p>3 channels, 1 U8 per channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619"></a>RGBA8888&#160;</td><td class="fielddoc">
-<p>4 channels, 1 U8 per channel </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619"></a>RGBA8888&#160;</td><td class="fielddoc"><p>4 channels, 1 U8 per channel </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c"></a>YUV444&#160;</td><td class="fielddoc">
-<p>A 3 plane of 8 bit 4:4:4 sampled Y, U, V planes. </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c"></a>YUV444&#160;</td><td class="fielddoc"><p>A 3 plane of 8 bit 4:4:4 sampled Y, U, V planes. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164"></a>YUYV422&#160;</td><td class="fielddoc">
-<p>A single plane of 32-bit macro pixel of Y0, U0, Y1, V0 bytes. </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164"></a>YUYV422&#160;</td><td class="fielddoc"><p>A single plane of 32-bit macro pixel of Y0, U0, Y1, V0 bytes. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755"></a>NV12&#160;</td><td class="fielddoc">
-<p>A 2 plane YUV format of Luma (Y) and interleaved UV data at 4:2:0 sampling. </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755"></a>NV12&#160;</td><td class="fielddoc"><p>A 2 plane YUV format of Luma (Y) and interleaved UV data at 4:2:0 sampling. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4"></a>NV21&#160;</td><td class="fielddoc">
-<p>A 2 plane YUV format of Luma (Y) and interleaved VU data at 4:2:0 sampling. </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4"></a>NV21&#160;</td><td class="fielddoc"><p>A 2 plane YUV format of Luma (Y) and interleaved VU data at 4:2:0 sampling. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778"></a>IYUV&#160;</td><td class="fielddoc">
-<p>A 3 plane of 8-bit 4:2:0 sampled Y, U, V planes. </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778"></a>IYUV&#160;</td><td class="fielddoc"><p>A 3 plane of 8-bit 4:2:0 sampled Y, U, V planes. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa"></a>UYVY422&#160;</td><td class="fielddoc">
-<p>A single plane of 32-bit macro pixel of U0, Y0, V0, Y1 byte. </p>
+<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa"></a>UYVY422&#160;</td><td class="fielddoc"><p>A single plane of 32-bit macro pixel of U0, Y0, V0, Y1 byte. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00050">50</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;{</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>,  </div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>,       </div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>,      </div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>,      </div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>,      </div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>,      </div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>,      </div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>,      </div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>,     </div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>,   </div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, </div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>,   </div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>,  </div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>,     </div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>,     </div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>,     </div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>   </div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">arm_compute::Format::UYVY422</a></div><div class="ttdoc">A single plane of 32-bit macro pixel of U0, Y0, V0, Y1 byte. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00052">52</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;{</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>,  </div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>,       </div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>,      </div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>,      </div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>,      </div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>,      </div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>,      </div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>,      </div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>,     </div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>,   </div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, </div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>,   </div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>,  </div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>,     </div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>,     </div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>,     </div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>   </div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">arm_compute::Format::UYVY422</a></div><div class="ttdoc">A single plane of 32-bit macro pixel of U0, Y0, V0, Y1 byte. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">arm_compute::Format::U8</a></div><div class="ttdoc">1 channel, 1 U8 per channel </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">arm_compute::Format::F32</a></div><div class="ttdoc">1 channel, 1 F32 per channel </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">arm_compute::Format::NV12</a></div><div class="ttdoc">A 2 plane YUV format of Luma (Y) and interleaved UV data at 4:2:0 sampling. </div></div>
@@ -6044,7 +6876,49 @@
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a735ac6c2a02e320969625308810444f3"></a>
+<a id="a5558e2cc22f7f4771653d992c8ad8864"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5558e2cc22f7f4771653d992c8ad8864">&#9670;&nbsp;</a></span>GEMMLowpOutputStageType</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864">GEMMLowpOutputStageType</a></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>GEMMLowp output stage type. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693"></a>NONE&#160;</td><td class="fielddoc"><p>No quantization to uint8. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b"></a>QUANTIZE_DOWN&#160;</td><td class="fielddoc"><p>Quantize to uint8 using an integer multiplication. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca"></a>QUANTIZE_DOWN_FIXEDPOINT&#160;</td><td class="fielddoc"><p>Quantize to uint8 using a fixed point multiplication. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c"></a>QUANTIZE_DOWN_FLOAT&#160;</td><td class="fielddoc"><p>Quantize to uint8 using a floating point multiplication. </p>
+</td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01580">1580</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160;{</div><div class="line"><a name="l01582"></a><span class="lineno"> 1582</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693">NONE</a>,                     </div><div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b">QUANTIZE_DOWN</a>,            </div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca">QUANTIZE_DOWN_FIXEDPOINT</a>, </div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c">QUANTIZE_DOWN_FLOAT</a>       </div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca"><div class="ttname"><a href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca">arm_compute::GEMMLowpOutputStageType::QUANTIZE_DOWN_FIXEDPOINT</a></div><div class="ttdoc">Quantize to uint8 using a fixed point multiplication. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693"><div class="ttname"><a href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693">arm_compute::GEMMLowpOutputStageType::NONE</a></div><div class="ttdoc">No quantization to uint8. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c"><div class="ttname"><a href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c">arm_compute::GEMMLowpOutputStageType::QUANTIZE_DOWN_FLOAT</a></div><div class="ttdoc">Quantize to uint8 using a floating point multiplication. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b"><div class="ttname"><a href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b">arm_compute::GEMMLowpOutputStageType::QUANTIZE_DOWN</a></div><div class="ttdoc">Quantize to uint8 using an integer multiplication. </div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a735ac6c2a02e320969625308810444f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a735ac6c2a02e320969625308810444f3">&#9670;&nbsp;</a></span>GPUTarget</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6064,40 +6938,28 @@
 
 <p>Available GPU Targets. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82"></a>GPU_ARCH_MASK&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38"></a>MIDGARD&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e"></a>BIFROST&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673"></a>T600&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd"></a>T700&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048"></a>T800&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6"></a>G71&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc"></a>G72&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0"></a>G51&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988"></a>G51BIG&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f"></a>G51LIT&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d"></a>G76&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4"></a>TTRX&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc"></a>TBOX&#160;</td><td class="fielddoc">
-</td></tr>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82"></a>GPU_ARCH_MASK&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38"></a>MIDGARD&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e"></a>BIFROST&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673"></a>T600&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd"></a>T700&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048"></a>T800&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6"></a>G71&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc"></a>G72&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0"></a>G51&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988"></a>G51BIG&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f"></a>G51LIT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb"></a>G52&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837"></a>G52LIT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d"></a>G76&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4"></a>TTRX&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc"></a>TBOX&#160;</td><td class="fielddoc"></td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="_g_p_u_target_8h_source.xhtml#l00034">34</a> of file <a class="el" href="_g_p_u_target_8h_source.xhtml">GPUTarget.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>       = 0x101,</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82">GPU_ARCH_MASK</a> = 0xF00,</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a>       = 0x100,</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a>       = 0x200,</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673">T600</a>          = 0x110,</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">T700</a>          = 0x120,</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048">T800</a>          = 0x130,</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">G71</a>           = 0x210,</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc">G72</a>           = 0x220,</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">G51</a>           = 0x230,</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">G51BIG</a>        = 0x231,</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">G51LIT</a>        = 0x232,</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a>           = 0x240,</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a>          = 0x250,</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a>          = 0x260</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">arm_compute::GPUTarget::G76</a></div></div>
+<p class="definition">Definition at line <a class="el" href="_g_p_u_target_8h_source.xhtml#l00034">34</a> of file <a class="el" href="_g_p_u_target_8h_source.xhtml">GPUTarget.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>       = 0x101,</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82">GPU_ARCH_MASK</a> = 0xF00,</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a>       = 0x100,</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a>       = 0x200,</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673">T600</a>          = 0x110,</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">T700</a>          = 0x120,</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048">T800</a>          = 0x130,</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">G71</a>           = 0x210,</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc">G72</a>           = 0x220,</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">G51</a>           = 0x230,</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">G51BIG</a>        = 0x231,</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">G51LIT</a>        = 0x232,</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb">G52</a>           = 0x240,</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837">G52LIT</a>        = 0x241,</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a>           = 0x250,</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a>          = 0x260,</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a>          = 0x270</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">arm_compute::GPUTarget::G76</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837">arm_compute::GPUTarget::G52LIT</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">arm_compute::GPUTarget::G71</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">arm_compute::GPUTarget::T700</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">arm_compute::GPUTarget::G51LIT</a></div></div>
@@ -6111,11 +6973,14 @@
 <div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">arm_compute::GPUTarget::TTRX</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">arm_compute::GPUTarget::G51BIG</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">arm_compute::GPUTarget::BIFROST</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb">arm_compute::GPUTarget::G52</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">arm_compute::GPUTarget::G51</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ae46abc5ecac309cbece5c06cb80daaf7"></a>
+<a id="ae46abc5ecac309cbece5c06cb80daaf7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae46abc5ecac309cbece5c06cb80daaf7">&#9670;&nbsp;</a></span>GradientDimension</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6135,17 +7000,18 @@
 
 <p>Gradient dimension type. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc"></a>GRAD_XY&#160;</td><td class="fielddoc">
-<p>x and y gradient dimension </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc"></a>GRAD_XY&#160;</td><td class="fielddoc"><p>x and y gradient dimension </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="tests_2_types_8h_source.xhtml#l00034">34</a> of file <a class="el" href="tests_2_types_8h_source.xhtml">Types.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="tests_2_types_8h_source.xhtml#l00034">34</a> of file <a class="el" href="tests_2_types_8h_source.xhtml">Types.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    GRAD_X,  </div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    GRAD_Y,  </div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc">GRAD_XY</a>, </div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc"><div class="ttname"><a href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc">arm_compute::GradientDimension::GRAD_XY</a></div><div class="ttdoc">x and y gradient dimension </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a673665b4587a2956fcbad5f0e9ba89d3"></a>
+<a id="a673665b4587a2956fcbad5f0e9ba89d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a673665b4587a2956fcbad5f0e9ba89d3">&#9670;&nbsp;</a></span>HOGNormType</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6165,25 +7031,24 @@
 
 <p>Normalization type for Histogram of Oriented Gradients (<a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object. ">HOG</a>) </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5"></a>L2_NORM&#160;</td><td class="fielddoc">
-<p>L2-norm. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5"></a>L2_NORM&#160;</td><td class="fielddoc"><p>L2-norm. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2"></a>L2HYS_NORM&#160;</td><td class="fielddoc">
-<p>L2-norm followed by clipping. </p>
+<tr><td class="fieldname"><a id="a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2"></a>L2HYS_NORM&#160;</td><td class="fielddoc"><p>L2-norm followed by clipping. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa"></a>L1_NORM&#160;</td><td class="fielddoc">
-<p>L1 norm. </p>
+<tr><td class="fieldname"><a id="a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa"></a>L1_NORM&#160;</td><td class="fielddoc"><p>L1 norm. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00528">528</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><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;    <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5">L2_NORM</a>    = 1, </div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">L2HYS_NORM</a> = 2, </div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa">L1_NORM</a>    = 3  </div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">arm_compute::HOGNormType::L2HYS_NORM</a></div><div class="ttdoc">L2-norm followed by clipping. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00540">540</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;{</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5">L2_NORM</a>    = 1, </div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">L2HYS_NORM</a> = 2, </div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa">L1_NORM</a>    = 3  </div><div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">arm_compute::HOGNormType::L2HYS_NORM</a></div><div class="ttdoc">L2-norm followed by clipping. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa"><div class="ttname"><a href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa">arm_compute::HOGNormType::L1_NORM</a></div><div class="ttdoc">L1 norm. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5"><div class="ttname"><a href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5">arm_compute::HOGNormType::L2_NORM</a></div><div class="ttdoc">L2-norm. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a966a9c417ce5e94dca08d9b5e745c0c9"></a>
+<a id="a966a9c417ce5e94dca08d9b5e745c0c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a966a9c417ce5e94dca08d9b5e745c0c9">&#9670;&nbsp;</a></span>InterpolationPolicy</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6203,25 +7068,24 @@
 
 <p>Interpolation method. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2"></a>NEAREST_NEIGHBOR&#160;</td><td class="fielddoc">
-<p>Output values are defined to match the source pixel whose center is nearest to the sample position. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2"></a>NEAREST_NEIGHBOR&#160;</td><td class="fielddoc"><p>Output values are defined to match the source pixel whose center is nearest to the sample position. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65"></a>BILINEAR&#160;</td><td class="fielddoc">
-<p>Output values are defined by bilinear interpolation between the pixels. </p>
+<tr><td class="fieldname"><a id="a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65"></a>BILINEAR&#160;</td><td class="fielddoc"><p>Output values are defined by bilinear interpolation between the pixels. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4"></a>AREA&#160;</td><td class="fielddoc">
-<p>Output values are determined by averaging the source pixels whose areas fall under the area of the destination pixel, projected onto the source image. </p>
+<tr><td class="fieldname"><a id="a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4"></a>AREA&#160;</td><td class="fielddoc"><p>Output values are determined by averaging the source pixels whose areas fall under the area of the destination pixel, projected onto the source image. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00386">386</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;{</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>, </div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>,         </div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>,             </div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65"><div class="ttname"><a href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">arm_compute::InterpolationPolicy::BILINEAR</a></div><div class="ttdoc">Output values are defined by bilinear interpolation between the pixels. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00391">391</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;{</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>, </div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>,         </div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>,             </div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65"><div class="ttname"><a href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">arm_compute::InterpolationPolicy::BILINEAR</a></div><div class="ttdoc">Output values are defined by bilinear interpolation between the pixels. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2"><div class="ttname"><a href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">arm_compute::InterpolationPolicy::NEAREST_NEIGHBOR</a></div><div class="ttdoc">Output values are defined to match the source pixel whose center is nearest to the sample position...</div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4"><div class="ttname"><a href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">arm_compute::InterpolationPolicy::AREA</a></div><div class="ttdoc">Output values are determined by averaging the source pixels whose areas fall under the area of the de...</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a7b3ec6413f000b02fdb4e39a951d9f8a"></a>
+<a id="a7b3ec6413f000b02fdb4e39a951d9f8a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7b3ec6413f000b02fdb4e39a951d9f8a">&#9670;&nbsp;</a></span>MagnitudeType</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6241,21 +7105,21 @@
 
 <p>Magnitude calculation type. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8"></a>L1NORM&#160;</td><td class="fielddoc">
-<p>L1 normalization type. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8"></a>L1NORM&#160;</td><td class="fielddoc"><p>L1 normalization type. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131"></a>L2NORM&#160;</td><td class="fielddoc">
-<p>L2 normalization type. </p>
+<tr><td class="fieldname"><a id="a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131"></a>L2NORM&#160;</td><td class="fielddoc"><p>L2 normalization type. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00416">416</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;{</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8">L1NORM</a>, </div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131">L2NORM</a>  </div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8"><div class="ttname"><a href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8">arm_compute::MagnitudeType::L1NORM</a></div><div class="ttdoc">L1 normalization type. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00421">421</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;{</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8">L1NORM</a>, </div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131">L2NORM</a>  </div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8"><div class="ttname"><a href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8">arm_compute::MagnitudeType::L1NORM</a></div><div class="ttdoc">L1 normalization type. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131"><div class="ttname"><a href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131">arm_compute::MagnitudeType::L2NORM</a></div><div class="ttdoc">L2 normalization type. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="af0a4d6be70322c742c12da1edccbb74d"></a>
+<a id="af0a4d6be70322c742c12da1edccbb74d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af0a4d6be70322c742c12da1edccbb74d">&#9670;&nbsp;</a></span>MappingType</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6275,21 +7139,21 @@
 
 <p>Mapping type. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e"></a>BLOBS&#160;</td><td class="fielddoc">
-<p>Mappings are in blob granularity. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e"></a>BLOBS&#160;</td><td class="fielddoc"><p>Mappings are in blob granularity. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073"></a>OFFSETS&#160;</td><td class="fielddoc">
-<p>Mappings are in offset granularity in the same blob. </p>
+<tr><td class="fieldname"><a id="af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073"></a>OFFSETS&#160;</td><td class="fielddoc"><p>Mappings are in offset granularity in the same blob. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml#l00032">32</a> of file <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;{</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e">BLOBS</a>,  </div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073">OFFSETS</a> </div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e"><div class="ttname"><a href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e">arm_compute::MappingType::BLOBS</a></div><div class="ttdoc">Mappings are in blob granularity. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml#l00034">34</a> of file <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e">BLOBS</a>,  </div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073">OFFSETS</a> </div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e"><div class="ttname"><a href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e">arm_compute::MappingType::BLOBS</a></div><div class="ttdoc">Mappings are in blob granularity. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073"><div class="ttname"><a href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073">arm_compute::MappingType::OFFSETS</a></div><div class="ttdoc">Mappings are in offset granularity in the same blob. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afdda916edc7502967bbec17ea3c06c02"></a>
+<a id="afdda916edc7502967bbec17ea3c06c02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afdda916edc7502967bbec17ea3c06c02">&#9670;&nbsp;</a></span>MatrixPattern</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6309,29 +7173,98 @@
 
 <p>Available matrix patterns. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5"></a>BOX&#160;</td><td class="fielddoc">
-<p>Box pattern matrix. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5"></a>BOX&#160;</td><td class="fielddoc"><p>Box pattern matrix. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2"></a>CROSS&#160;</td><td class="fielddoc">
-<p>Cross pattern matrix. </p>
+<tr><td class="fieldname"><a id="afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2"></a>CROSS&#160;</td><td class="fielddoc"><p>Cross pattern matrix. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7"></a>DISK&#160;</td><td class="fielddoc">
-<p>Disk pattern matrix. </p>
+<tr><td class="fieldname"><a id="afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7"></a>DISK&#160;</td><td class="fielddoc"><p>Disk pattern matrix. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb"></a>OTHER&#160;</td><td class="fielddoc">
-<p>Any other matrix pattern. </p>
+<tr><td class="fieldname"><a id="afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb"></a>OTHER&#160;</td><td class="fielddoc"><p>Any other matrix pattern. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00496">496</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;{</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">BOX</a>,   </div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">CROSS</a>, </div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">DISK</a>,  </div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">OTHER</a>  </div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7"><div class="ttname"><a href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">arm_compute::MatrixPattern::DISK</a></div><div class="ttdoc">Disk pattern matrix. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00507">507</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;{</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">BOX</a>,   </div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">CROSS</a>, </div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">DISK</a>,  </div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">OTHER</a>  </div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7"><div class="ttname"><a href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">arm_compute::MatrixPattern::DISK</a></div><div class="ttdoc">Disk pattern matrix. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5"><div class="ttname"><a href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">arm_compute::MatrixPattern::BOX</a></div><div class="ttdoc">Box pattern matrix. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2"><div class="ttname"><a href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">arm_compute::MatrixPattern::CROSS</a></div><div class="ttdoc">Cross pattern matrix. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb"><div class="ttname"><a href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">arm_compute::MatrixPattern::OTHER</a></div><div class="ttdoc">Any other matrix pattern. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="adf2ced65e536375a1c96425d9fced858"></a>
+<a id="a4c9101ca1a1f72f48efff28b4b9a6495"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c9101ca1a1f72f48efff28b4b9a6495">&#9670;&nbsp;</a></span>MemoryPolicy</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495">MemoryPolicy</a></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Global memory policy. </p>
+<p>The functions in the runtime will use different strategies based on the policy currently set.</p>
+<p>MINIMIZE will try to reduce the amount allocated by the functions at the expense of performance normally. NORMAL won't try to save any memory and will favor speed over memory consumption </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a4c9101ca1a1f72f48efff28b4b9a6495a704bfa6c1ed5e479c8cfb5bdfc8cccda"></a>MINIMIZE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4c9101ca1a1f72f48efff28b4b9a6495a1e23852820b9154316c7c06e2b7ba051"></a>NORMAL&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="_c_p_p_types_8h_source.xhtml#l00057">57</a> of file <a class="el" href="_c_p_p_types_8h_source.xhtml">CPPTypes.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;{</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a704bfa6c1ed5e479c8cfb5bdfc8cccda">MINIMIZE</a>,</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a1e23852820b9154316c7c06e2b7ba051">NORMAL</a></div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a4c9101ca1a1f72f48efff28b4b9a6495a704bfa6c1ed5e479c8cfb5bdfc8cccda"><div class="ttname"><a href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a704bfa6c1ed5e479c8cfb5bdfc8cccda">arm_compute::MemoryPolicy::MINIMIZE</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a4c9101ca1a1f72f48efff28b4b9a6495a1e23852820b9154316c7c06e2b7ba051"><div class="ttname"><a href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a1e23852820b9154316c7c06e2b7ba051">arm_compute::MemoryPolicy::NORMAL</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a201391f6e13e2a1ac203256a77792718"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a201391f6e13e2a1ac203256a77792718">&#9670;&nbsp;</a></span>NMSType</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718">NMSType</a></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Available non maxima suppression types. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a201391f6e13e2a1ac203256a77792718aaac544aacc3615aada24897a215f5046"></a>LINEAR&#160;</td><td class="fielddoc"><p>Linear NMS. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a201391f6e13e2a1ac203256a77792718a0fceff26ae86a047835cafbb6cadb1b9"></a>GAUSSIAN&#160;</td><td class="fielddoc"><p>Gaussian NMS. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a201391f6e13e2a1ac203256a77792718aa87d5006e1de1bfc07d5c56086ad20f1"></a>ORIGINAL&#160;</td><td class="fielddoc"><p>Original NMS. </p>
+</td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00581">581</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</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;    <a class="code" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aaac544aacc3615aada24897a215f5046">LINEAR</a>,   </div><div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718a0fceff26ae86a047835cafbb6cadb1b9">GAUSSIAN</a>, </div><div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aa87d5006e1de1bfc07d5c56086ad20f1">ORIGINAL</a>  </div><div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a201391f6e13e2a1ac203256a77792718a0fceff26ae86a047835cafbb6cadb1b9"><div class="ttname"><a href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718a0fceff26ae86a047835cafbb6cadb1b9">arm_compute::NMSType::GAUSSIAN</a></div><div class="ttdoc">Gaussian NMS. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a201391f6e13e2a1ac203256a77792718aa87d5006e1de1bfc07d5c56086ad20f1"><div class="ttname"><a href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aa87d5006e1de1bfc07d5c56086ad20f1">arm_compute::NMSType::ORIGINAL</a></div><div class="ttdoc">Original NMS. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a201391f6e13e2a1ac203256a77792718aaac544aacc3615aada24897a215f5046"><div class="ttname"><a href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aaac544aacc3615aada24897a215f5046">arm_compute::NMSType::LINEAR</a></div><div class="ttdoc">Linear NMS. </div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="adf2ced65e536375a1c96425d9fced858"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf2ced65e536375a1c96425d9fced858">&#9670;&nbsp;</a></span>NonLinearFilterFunction</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6351,25 +7284,24 @@
 
 <p>Available non linear functions. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074"></a>MEDIAN&#160;</td><td class="fielddoc">
-<p>Non linear median filter. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074"></a>MEDIAN&#160;</td><td class="fielddoc"><p>Non linear median filter. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653"></a>MIN&#160;</td><td class="fielddoc">
-<p>Non linear erode. </p>
+<tr><td class="fieldname"><a id="adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653"></a>MIN&#160;</td><td class="fielddoc"><p>Non linear erode. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5"></a>MAX&#160;</td><td class="fielddoc">
-<p>Non linear dilate. </p>
+<tr><td class="fieldname"><a id="adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5"></a>MAX&#160;</td><td class="fielddoc"><p>Non linear dilate. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00505">505</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;                                   : <span class="keywordtype">unsigned</span></div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;{</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">MEDIAN</a> = 0, </div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653">MIN</a>    = 1, </div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>    = 2, </div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5"><div class="ttname"><a href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">arm_compute::NonLinearFilterFunction::MAX</a></div><div class="ttdoc">Non linear dilate. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00516">516</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;                                   : <span class="keywordtype">unsigned</span></div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;{</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">MEDIAN</a> = 0, </div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653">MIN</a>    = 1, </div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>    = 2, </div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5"><div class="ttname"><a href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">arm_compute::NonLinearFilterFunction::MAX</a></div><div class="ttdoc">Non linear dilate. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653"><div class="ttname"><a href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653">arm_compute::NonLinearFilterFunction::MIN</a></div><div class="ttdoc">Non linear erode. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074"><div class="ttname"><a href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">arm_compute::NonLinearFilterFunction::MEDIAN</a></div><div class="ttdoc">Non linear median filter. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad4bb8dabdbf8ad75e34220cc666b59ca"></a>
+<a id="ad4bb8dabdbf8ad75e34220cc666b59ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4bb8dabdbf8ad75e34220cc666b59ca">&#9670;&nbsp;</a></span>NormType</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6389,25 +7321,24 @@
 
 <p>The normalization type used for the normalization layer. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190"></a>IN_MAP_1D&#160;</td><td class="fielddoc">
-<p>Normalization applied within the same map in 1D region. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190"></a>IN_MAP_1D&#160;</td><td class="fielddoc"><p>Normalization applied within the same map in 1D region. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e"></a>IN_MAP_2D&#160;</td><td class="fielddoc">
-<p>Normalization applied within the same map in 2D region. </p>
+<tr><td class="fieldname"><a id="ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e"></a>IN_MAP_2D&#160;</td><td class="fielddoc"><p>Normalization applied within the same map in 2D region. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5"></a>CROSS_MAP&#160;</td><td class="fielddoc">
-<p>Normalization applied cross maps. </p>
+<tr><td class="fieldname"><a id="ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5"></a>CROSS_MAP&#160;</td><td class="fielddoc"><p>Normalization applied cross maps. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00520">520</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;{</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">IN_MAP_1D</a>, </div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">IN_MAP_2D</a>, </div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">CROSS_MAP</a>  </div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190"><div class="ttname"><a href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">arm_compute::NormType::IN_MAP_1D</a></div><div class="ttdoc">Normalization applied within the same map in 1D region. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00532">532</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;{</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">IN_MAP_1D</a>, </div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">IN_MAP_2D</a>, </div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">CROSS_MAP</a>  </div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190"><div class="ttname"><a href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">arm_compute::NormType::IN_MAP_1D</a></div><div class="ttdoc">Normalization applied within the same map in 1D region. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5"><div class="ttname"><a href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">arm_compute::NormType::CROSS_MAP</a></div><div class="ttdoc">Normalization applied cross maps. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e"><div class="ttname"><a href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">arm_compute::NormType::IN_MAP_2D</a></div><div class="ttdoc">Normalization applied within the same map in 2D region. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="af00a42ecad444bbda75cde1b64bd7e72"></a>
+<a id="af00a42ecad444bbda75cde1b64bd7e72"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af00a42ecad444bbda75cde1b64bd7e72">&#9670;&nbsp;</a></span>PhaseType</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6428,21 +7359,21 @@
 <p>Phase calculation type. </p>
 <dl class="section note"><dt>Note</dt><dd>When PhaseType == SIGNED, each angle is mapped to the range 0 to 255 inclusive otherwise angles between 0 and 180 </dd></dl>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07"></a>SIGNED&#160;</td><td class="fielddoc">
-<p>Angle range: [0, 360]. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07"></a>SIGNED&#160;</td><td class="fielddoc"><p>Angle range: [0, 360]. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054"></a>UNSIGNED&#160;</td><td class="fielddoc">
-<p>Angle range: [0, 180]. </p>
+<tr><td class="fieldname"><a id="af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054"></a>UNSIGNED&#160;</td><td class="fielddoc"><p>Angle range: [0, 180]. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00426">426</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;{</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07">SIGNED</a>,  </div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054">UNSIGNED</a> </div><div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054"><div class="ttname"><a href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054">arm_compute::PhaseType::UNSIGNED</a></div><div class="ttdoc">Angle range: [0, 180]. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00431">431</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;{</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07">SIGNED</a>,  </div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054">UNSIGNED</a> </div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054"><div class="ttname"><a href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054">arm_compute::PhaseType::UNSIGNED</a></div><div class="ttdoc">Angle range: [0, 180]. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07"><div class="ttname"><a href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07">arm_compute::PhaseType::SIGNED</a></div><div class="ttdoc">Angle range: [0, 360]. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9172da722f0a434e5cc07c0a3c115d93"></a>
+<a id="a9172da722f0a434e5cc07c0a3c115d93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9172da722f0a434e5cc07c0a3c115d93">&#9670;&nbsp;</a></span>PoolingType</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6462,25 +7393,24 @@
 
 <p>Available pooling types. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a9172da722f0a434e5cc07c0a3c115d93a26a4b44a837bf97b972628509912b4a5"></a>MAX&#160;</td><td class="fielddoc">
-<p>Max Pooling. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a9172da722f0a434e5cc07c0a3c115d93a26a4b44a837bf97b972628509912b4a5"></a>MAX&#160;</td><td class="fielddoc"><p>Max Pooling. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a"></a>AVG&#160;</td><td class="fielddoc">
-<p>Average Pooling. </p>
+<tr><td class="fieldname"><a id="a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a"></a>AVG&#160;</td><td class="fielddoc"><p>Average Pooling. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76"></a>L2&#160;</td><td class="fielddoc">
-<p>L2 Pooling. </p>
+<tr><td class="fieldname"><a id="a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76"></a>L2&#160;</td><td class="fielddoc"><p>L2 Pooling. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00561">561</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;{</div><div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>, </div><div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">AVG</a>, </div><div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">L2</a>   </div><div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76"><div class="ttname"><a href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">arm_compute::PoolingType::L2</a></div><div class="ttdoc">L2 Pooling. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00573">573</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;{</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>, </div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">AVG</a>, </div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">L2</a>   </div><div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76"><div class="ttname"><a href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">arm_compute::PoolingType::L2</a></div><div class="ttdoc">L2 Pooling. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a"><div class="ttname"><a href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">arm_compute::PoolingType::AVG</a></div><div class="ttdoc">Average Pooling. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5"><div class="ttname"><a href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">arm_compute::NonLinearFilterFunction::MAX</a></div><div class="ttdoc">Non linear dilate. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5827eb9cb394e74af87f74bd354fb45b"></a>
+<a id="a5827eb9cb394e74af87f74bd354fb45b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5827eb9cb394e74af87f74bd354fb45b">&#9670;&nbsp;</a></span>ReductionOperation</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6500,21 +7430,24 @@
 
 <p>Available reduction operations. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64"></a>SUM_SQUARE&#160;</td><td class="fielddoc">
-<p>Sum of squares. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64"></a>SUM_SQUARE&#160;</td><td class="fielddoc"><p>Sum of squares. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a"></a>SUM&#160;</td><td class="fielddoc">
-<p>Sum. </p>
+<tr><td class="fieldname"><a id="a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a"></a>SUM&#160;</td><td class="fielddoc"><p>Sum. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5"></a>MEAN_SUM&#160;</td><td class="fielddoc"><p>Mean of sum. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00513">513</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;{</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">SUM_SQUARE</a>, </div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a">SUM</a>,        </div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64"><div class="ttname"><a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">arm_compute::ReductionOperation::SUM_SQUARE</a></div><div class="ttdoc">Sum of squares. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00524">524</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;{</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">SUM_SQUARE</a>, </div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a">SUM</a>,        </div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5">MEAN_SUM</a>,   </div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64"><div class="ttname"><a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">arm_compute::ReductionOperation::SUM_SQUARE</a></div><div class="ttdoc">Sum of squares. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a"><div class="ttname"><a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a">arm_compute::ReductionOperation::SUM</a></div><div class="ttdoc">Sum. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5"><div class="ttname"><a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5">arm_compute::ReductionOperation::MEAN_SUM</a></div><div class="ttdoc">Mean of sum. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="add6426cbf2e057a195846d4ba09a50be"></a>
+<a id="add6426cbf2e057a195846d4ba09a50be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add6426cbf2e057a195846d4ba09a50be">&#9670;&nbsp;</a></span>RoundingPolicy</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6534,25 +7467,24 @@
 
 <p>Rounding method. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06"></a>TO_ZERO&#160;</td><td class="fielddoc">
-<p>Truncates the least significand values that are lost in operations. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06"></a>TO_ZERO&#160;</td><td class="fielddoc"><p>Truncates the least significand values that are lost in operations. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95"></a>TO_NEAREST_UP&#160;</td><td class="fielddoc">
-<p>Rounds to nearest value; half rounds away from zero. </p>
+<tr><td class="fieldname"><a id="add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95"></a>TO_NEAREST_UP&#160;</td><td class="fielddoc"><p>Rounds to nearest value; half rounds away from zero. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150"></a>TO_NEAREST_EVEN&#160;</td><td class="fielddoc">
-<p>Rounds to nearest value; half rounds to nearest even. </p>
+<tr><td class="fieldname"><a id="add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150"></a>TO_NEAREST_EVEN&#160;</td><td class="fielddoc"><p>Rounds to nearest value; half rounds to nearest even. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="_rounding_8h_source.xhtml#l00030">30</a> of file <a class="el" href="_rounding_8h_source.xhtml">Rounding.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_rounding_8h_source.xhtml#l00030">30</a> of file <a class="el" href="_rounding_8h_source.xhtml">Rounding.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;{</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06">TO_ZERO</a>,         </div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">TO_NEAREST_UP</a>,   </div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150">TO_NEAREST_EVEN</a>, </div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95"><div class="ttname"><a href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">arm_compute::RoundingPolicy::TO_NEAREST_UP</a></div><div class="ttdoc">Rounds to nearest value; half rounds away from zero. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150"><div class="ttname"><a href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150">arm_compute::RoundingPolicy::TO_NEAREST_EVEN</a></div><div class="ttdoc">Rounds to nearest value; half rounds to nearest even. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06"><div class="ttname"><a href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06">arm_compute::RoundingPolicy::TO_ZERO</a></div><div class="ttdoc">Truncates the least significand values that are lost in operations. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a16a59381d4d74d17d86d69eb4d286d7b"></a>
+<a id="a16a59381d4d74d17d86d69eb4d286d7b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a16a59381d4d74d17d86d69eb4d286d7b">&#9670;&nbsp;</a></span>SamplingPolicy</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6572,21 +7504,21 @@
 
 <p>Available Sampling Policies. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e"></a>CENTER&#160;</td><td class="fielddoc">
-<p>Samples are taken at pixel center. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e"></a>CENTER&#160;</td><td class="fielddoc"><p>Samples are taken at pixel center. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1"></a>TOP_LEFT&#160;</td><td class="fielddoc">
-<p>Samples are taken at pixel top left corner. </p>
+<tr><td class="fieldname"><a id="a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1"></a>TOP_LEFT&#160;</td><td class="fielddoc"><p>Samples are taken at pixel top left corner. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00091">91</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;{</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">CENTER</a>,  </div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1">TOP_LEFT</a> </div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e"><div class="ttname"><a href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">arm_compute::SamplingPolicy::CENTER</a></div><div class="ttdoc">Samples are taken at pixel center. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00093">93</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;{</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">CENTER</a>,  </div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1">TOP_LEFT</a> </div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e"><div class="ttname"><a href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">arm_compute::SamplingPolicy::CENTER</a></div><div class="ttdoc">Samples are taken at pixel center. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1"><div class="ttname"><a href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1">arm_compute::SamplingPolicy::TOP_LEFT</a></div><div class="ttdoc">Samples are taken at pixel top left corner. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a08c1503414e23f5dd10ff83492685453"></a>
+<a id="a08c1503414e23f5dd10ff83492685453"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08c1503414e23f5dd10ff83492685453">&#9670;&nbsp;</a></span>Termination</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6606,25 +7538,24 @@
 
 <p>Termination criteria. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b"></a>TERM_CRITERIA_EPSILON&#160;</td><td class="fielddoc">
-<p>Terminate when within epsilon of a threshold. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b"></a>TERM_CRITERIA_EPSILON&#160;</td><td class="fielddoc"><p>Terminate when within epsilon of a threshold. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd"></a>TERM_CRITERIA_ITERATIONS&#160;</td><td class="fielddoc">
-<p>Terminate after a maximum number of iterations. </p>
+<tr><td class="fieldname"><a id="a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd"></a>TERM_CRITERIA_ITERATIONS&#160;</td><td class="fielddoc"><p>Terminate after a maximum number of iterations. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29"></a>TERM_CRITERIA_BOTH&#160;</td><td class="fielddoc">
-<p>Terminate on whichever of the other conditions occurs first. </p>
+<tr><td class="fieldname"><a id="a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29"></a>TERM_CRITERIA_BOTH&#160;</td><td class="fielddoc"><p>Terminate on whichever of the other conditions occurs first. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00408">408</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;{</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b">TERM_CRITERIA_EPSILON</a>,    </div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd">TERM_CRITERIA_ITERATIONS</a>, </div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29">TERM_CRITERIA_BOTH</a>        </div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b"><div class="ttname"><a href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b">arm_compute::Termination::TERM_CRITERIA_EPSILON</a></div><div class="ttdoc">Terminate when within epsilon of a threshold. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00413">413</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;{</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b">TERM_CRITERIA_EPSILON</a>,    </div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd">TERM_CRITERIA_ITERATIONS</a>, </div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29">TERM_CRITERIA_BOTH</a>        </div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b"><div class="ttname"><a href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b">arm_compute::Termination::TERM_CRITERIA_EPSILON</a></div><div class="ttdoc">Terminate when within epsilon of a threshold. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd"><div class="ttname"><a href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd">arm_compute::Termination::TERM_CRITERIA_ITERATIONS</a></div><div class="ttdoc">Terminate after a maximum number of iterations. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29"><div class="ttname"><a href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29">arm_compute::Termination::TERM_CRITERIA_BOTH</a></div><div class="ttdoc">Terminate on whichever of the other conditions occurs first. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a3e6b23e675649b83240691abbc42a649"></a>
+<a id="a3e6b23e675649b83240691abbc42a649"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3e6b23e675649b83240691abbc42a649">&#9670;&nbsp;</a></span>ThresholdType</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6644,22 +7575,22 @@
 
 <p>Threshold mode. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452"></a>BINARY&#160;</td><td class="fielddoc">
-<p>Threshold with one value. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452"></a>BINARY&#160;</td><td class="fielddoc"><p>Threshold with one value. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2"></a>RANGE&#160;</td><td class="fielddoc">
-<p>Threshold with two values. </p>
+<tr><td class="fieldname"><a id="a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2"></a>RANGE&#160;</td><td class="fielddoc"><p>Threshold with two values. </p>
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00401">401</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;{</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452">BINARY</a>, </div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2">RANGE</a>   </div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2"><div class="ttname"><a href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2">arm_compute::ThresholdType::RANGE</a></div><div class="ttdoc">Threshold with two values. </div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00406">406</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;{</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452">BINARY</a>, </div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2">RANGE</a>   </div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2"><div class="ttname"><a href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2">arm_compute::ThresholdType::RANGE</a></div><div class="ttdoc">Threshold with two values. </div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452"><div class="ttname"><a href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452">arm_compute::ThresholdType::BINARY</a></div><div class="ttdoc">Threshold with one value. </div></div>
 </div><!-- fragment -->
 </div>
 </div>
 <h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="a41c1523098580451b378f76b8c37a0f0"></a>
+<a id="a41c1523098580451b378f76b8c37a0f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41c1523098580451b378f76b8c37a0f0">&#9670;&nbsp;</a></span>adjust_down()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6708,14 +7639,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Largest value smaller than <code>available</code> that is a multiple of <code>step</code> </dd></dl>
 
-<p>Definition at line <a class="el" href="_i_access_window_8h_source.xhtml#l00047">47</a> of file <a class="el" href="_i_access_window_8h_source.xhtml">IAccessWindow.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_access_window_8h_source.xhtml#l00047">47</a> of file <a class="el" href="_i_access_window_8h_source.xhtml">IAccessWindow.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_access_window_transpose_8cpp_source.xhtml#l00089">AccessWindowTranspose::update_window_if_needed()</a>, and <a class="el" href="_i_access_window_8cpp_source.xhtml#l00097">AccessWindowRectangle::update_window_if_needed()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;{</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(step &lt;= 0);</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <span class="keywordflow">return</span> required - step * ((required - available + step - 1) / step);</div><div class="line"><a name="l00052"></a><span class="lineno">   52</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#l00337">Error.h:337</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="add7f7487c235331a6518dd16ad1e3b38"></a>
+<a id="add7f7487c235331a6518dd16ad1e3b38"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add7f7487c235331a6518dd16ad1e3b38">&#9670;&nbsp;</a></span>adjust_odd_shape()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6759,19 +7694,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The adjusted tensor shape. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00646">646</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00647">647</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00541">has_format_horizontal_subsampling()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00552">has_format_vertical_subsampling()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>.</p>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00542">has_format_horizontal_subsampling()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00553">has_format_vertical_subsampling()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>.</p>
 
-<p>Referenced by <a class="el" href="_validate_8h_source.xhtml#l00303">error_on_tensors_not_even()</a>.</p>
-<div class="fragment"><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;    TensorShape output{ <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> };</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;    <span class="comment">// Force width to be even for formats which require subsampling of the U and V channels</span></div><div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">has_format_horizontal_subsampling</a>(format))</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;        output.set(0, output.x() &amp; ~1<a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>);</div><div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;    }</div><div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;</div><div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;    <span class="comment">// Force height to be even for formats which require subsampling of the U and V channels</span></div><div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">has_format_vertical_subsampling</a>(format))</div><div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;    {</div><div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;        output.set(1, output.y() &amp; ~1<a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>);</div><div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;    }</div><div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;</div><div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;    <span class="keywordflow">return</span> output;</div><div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a95358b677c5c17f5cc1e369e4a27e2c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">arm_compute::has_format_vertical_subsampling</a></div><div class="ttdeci">bool has_format_vertical_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has vertical subsampling. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00552">Utils.h:552</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00303">error_on_tensors_not_even()</a>, <a class="el" href="_c_l_multi_image_8cpp_source.xhtml#l00048">CLMultiImage::init_auto_padding()</a>, and <a class="el" href="_multi_image_8cpp_source.xhtml#l00048">MultiImage::init_auto_padding()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;{</div><div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;    TensorShape output{ <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> };</div><div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;</div><div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;    <span class="comment">// Force width to be even for formats which require subsampling of the U and V channels</span></div><div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">has_format_horizontal_subsampling</a>(format))</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;        output.set(0, output.x() &amp; ~1<a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>);</div><div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;    }</div><div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;</div><div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;    <span class="comment">// Force height to be even for formats which require subsampling of the U and V channels</span></div><div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">has_format_vertical_subsampling</a>(format))</div><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;        output.set(1, output.y() &amp; ~1<a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>);</div><div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;    }</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">return</span> output;</div><div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a95358b677c5c17f5cc1e369e4a27e2c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">arm_compute::has_format_vertical_subsampling</a></div><div class="ttdeci">bool has_format_vertical_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has vertical subsampling. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00553">Utils.h:553</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">arm_compute::Channel::U</a></div><div class="ttdoc">Cb/U channel. </div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_aa2f22cc01532e0236e438324310fdb94"><div class="ttname"><a href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">arm_compute::has_format_horizontal_subsampling</a></div><div class="ttdeci">bool has_format_horizontal_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has horizontal subsampling. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00541">Utils.h:541</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_aa2f22cc01532e0236e438324310fdb94"><div class="ttname"><a href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">arm_compute::has_format_horizontal_subsampling</a></div><div class="ttdeci">bool has_format_horizontal_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has horizontal subsampling. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00542">Utils.h:542</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab16fcfbfc3ee6dbc0c112f0bc9b3d9c2"></a>
+<a id="ab16fcfbfc3ee6dbc0c112f0bc9b3d9c2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab16fcfbfc3ee6dbc0c112f0bc9b3d9c2">&#9670;&nbsp;</a></span>adjust_up()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6820,19 +7757,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Largest value smaller than <code>available</code> that is a multiple of <code>step</code> </dd></dl>
 
-<p>Definition at line <a class="el" href="_i_access_window_8h_source.xhtml#l00063">63</a> of file <a class="el" href="_i_access_window_8h_source.xhtml">IAccessWindow.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_access_window_8h_source.xhtml#l00063">63</a> of file <a class="el" href="_i_access_window_8h_source.xhtml">IAccessWindow.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_access_window_transpose_8cpp_source.xhtml#l00089">AccessWindowTranspose::update_window_if_needed()</a>, and <a class="el" href="_i_access_window_8cpp_source.xhtml#l00097">AccessWindowRectangle::update_window_if_needed()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;{</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(step &lt;= 0);</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keywordflow">return</span> required + step * ((available - required + step - 1) / step);</div><div class="line"><a name="l00068"></a><span class="lineno">   68</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#l00337">Error.h:337</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1faf3c8249d988fd152ab2dd16b029dc"></a>
+<a id="a0019d1de2500c73f16b673d8a883a767"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0019d1de2500c73f16b673d8a883a767">&#9670;&nbsp;</a></span>arm_non_uniform_workgroup_supported()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">bool arm_compute::arm_non_uniform_workgroup_supported </td>
+          <td class="memname">bool arm_non_uniform_workgroup_supported </td>
           <td>(</td>
           <td class="paramtype">const cl::Device &amp;&#160;</td>
           <td class="paramname"><em>device</em></td><td>)</td>
@@ -6850,9 +7791,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the extension is supported </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00135">135</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00183">device_supports_extension()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00895">CLKernelLibrary::create_kernel()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;{</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">device_supports_extension</a>(device, <span class="stringliteral">&quot;cl_arm_non_uniform_work_group_size&quot;</span>);</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a6c4a5ca34ebb51d4e2e119a110e4c8f0"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">arm_compute::device_supports_extension</a></div><div class="ttdeci">bool device_supports_extension(const cl::Device &amp;device, const char *extension_name)</div><div class="ttdoc">Helper function to check whether a given extension is supported. </div><div class="ttdef"><b>Definition:</b> <a href="_c_l_helpers_8cpp_source.xhtml#l00183">CLHelpers.cpp:183</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a47be6fa38308d0003c25b60b7dbc45ce"></a>
+<a id="a47be6fa38308d0003c25b60b7dbc45ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a47be6fa38308d0003c25b60b7dbc45ce">&#9670;&nbsp;</a></span>auto_init_if_empty() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6915,18 +7865,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the tensor info has been initialized </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00201">201</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00201">201</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a9ebcdce876b4cd07736afa47d50154de">ITensorInfo::set_data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#aaf74be25e2392705f29352ffaa4b1f9d">ITensorInfo::set_num_channels()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a575d37eaf8a905c8ca3c0250757c2b81">ITensorInfo::set_quantization_info()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a12a4f1190952613e36b44846962e26bb">ITensorInfo::set_tensor_shape()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
+<p class="reference">References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a9ebcdce876b4cd07736afa47d50154de">ITensorInfo::set_data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#aaf74be25e2392705f29352ffaa4b1f9d">ITensorInfo::set_num_channels()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a575d37eaf8a905c8ca3c0250757c2b81">ITensorInfo::set_quantization_info()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a12a4f1190952613e36b44846962e26bb">ITensorInfo::set_tensor_shape()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_c_l_l2_normalize_layer_kernel_8cpp_source.xhtml#l00039">CLL2NormalizeLayerKernel::CLL2NormalizeLayerKernel()</a>, <a class="el" href="_c_l_softmax_layer_8cpp_source.xhtml#l00038">CLSoftmaxLayer::CLSoftmaxLayer()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00042">GCLogits1DMaxKernel::configure()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00040">GCTransposeKernel::configure()</a>, <a class="el" href="_c_l_transpose_kernel_8cpp_source.xhtml#l00110">CLTransposeKernel::configure()</a>, <a class="el" href="_n_e_floor_kernel_8cpp_source.xhtml#l00074">NEFloorKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00141">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_reduce_mean_8cpp_source.xhtml#l00039">CLReduceMean::configure()</a>, <a class="el" href="_c_l_floor_kernel_8cpp_source.xhtml#l00079">CLFloorKernel::configure()</a>, <a class="el" href="_n_e_reduce_mean_8cpp_source.xhtml#l00056">NEReduceMean::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00108">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_permute_kernel_8cpp_source.xhtml#l00076">CLPermuteKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00067">CLComputeAllAnchorsKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00062">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00051">GCDepthwiseConvolutionLayer3x3Kernel::configure()</a>, <a class="el" href="_n_e_width_concatenate_layer_8cpp_source.xhtml#l00064">NEWidthConcatenateLayer::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00097">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_g_c_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00094">GCNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00069">CLBoundingBoxTransformKernel::configure()</a>, <a class="el" href="_n_e_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00144">NEChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00063">CLDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00041">GCGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_n_e_reorg_layer_kernel_8cpp_source.xhtml#l00114">NEReorgLayerKernel::configure()</a>, <a class="el" href="_n_e_upsample_layer_kernel_8cpp_source.xhtml#l00292">NEUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_output_stage_kernel_8cpp_source.xhtml#l00129">CLDirectConvolutionLayerOutputStageKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_c_l_width_concatenate_layer_8cpp_source.xhtml#l00084">CLWidthConcatenateLayer::configure()</a>, <a class="el" href="_n_e_depth_concatenate_layer_8cpp_source.xhtml#l00046">NEDepthConcatenateLayer::configure()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00040">CLConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_n_e_normalization_layer_kernel_8cpp_source.xhtml#l00115">NENormalizationLayerKernel::configure()</a>, <a class="el" href="_n_e_transpose_kernel_8cpp_source.xhtml#l00499">NETransposeKernel::configure()</a>, <a class="el" href="_c_p_p_permute_kernel_8cpp_source.xhtml#l00119">CPPPermuteKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00049">CLROIPoolingLayerKernel::configure()</a>, <a class="el" href="_n_e_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00097">NEDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00107">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_n_e_activation_layer_kernel_8cpp_source.xhtml#l00094">NEActivationLayerKernel::configure()</a>, <a class="el" href="_n_e_permute_kernel_8cpp_source.xhtml#l00157">NEPermuteKernel::configure()</a>, <a class="el" href="_c_l_depth_concatenate_layer_8cpp_source.xhtml#l00046">CLDepthConcatenateLayer::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00107">GCLogits1DShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_direct_convolution_layer_output_stage_kernel_8cpp_source.xhtml#l00471">NEDirectConvolutionLayerOutputStageKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00178">NEGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00102">CLWinogradFilterTransformKernel::configure()</a>, <a class="el" href="_n_e_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00036">NEConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00111">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00136">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_n_e_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00045">NEROIPoolingLayerKernel::configure()</a>, <a class="el" href="_n_e_direct_convolution_layer_kernel_8cpp_source.xhtml#l01155">NEDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00962">NEGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00044">GCGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel_8cpp_source.xhtml#l00114">CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00118">CLGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel_8cpp_source.xhtml#l00298">NEGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00091">CLGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_g_c_weights_reshape_kernel_8cpp_source.xhtml#l00046">GCWeightsReshapeKernel::configure()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00044">GCCol2ImKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00099">NEGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_c_l_weights_reshape_kernel_8cpp_source.xhtml#l00078">CLWeightsReshapeKernel::configure()</a>, <a class="el" href="_n_e_weights_reshape_kernel_8cpp_source.xhtml#l00147">NEWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_8cpp_source.xhtml#l00057">CLGenerateProposalsLayer::configure()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00110">CLDeconvolutionLayer::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00201">GCLogits1DNormKernel::configure()</a>, <a class="el" href="_n_e_deconvolution_layer_8cpp_source.xhtml#l00103">NEDeconvolutionLayer::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00219">CLLogits1DMaxShiftExpSumKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00098">CLDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00268">NEDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00335">CLLogits1DNormKernel::configure()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>, <a class="el" href="_c_l_split_8cpp_source.xhtml#l00090">CLSplit::validate()</a>, <a class="el" href="_n_e_width_concatenate_layer_8cpp_source.xhtml#l00043">NEWidthConcatenateLayer::validate()</a>, <a class="el" href="_c_l_width_concatenate_layer_8cpp_source.xhtml#l00045">CLWidthConcatenateLayer::validate()</a>, <a class="el" href="_n_e_depth_concatenate_layer_8cpp_source.xhtml#l00076">NEDepthConcatenateLayer::validate()</a>, <a class="el" href="_c_l_depth_concatenate_layer_8cpp_source.xhtml#l00078">CLDepthConcatenateLayer::validate()</a>, <a class="el" href="_n_e_g_e_m_m_8cpp_source.xhtml#l00137">NEGEMM::validate()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_core_8cpp_source.xhtml#l00223">CLGEMMLowpMatrixMultiplyCore::validate()</a>, <a class="el" href="_c_l_g_e_m_m_8cpp_source.xhtml#l00180">CLGEMM::validate()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00346">CLGEMMConvolutionLayer::validate()</a>, and <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00401">NEDepthwiseConvolutionLayer::validate()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;{</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.tensor_shape().total_size() == 0)</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;    {</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.set_data_type(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>);</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.set_num_channels(num_channels);</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.set_tensor_shape(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>);</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.set_quantization_info(quantization_info);</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    }</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00088">GEMM.cpp:88</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00174">ArithmeticSubtraction.cpp:174</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5844c8e025388ddd8c3afc5c3f7a3256"></a>
+<a id="a5844c8e025388ddd8c3afc5c3f7a3256"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5844c8e025388ddd8c3afc5c3f7a3256">&#9670;&nbsp;</a></span>auto_init_if_empty() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -6968,13 +7920,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the tensor info has been initialized </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00219">219</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00219">219</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#ad7829ae79223ab87f9da4c0bd7d229ba">ITensorInfo::num_channels()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a3f3e1a3200223e6a304a533b1016e749">ITensorInfo::quantization_info()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#abb9481fe056b9749f9b4c08db101cc15">ITensorInfo::set_data_layout()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a9ebcdce876b4cd07736afa47d50154de">ITensorInfo::set_data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#aaf74be25e2392705f29352ffaa4b1f9d">ITensorInfo::set_num_channels()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a575d37eaf8a905c8ca3c0250757c2b81">ITensorInfo::set_quantization_info()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a12a4f1190952613e36b44846962e26bb">ITensorInfo::set_tensor_shape()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
+<p class="reference">References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#ad7829ae79223ab87f9da4c0bd7d229ba">ITensorInfo::num_channels()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a3f3e1a3200223e6a304a533b1016e749">ITensorInfo::quantization_info()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#abb9481fe056b9749f9b4c08db101cc15">ITensorInfo::set_data_layout()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a9ebcdce876b4cd07736afa47d50154de">ITensorInfo::set_data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#aaf74be25e2392705f29352ffaa4b1f9d">ITensorInfo::set_num_channels()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a575d37eaf8a905c8ca3c0250757c2b81">ITensorInfo::set_quantization_info()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a12a4f1190952613e36b44846962e26bb">ITensorInfo::set_tensor_shape()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;{</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;    <span class="keywordflow">if</span>(info_sink.tensor_shape().total_size() == 0)</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    {</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;        info_sink.set_data_type(info_source.data_type());</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;        info_sink.set_num_channels(info_source.num_channels());</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;        info_sink.set_tensor_shape(info_source.tensor_shape());</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;        info_sink.set_quantization_info(info_source.quantization_info());</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;        info_sink.set_data_layout(info_source.data_layout());</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;    }</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a64c17a5a42d2499a1626222ff9753b4d"></a>
+<a id="a64c17a5a42d2499a1626222ff9753b4d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64c17a5a42d2499a1626222ff9753b4d">&#9670;&nbsp;</a></span>build_information()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -6987,15 +7941,17 @@
       </table>
 </div><div class="memdoc">
 
-<p>Returns the <a class="el" href="namespacearm__compute.xhtml" title="This file contains all available output stages for GEMMLowp on OpenCL. ">arm_compute</a> library build information. </p>
+<p>Returns the <a class="el" href="namespacearm__compute.xhtml" title="Copyright (c) 2017-2018 ARM Limited. ">arm_compute</a> library build information. </p>
 <p>Contains the version number and the build options used to build the library</p>
-<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="namespacearm__compute.xhtml" title="This file contains all available output stages for GEMMLowp on OpenCL. ">arm_compute</a> library build information </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="namespacearm__compute.xhtml" title="Copyright (c) 2017-2018 ARM Limited. ">arm_compute</a> library build information </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00078">floor_to_multiple()</a>, and <a class="el" href="main_8cpp_source.xhtml#l00087">main()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="main_8cpp_source.xhtml#l00087">main()</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a0101a40c4a6acc2af3b55afa7632f16a"></a>
+<a id="a0101a40c4a6acc2af3b55afa7632f16a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0101a40c4a6acc2af3b55afa7632f16a">&#9670;&nbsp;</a></span>calculate_matrix_scale()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -7039,19 +7995,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The absolute value of the sum of the coefficients if they don't add up to 0, otherwise 1. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00626">626</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00627">627</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;{</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">size_t</span> size = matrix_size * matrix_size;</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;    <span class="keywordflow">return</span> std::max(1, std::abs(<a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(matrix, matrix + size, 0)));</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;}</div><div class="ttc" id="accumulate_8cl_xhtml_a00e540076dd545ad59ac7482f8cdf514"><div class="ttname"><a href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">accumulate</a></div><div class="ttdeci">__kernel void accumulate(__global uchar *input_ptr, uint input_stride_x, uint input_step_x, uint input_stride_y, uint input_step_y, uint input_offset_first_element_in_bytes, __global uchar *accu_ptr, uint accu_stride_x, uint accu_step_x, uint accu_stride_y, uint accu_step_y, uint accu_offset_first_element_in_bytes)</div><div class="ttdoc">This function accumulates an input image into output image. </div><div class="ttdef"><b>Definition:</b> <a href="accumulate_8cl_source.xhtml#l00041">accumulate.cl:41</a></div></div>
+<p class="reference">References <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00324">NEConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_convolution_8cpp_source.xhtml#l00056">CLConvolutionSquare&lt; matrix_size &gt;::configure()</a>, and <a class="el" href="_n_e_convolution_8cpp_source.xhtml#l00057">NEConvolutionSquare&lt; matrix_size &gt;::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;{</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">size_t</span> size = matrix_size * matrix_size;</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;    <span class="keywordflow">return</span> std::max(1, std::abs(<a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(matrix, matrix + size, 0)));</div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;}</div><div class="ttc" id="accumulate_8cl_xhtml_a00e540076dd545ad59ac7482f8cdf514"><div class="ttname"><a href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">accumulate</a></div><div class="ttdeci">__kernel void accumulate(__global uchar *input_ptr, uint input_stride_x, uint input_step_x, uint input_stride_y, uint input_step_y, uint input_offset_first_element_in_bytes, __global uchar *accu_ptr, uint accu_stride_x, uint accu_step_x, uint accu_stride_y, uint accu_step_y, uint accu_offset_first_element_in_bytes)</div><div class="ttdoc">This function accumulates an input image into output image. </div><div class="ttdef"><b>Definition:</b> <a href="accumulate_8cl_source.xhtml#l00041">accumulate.cl:41</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a2bbb5d1cdb27c0e8c517cb7c544226c6"></a>
+<a id="affc1f59e0b2c29bf81e8c95bf0fa8e76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#affc1f59e0b2c29bf81e8c95bf0fa8e76">&#9670;&nbsp;</a></span>calculate_max_enlarged_window() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> arm_compute::calculate_max_enlarged_window </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> calculate_max_enlarged_window </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>
@@ -7088,11 +8048,31 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00457">calculate_max_enlarged_window()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00434">calculate_max_window_horizontal()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00082">82</a> of file <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml">Helpers.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00281">ValidRegion::anchor</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00376">BorderSize::bottom</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">ceil_to_multiple()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00377">BorderSize::left</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00375">BorderSize::right</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">arm_compute::test::validation::shape</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00282">ValidRegion::shape</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00374">BorderSize::top</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00457">calculate_max_enlarged_window()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00434">calculate_max_window_horizontal()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00044">GCGEMMMatrixAccumulateBiasesKernel::configure()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00051">GCDepthwiseConvolutionLayer3x3Kernel::configure()</a>, and <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;{</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;anchor = valid_region.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>;</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>  = valid_region.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>;</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <a class="code" href="classarm__compute_1_1_window.xhtml">Window</a> window;</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(0, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                   <span class="comment">// move the anchor to the start from the border</span></div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                   anchor[0] - border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>,</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                   <span class="comment">// move the anchor to include the right end border</span></div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                   <span class="comment">// Make sure the window width is a multiple of the step size</span></div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                   anchor[0] - border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a> + <a class="code" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a>(shape[0] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a> + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">right</a>, steps[0]),</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                   steps[0]));</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    <span class="keywordtype">size_t</span> n = 1;</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    <span class="keywordflow">if</span>(anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() &gt; 1)</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    {</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(1, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                       <span class="comment">// Include the border above the image</span></div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                       anchor[1] - border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a>,</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                       <span class="comment">// Include the border below the image</span></div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;                       anchor[1] - border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a> + <a class="code" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a>(shape[1] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a> + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">bottom</a>, steps[1]),</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                       steps[1]));</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        ++n;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    }</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    <span class="keywordflow">if</span>(anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() &gt; 2)</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    {</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(2, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(0, std::max&lt;size_t&gt;(1, shape[n]), steps[2]));</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        ++n;</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    }</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    <span class="keywordflow">for</span>(; n &lt; anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>(); ++n)</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    {</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(anchor[n], std::max&lt;size_t&gt;(1, shape[n])));</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    }</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <span class="keywordflow">for</span>(; n &lt; Coordinates::num_max_dimensions; ++n)</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    {</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(0, 1));</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    }</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    <span class="keywordflow">return</span> window;</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;}</div><div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a3fdd42ea34070a54e696b3adc28c4be3"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">arm_compute::BorderSize::top</a></div><div class="ttdeci">unsigned int top</div><div class="ttdoc">top of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00374">Types.h:374</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_tensor_shape_xhtml"><div class="ttname"><a href="classarm__compute_1_1_tensor_shape.xhtml">arm_compute::TensorShape</a></div><div class="ttdoc">Shape of a tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_tensor_shape_8h_source.xhtml#l00039">TensorShape.h:39</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a1fcd64682b37ed3c2098d0094ce788d8"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">arm_compute::ValidRegion::shape</a></div><div class="ttdeci">TensorShape shape</div><div class="ttdoc">Shape of the valid region. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00282">Types.h:282</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml">arm_compute::Window::Dimension</a></div><div class="ttdoc">Describe one of the image&amp;#39;s dimensions with a start, end and step. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00068">Window.h:68</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a802ffcf1b49237efe5be8a314d3f3869"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">arm_compute::BorderSize::bottom</a></div><div class="ttdeci">unsigned int bottom</div><div class="ttdoc">bottom of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00376">Types.h:376</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab237a0a375cf382d52b61653248d3d4a"><div class="ttname"><a href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">arm_compute::ceil_to_multiple</a></div><div class="ttdeci">auto ceil_to_multiple(S value, T divisor) -&gt; decltype(((value+divisor - 1)/divisor) *divisor)</div><div class="ttdoc">Computes the smallest number larger or equal to value that is a multiple of divisor. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">Utils.h:65</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_coordinates_xhtml"><div class="ttname"><a href="classarm__compute_1_1_coordinates.xhtml">arm_compute::Coordinates</a></div><div class="ttdoc">Coordinates of an item. </div><div class="ttdef"><b>Definition:</b> <a href="_coordinates_8h_source.xhtml#l00037">Coordinates.h:37</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_xhtml_acd3d2bba51cb84d34dd7656ad2375a6e"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">arm_compute::Window::set</a></div><div class="ttdeci">void set(size_t dimension, const Dimension &amp;dim)</div><div class="ttdoc">Set the values of a given dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8inl_source.xhtml#l00041">Window.inl:41</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a05374b750b0fc472c34ee61e6f028bba"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">arm_compute::BorderSize::left</a></div><div class="ttdeci">unsigned int left</div><div class="ttdoc">left of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00377">Types.h:377</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a78b0fed184c642b78f32fd34b228a5f9"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">arm_compute::BorderSize::right</a></div><div class="ttdeci">unsigned int right</div><div class="ttdoc">right of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00375">Types.h:375</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a80a5f2d6e3a697c9aad893a3b4242615"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">arm_compute::Dimensions::num_dimensions</a></div><div class="ttdeci">unsigned int num_dimensions() const</div><div class="ttdoc">Returns the effective dimensionality of the tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00122">Dimensions.h:122</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml">arm_compute::Window</a></div><div class="ttdoc">Describe a multidimensional execution window. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00039">Window.h:39</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a55a69b397082accd94221dd10b722cf7"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">arm_compute::ValidRegion::anchor</a></div><div class="ttdeci">Coordinates anchor</div><div class="ttdoc">Anchor for the start of the valid region. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00281">Types.h:281</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afcdda83b6a85d5798f08d92c0e235e2e"></a>
+<a id="afcdda83b6a85d5798f08d92c0e235e2e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afcdda83b6a85d5798f08d92c0e235e2e">&#9670;&nbsp;</a></span>calculate_max_enlarged_window() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -7142,20 +8122,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00457">457</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00457">457</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#a2bbb5d1cdb27c0e8c517cb7c544226c6">calculate_max_enlarged_window()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">ITensorInfo::valid_region()</a>.</p>
+<p class="reference">References <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00082">calculate_max_enlarged_window()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">ITensorInfo::valid_region()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;{</div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#afcdda83b6a85d5798f08d92c0e235e2e">calculate_max_enlarged_window</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.valid_region(), steps, border_size);</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_afcdda83b6a85d5798f08d92c0e235e2e"><div class="ttname"><a href="namespacearm__compute.xhtml#afcdda83b6a85d5798f08d92c0e235e2e">arm_compute::calculate_max_enlarged_window</a></div><div class="ttdeci">Window calculate_max_enlarged_window(const ITensorInfo &amp;info, const Steps &amp;steps=Steps(), BorderSize border_size=BorderSize())</div><div class="ttdoc">Calculate the maximum window for a given tensor shape and border setting. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00457">Helpers.h:457</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1c28e5916fd54b778da115bfe646f588"></a>
+<a id="ab7980fa5ee693e3282a76da047a1c3b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7980fa5ee693e3282a76da047a1c3b5">&#9670;&nbsp;</a></span>calculate_max_window() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> arm_compute::calculate_max_window </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> calculate_max_window </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>
@@ -7198,11 +8180,32 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00409">calculate_max_window()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00368">update_window_and_padding()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00028">28</a> of file <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml">Helpers.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00281">ValidRegion::anchor</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00376">BorderSize::bottom</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">ceil_to_multiple()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00377">BorderSize::left</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00375">BorderSize::right</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">arm_compute::test::validation::shape</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00282">ValidRegion::shape</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00374">BorderSize::top</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00409">calculate_max_window()</a>, <a class="el" href="_c_l_l2_normalize_layer_kernel_8cpp_source.xhtml#l00039">CLL2NormalizeLayerKernel::CLL2NormalizeLayerKernel()</a>, <a class="el" href="_c_l_locally_connected_matrix_multiply_kernel_8cpp_source.xhtml#l00044">CLLocallyConnectedMatrixMultiplyKernel::CLLocallyConnectedMatrixMultiplyKernel()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00042">GCLogits1DMaxKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00039">CLIntegralImageHorKernel::configure()</a>, <a class="el" href="_c_l_warp_perspective_kernel_8cpp_source.xhtml#l00061">CLWarpPerspectiveKernel::configure()</a>, <a class="el" href="_c_l_box3x3_kernel_8cpp_source.xhtml#l00043">CLBox3x3Kernel::configure()</a>, <a class="el" href="_c_l_median3x3_kernel_8cpp_source.xhtml#l00039">CLMedian3x3Kernel::configure()</a>, <a class="el" href="_c_l_erode_kernel_8cpp_source.xhtml#l00039">CLErodeKernel::configure()</a>, <a class="el" href="_c_l_dilate_kernel_8cpp_source.xhtml#l00039">CLDilateKernel::configure()</a>, <a class="el" href="_c_l_gaussian3x3_kernel_8cpp_source.xhtml#l00042">CLGaussian3x3Kernel::configure()</a>, <a class="el" href="_n_e_reshape_layer_kernel_8cpp_source.xhtml#l00073">NEReshapeLayerKernel::configure()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00040">GCTransposeKernel::configure()</a>, <a class="el" href="_c_l_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00044">CLNonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_n_e_integral_image_kernel_8cpp_source.xhtml#l00038">NEIntegralImageKernel::configure()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00047">GCScaleKernel::configure()</a>, <a class="el" href="_n_e_box3x3_kernel_8cpp_source.xhtml#l00114">NEBox3x3Kernel::configure()</a>, <a class="el" href="_n_e_dilate_kernel_8cpp_source.xhtml#l00048">NEDilateKernel::configure()</a>, <a class="el" href="_n_e_erode_kernel_8cpp_source.xhtml#l00048">NEErodeKernel::configure()</a>, <a class="el" href="_n_e_gaussian3x3_kernel_8cpp_source.xhtml#l00041">NEGaussian3x3Kernel::configure()</a>, <a class="el" href="_n_e_median3x3_kernel_8cpp_source.xhtml#l00054">NEMedian3x3Kernel::configure()</a>, <a class="el" href="_c_l_non_linear_filter_kernel_8cpp_source.xhtml#l00056">CLNonLinearFilterKernel::configure()</a>, <a class="el" href="_c_l_reshape_layer_kernel_8cpp_source.xhtml#l00067">CLReshapeLayerKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00067">CLComputeAllAnchorsKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00040">CLGradientKernel::configure()</a>, <a class="el" href="_c_l_permute_kernel_8cpp_source.xhtml#l00076">CLPermuteKernel::configure()</a>, <a class="el" href="_c_l_bitwise_xor_kernel_8cpp_source.xhtml#l00041">CLBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00042">CLMemsetKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_n_e_copy_kernel_8cpp_source.xhtml#l00040">NECopyKernel::configure()</a>, <a class="el" href="_c_l_bitwise_and_kernel_8cpp_source.xhtml#l00040">CLBitwiseAndKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00083">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00062">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_bitwise_or_kernel_8cpp_source.xhtml#l00041">CLBitwiseOrKernel::configure()</a>, <a class="el" href="_i_g_c_simple_kernel_8cpp_source.xhtml#l00038">IGCSimpleKernel::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00071">CLDeconvolutionLayerUpsampleKernel::configure()</a>, <a class="el" href="_c_l_depthwise_weights_reshape_kernel_8cpp_source.xhtml#l00069">CLDepthwiseWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_derivative_kernel_8cpp_source.xhtml#l00050">CLDerivativeKernel::configure()</a>, <a class="el" href="_i_c_l_simple_kernel_8cpp_source.xhtml#l00038">ICLSimpleKernel::configure()</a>, <a class="el" href="_c_l_sobel3x3_kernel_8cpp_source.xhtml#l00050">CLSobel3x3Kernel::configure()</a>, <a class="el" href="_c_p_p_flip_weights_kernel_8cpp_source.xhtml#l00069">CPPFlipWeightsKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00048">CLHOGOrientationBinningKernel::configure()</a>, <a class="el" href="_n_e_warp_kernel_8cpp_source.xhtml#l00067">INEWarpKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_g_c_normalization_layer_kernel_8cpp_source.xhtml#l00049">GCNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00069">CLBoundingBoxTransformKernel::configure()</a>, <a class="el" href="_g_c_absolute_difference_kernel_8cpp_source.xhtml#l00047">GCAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00047">CLAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_bitwise_not_kernel_8cpp_source.xhtml#l00056">NEBitwiseNotKernel::configure()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00063">CLDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_n_e_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00144">NEChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_n_e_depthwise_weights_reshape_kernel_8cpp_source.xhtml#l00105">NEDepthwiseWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00048">CLColorConvertKernel::configure()</a>, <a class="el" href="_n_e_reorg_layer_kernel_8cpp_source.xhtml#l00114">NEReorgLayerKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00041">GCGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00046">CLMagnitudePhaseKernel::configure()</a>, <a class="el" href="_c_l_mean_std_dev_kernel_8cpp_source.xhtml#l00066">CLMeanStdDevKernel::configure()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00061">NEBitwiseAndKernel::configure()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00057">NEBitwiseOrKernel::configure()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00057">NEBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00064">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_n_e_derivative_kernel_8cpp_source.xhtml#l00054">NEDerivativeKernel::configure()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00049">CLChannelCombineKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_n_e_remap_kernel_8cpp_source.xhtml#l00076">NERemapKernel::configure()</a>, <a class="el" href="_c_p_p_permute_kernel_8cpp_source.xhtml#l00119">CPPPermuteKernel::configure()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00040">CLConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_g_c_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00050">GCDepthConcatenateLayerKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_fast_corners_kernel_8cpp_source.xhtml#l00361">NEFastCornersKernel::configure()</a>, <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00632">NEHOGOrientationBinningKernel::configure()</a>, <a class="el" href="_c_p_p_upsample_kernel_8cpp_source.xhtml#l00049">CPPUpsampleKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00071">CLIntegralImageVertKernel::configure()</a>, <a class="el" href="_n_e_threshold_kernel_8cpp_source.xhtml#l00045">NEThresholdKernel::configure()</a>, <a class="el" href="_n_e_absolute_difference_kernel_8cpp_source.xhtml#l00133">NEAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00049">CLROIPoolingLayerKernel::configure()</a>, <a class="el" href="_n_e_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00097">NEDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_n_e_non_linear_filter_kernel_8cpp_source.xhtml#l00353">NENonLinearFilterKernel::configure()</a>, <a class="el" href="_n_e_permute_kernel_8cpp_source.xhtml#l00157">NEPermuteKernel::configure()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_fill_array_kernel_8cpp_source.xhtml#l00039">NEFillArrayKernel::configure()</a>, <a class="el" href="_n_e_magnitude_phase_kernel_8cpp_source.xhtml#l00250">NEMagnitudePhaseKernel&lt; mag_type, phase_type &gt;::configure()</a>, <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00462">NENonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_n_e_min_max_location_kernel_8cpp_source.xhtml#l00049">NEMinMaxKernel::configure()</a>, <a class="el" href="_g_c_dropout_layer_kernel_8cpp_source.xhtml#l00048">GCDropoutLayerKernel::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00107">GCLogits1DShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00877">NEGradientKernel::configure()</a>, <a class="el" href="_n_e_depthwise_im2_col_kernel_8cpp_source.xhtml#l00136">NEDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_n_e_mean_std_dev_kernel_8cpp_source.xhtml#l00097">NEMeanStdDevKernel::configure()</a>, <a class="el" href="_c_p_p_corner_candidates_kernel_8cpp_source.xhtml#l00074">CPPCornerCandidatesKernel::configure()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00054">CLHarrisScoreKernel::configure()</a>, <a class="el" href="_n_e_channel_combine_kernel_8cpp_source.xhtml#l00052">NEChannelCombineKernel::configure()</a>, <a class="el" href="_n_e_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00036">NEConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_n_e_cumulative_distribution_kernel_8cpp_source.xhtml#l00050">NECumulativeDistributionKernel::configure()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00050">CLFastCornersKernel::configure()</a>, <a class="el" href="_c_p_p_box_with_non_maxima_suppression_limit_kernel_8cpp_source.xhtml#l00349">CPPBoxWithNonMaximaSuppressionLimitKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00044">GCGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_n_e_scharr3x3_kernel_8cpp_source.xhtml#l00090">NEScharr3x3Kernel::configure()</a>, <a class="el" href="_n_e_sobel3x3_kernel_8cpp_source.xhtml#l00048">NESobel3x3Kernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00324">NEConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_scharr3x3_kernel_8cpp_source.xhtml#l00050">CLScharr3x3Kernel::configure()</a>, <a class="el" href="_n_e_histogram_kernel_8cpp_source.xhtml#l00195">NEHistogramKernel::configure()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00118">NEGaussian5x5VertKernel::configure()</a>, <a class="el" href="_g_c_weights_reshape_kernel_8cpp_source.xhtml#l00046">GCWeightsReshapeKernel::configure()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00044">GCCol2ImKernel::configure()</a>, <a class="el" href="_c_l_weights_reshape_kernel_8cpp_source.xhtml#l00078">CLWeightsReshapeKernel::configure()</a>, <a class="el" href="_g_c_im2_col_kernel_8cpp_source.xhtml#l00067">GCIm2ColKernel::configure()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00136">CLGaussianPyramidVertKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00111">CLEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00169">CLMinMaxLocationKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00125">CLHOGBlockNormalizationKernel::configure()</a>, <a class="el" href="_n_e_harris_corners_kernel_8cpp_source.xhtml#l00736">NEHarrisScoreKernel&lt; block_size &gt;::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00161">NEGaussianPyramidVertKernel::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00201">GCLogits1DNormKernel::configure()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00144">CLSobel5x5VertKernel::configure()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00147">CLSobel7x7VertKernel::configure()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00115">CLCopyToArrayKernel::configure()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00217">NESobel5x5VertKernel::configure()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00307">NESobel7x7VertKernel::configure()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00714">NEHOGBlockNormalizationKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00970">NEEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00180">CLSeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00173">CLEdgeTraceKernel::configure()</a>, <a class="el" href="_n_e_min_max_location_kernel_8cpp_source.xhtml#l00335">NEMinMaxLocationKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01103">NESeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00246">CLConvolutionRectangleKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01059">NEEdgeTraceKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01427">NEConvolutionRectangleKernel::configure()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00368">update_window_and_padding()</a>, and <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;{</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <span class="keywordflow">if</span>(!skip_border)</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    {</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        border_size = <a class="code" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>(0);</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    }</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;anchor = valid_region.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>;</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>  = valid_region.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="classarm__compute_1_1_window.xhtml">Window</a> window;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(0, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                   <span class="comment">// Skip the border left of the image</span></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                   anchor[0] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>,</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                   <span class="comment">// Skip the border right of the image</span></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                   <span class="comment">// Make sure the window width is a multiple of the step size</span></div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                   anchor[0] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a> + <a class="code" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a>(std::max(0, static_cast&lt;int&gt;(shape[0]) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">right</a>)), steps[0]),</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                   steps[0]));</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keywordtype">size_t</span> n = 1;</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="keywordflow">if</span>(anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() &gt; 1)</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    {</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(1, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                       <span class="comment">// Skip the border above the image</span></div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                       anchor[1] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a>,</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                       <span class="comment">// Skip the border below the image</span></div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                       anchor[1] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a> + <a class="code" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a>(std::max(0, static_cast&lt;int&gt;(shape[1]) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a>) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">bottom</a>)), steps[1]),</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                       steps[1]));</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        ++n;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    }</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="keywordflow">if</span>(anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() &gt; 2)</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    {</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(2, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(anchor[2], std::max&lt;size_t&gt;(1, shape[2]), steps[2]));</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        ++n;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    }</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="keywordflow">for</span>(; n &lt; anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>(); ++n)</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    {</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(anchor[n], std::max&lt;size_t&gt;(1, shape[n])));</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    }</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="keywordflow">for</span>(; n &lt; Coordinates::num_max_dimensions; ++n)</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    {</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(0, 1));</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    }</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <span class="keywordflow">return</span> window;</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;}</div><div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a3fdd42ea34070a54e696b3adc28c4be3"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">arm_compute::BorderSize::top</a></div><div class="ttdeci">unsigned int top</div><div class="ttdoc">top of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00374">Types.h:374</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_tensor_shape_xhtml"><div class="ttname"><a href="classarm__compute_1_1_tensor_shape.xhtml">arm_compute::TensorShape</a></div><div class="ttdoc">Shape of a tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_tensor_shape_8h_source.xhtml#l00039">TensorShape.h:39</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a1fcd64682b37ed3c2098d0094ce788d8"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">arm_compute::ValidRegion::shape</a></div><div class="ttdeci">TensorShape shape</div><div class="ttdoc">Shape of the valid region. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00282">Types.h:282</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_border_size_xhtml"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml">arm_compute::BorderSize</a></div><div class="ttdoc">Container for 2D border size. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00294">Types.h:294</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml">arm_compute::Window::Dimension</a></div><div class="ttdoc">Describe one of the image&amp;#39;s dimensions with a start, end and step. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00068">Window.h:68</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a802ffcf1b49237efe5be8a314d3f3869"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">arm_compute::BorderSize::bottom</a></div><div class="ttdeci">unsigned int bottom</div><div class="ttdoc">bottom of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00376">Types.h:376</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab237a0a375cf382d52b61653248d3d4a"><div class="ttname"><a href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">arm_compute::ceil_to_multiple</a></div><div class="ttdeci">auto ceil_to_multiple(S value, T divisor) -&gt; decltype(((value+divisor - 1)/divisor) *divisor)</div><div class="ttdoc">Computes the smallest number larger or equal to value that is a multiple of divisor. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">Utils.h:65</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_coordinates_xhtml"><div class="ttname"><a href="classarm__compute_1_1_coordinates.xhtml">arm_compute::Coordinates</a></div><div class="ttdoc">Coordinates of an item. </div><div class="ttdef"><b>Definition:</b> <a href="_coordinates_8h_source.xhtml#l00037">Coordinates.h:37</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_xhtml_acd3d2bba51cb84d34dd7656ad2375a6e"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">arm_compute::Window::set</a></div><div class="ttdeci">void set(size_t dimension, const Dimension &amp;dim)</div><div class="ttdoc">Set the values of a given dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8inl_source.xhtml#l00041">Window.inl:41</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a05374b750b0fc472c34ee61e6f028bba"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">arm_compute::BorderSize::left</a></div><div class="ttdeci">unsigned int left</div><div class="ttdoc">left of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00377">Types.h:377</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a78b0fed184c642b78f32fd34b228a5f9"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">arm_compute::BorderSize::right</a></div><div class="ttdeci">unsigned int right</div><div class="ttdoc">right of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00375">Types.h:375</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a80a5f2d6e3a697c9aad893a3b4242615"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">arm_compute::Dimensions::num_dimensions</a></div><div class="ttdeci">unsigned int num_dimensions() const</div><div class="ttdoc">Returns the effective dimensionality of the tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00122">Dimensions.h:122</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml">arm_compute::Window</a></div><div class="ttdoc">Describe a multidimensional execution window. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00039">Window.h:39</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a55a69b397082accd94221dd10b722cf7"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">arm_compute::ValidRegion::anchor</a></div><div class="ttdeci">Coordinates anchor</div><div class="ttdoc">Anchor for the start of the valid region. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00281">Types.h:281</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa2117aef4381edbdf81e17ec088df7f1"></a>
+<a id="aa2117aef4381edbdf81e17ec088df7f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa2117aef4381edbdf81e17ec088df7f1">&#9670;&nbsp;</a></span>calculate_max_window() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -7258,20 +8261,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00409">409</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00409">409</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#a1c28e5916fd54b778da115bfe646f588">calculate_max_window()</a>, <a class="el" href="namespacearm__compute.xhtml#a252e257c58bfccbb272c0a5bf81d42cb">calculate_max_window_horizontal()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">ITensorInfo::valid_region()</a>.</p>
+<p class="reference">References <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00028">calculate_max_window()</a>, <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00131">calculate_max_window_horizontal()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">ITensorInfo::valid_region()</a>.</p>
 <div class="fragment"><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;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#aa2117aef4381edbdf81e17ec088df7f1">calculate_max_window</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.valid_region(), steps, skip_border, border_size);</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_aa2117aef4381edbdf81e17ec088df7f1"><div class="ttname"><a href="namespacearm__compute.xhtml#aa2117aef4381edbdf81e17ec088df7f1">arm_compute::calculate_max_window</a></div><div class="ttdeci">Window calculate_max_window(const ITensorInfo &amp;info, const Steps &amp;steps=Steps(), bool skip_border=false, BorderSize border_size=BorderSize())</div><div class="ttdoc">Calculate the maximum window for a given tensor shape and border setting. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00409">Helpers.h:409</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a252e257c58bfccbb272c0a5bf81d42cb"></a>
+<a id="a9047a414d692d8814181a667a7ee68c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9047a414d692d8814181a667a7ee68c4">&#9670;&nbsp;</a></span>calculate_max_window_horizontal() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> arm_compute::calculate_max_window_horizontal </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> calculate_max_window_horizontal </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>
@@ -7314,11 +8319,31 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00409">calculate_max_window()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00434">calculate_max_window_horizontal()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00131">131</a> of file <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml">Helpers.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00281">ValidRegion::anchor</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00376">BorderSize::bottom</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">ceil_to_multiple()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00377">BorderSize::left</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00375">BorderSize::right</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">arm_compute::test::validation::shape</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00282">ValidRegion::shape</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00374">BorderSize::top</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00409">calculate_max_window()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00434">calculate_max_window_horizontal()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00050">NEGaussian5x5HorKernel::configure()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00044">CLGaussianPyramidHorKernel::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00053">NEGaussianPyramidHorKernel::configure()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00050">CLSobel5x5HorKernel::configure()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00050">CLSobel7x7HorKernel::configure()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00153">NESobel7x7HorKernel::configure()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00050">NESobel5x5HorKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00127">CLSeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, and <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00666">NESeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;{</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    <span class="keywordflow">if</span>(skip_border)</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    {</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a>    = 0;</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">bottom</a> = 0;</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    }</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    {</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>  = 0;</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">right</a> = 0;</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    }</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;anchor = valid_region.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>  = valid_region.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>;</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    <a class="code" href="classarm__compute_1_1_window.xhtml">Window</a> window;</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(0, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                   <span class="comment">// Skip the border left of the image</span></div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;                   anchor[0] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>,</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;                   <span class="comment">// Skip the border right of the image</span></div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                   <span class="comment">// Make sure the window width is a multiple of the step size</span></div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;                   anchor[0] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a> + <a class="code" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a>(std::max(0, static_cast&lt;int&gt;(shape[0]) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">right</a>)), steps[0]),</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;                   steps[0]));</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    <span class="keywordtype">size_t</span> n = 1;</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    <span class="keywordflow">if</span>(anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() &gt; 1)</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;    {</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(1, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;                       <span class="comment">// Skip the border above the image</span></div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;                       anchor[1] - border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a>,</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;                       <span class="comment">// Skip the border below the image</span></div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;                       anchor[1] + shape[1] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">bottom</a>,</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;                       1));</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        ++n;</div><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;</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;    <span class="keywordflow">for</span>(; n &lt; anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>(); ++n)</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;    {</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(anchor[n], std::max&lt;size_t&gt;(1, shape[n])));</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;    }</div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;    <span class="keywordflow">for</span>(; n &lt; Coordinates::num_max_dimensions; ++n)</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;    {</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;        window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(0, 1));</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;    }</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;    <span class="keywordflow">return</span> window;</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;}</div><div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a3fdd42ea34070a54e696b3adc28c4be3"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">arm_compute::BorderSize::top</a></div><div class="ttdeci">unsigned int top</div><div class="ttdoc">top of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00374">Types.h:374</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_tensor_shape_xhtml"><div class="ttname"><a href="classarm__compute_1_1_tensor_shape.xhtml">arm_compute::TensorShape</a></div><div class="ttdoc">Shape of a tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_tensor_shape_8h_source.xhtml#l00039">TensorShape.h:39</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a1fcd64682b37ed3c2098d0094ce788d8"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">arm_compute::ValidRegion::shape</a></div><div class="ttdeci">TensorShape shape</div><div class="ttdoc">Shape of the valid region. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00282">Types.h:282</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml">arm_compute::Window::Dimension</a></div><div class="ttdoc">Describe one of the image&amp;#39;s dimensions with a start, end and step. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00068">Window.h:68</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a802ffcf1b49237efe5be8a314d3f3869"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">arm_compute::BorderSize::bottom</a></div><div class="ttdeci">unsigned int bottom</div><div class="ttdoc">bottom of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00376">Types.h:376</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab237a0a375cf382d52b61653248d3d4a"><div class="ttname"><a href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">arm_compute::ceil_to_multiple</a></div><div class="ttdeci">auto ceil_to_multiple(S value, T divisor) -&gt; decltype(((value+divisor - 1)/divisor) *divisor)</div><div class="ttdoc">Computes the smallest number larger or equal to value that is a multiple of divisor. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">Utils.h:65</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_coordinates_xhtml"><div class="ttname"><a href="classarm__compute_1_1_coordinates.xhtml">arm_compute::Coordinates</a></div><div class="ttdoc">Coordinates of an item. </div><div class="ttdef"><b>Definition:</b> <a href="_coordinates_8h_source.xhtml#l00037">Coordinates.h:37</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_xhtml_acd3d2bba51cb84d34dd7656ad2375a6e"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">arm_compute::Window::set</a></div><div class="ttdeci">void set(size_t dimension, const Dimension &amp;dim)</div><div class="ttdoc">Set the values of a given dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8inl_source.xhtml#l00041">Window.inl:41</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a05374b750b0fc472c34ee61e6f028bba"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">arm_compute::BorderSize::left</a></div><div class="ttdeci">unsigned int left</div><div class="ttdoc">left of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00377">Types.h:377</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a78b0fed184c642b78f32fd34b228a5f9"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">arm_compute::BorderSize::right</a></div><div class="ttdeci">unsigned int right</div><div class="ttdoc">right of the border </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00375">Types.h:375</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a80a5f2d6e3a697c9aad893a3b4242615"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">arm_compute::Dimensions::num_dimensions</a></div><div class="ttdeci">unsigned int num_dimensions() const</div><div class="ttdoc">Returns the effective dimensionality of the tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00122">Dimensions.h:122</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml">arm_compute::Window</a></div><div class="ttdoc">Describe a multidimensional execution window. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00039">Window.h:39</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a55a69b397082accd94221dd10b722cf7"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">arm_compute::ValidRegion::anchor</a></div><div class="ttdeci">Coordinates anchor</div><div class="ttdoc">Anchor for the start of the valid region. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00281">Types.h:281</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a47456b4d520aee1cba80bf6e20f6685a"></a>
+<a id="a47456b4d520aee1cba80bf6e20f6685a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a47456b4d520aee1cba80bf6e20f6685a">&#9670;&nbsp;</a></span>calculate_max_window_horizontal() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -7374,20 +8399,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00434">434</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00434">434</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#a2bbb5d1cdb27c0e8c517cb7c544226c6">calculate_max_enlarged_window()</a>, <a class="el" href="namespacearm__compute.xhtml#a252e257c58bfccbb272c0a5bf81d42cb">calculate_max_window_horizontal()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">ITensorInfo::valid_region()</a>.</p>
+<p class="reference">References <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00082">calculate_max_enlarged_window()</a>, <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00131">calculate_max_window_horizontal()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">ITensorInfo::valid_region()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;{</div><div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a47456b4d520aee1cba80bf6e20f6685a">calculate_max_window_horizontal</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.valid_region(), steps, skip_border, border_size);</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a47456b4d520aee1cba80bf6e20f6685a"><div class="ttname"><a href="namespacearm__compute.xhtml#a47456b4d520aee1cba80bf6e20f6685a">arm_compute::calculate_max_window_horizontal</a></div><div class="ttdeci">Window calculate_max_window_horizontal(const ITensorInfo &amp;info, const Steps &amp;steps=Steps(), bool skip_border=false, BorderSize border_size=BorderSize())</div><div class="ttdoc">Calculate the maximum window used by a horizontal kernel for a given tensor shape and border setting...</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00434">Helpers.h:434</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afa7962c747457714d0944af80cb07058"></a>
+<a id="a60e358f879bf4ca86ad938d1f1ef9a64"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a60e358f879bf4ca86ad938d1f1ef9a64">&#9670;&nbsp;</a></span>calculate_same_pad()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> arm_compute::calculate_same_pad </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> calculate_same_pad </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>input_shape</em>, </td>
@@ -7423,11 +8450,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml" title="Padding and stride information class. ">PadStrideInfo</a> for SAME padding </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00324">324</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">CEIL</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00733">PadStrideInfo::stride()</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 class="reference">Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>, and <a class="el" href="_n_e_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00317">NEDepthwiseConvolutionLayer3x3Kernel::is_optimized_execution_possible()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;{</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> &amp;strides         = conv_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a6e324c1bd1111876469ea247da156147">stride</a>();</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span>   out_width       = std::ceil(<span class="keywordtype">float</span>(input_shape.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#aa87f8fc26981b0f3228a78c83b95b802">x</a>()) / <span class="keywordtype">float</span>(strides.first));</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span>   out_height      = std::ceil(<span class="keywordtype">float</span>(input_shape.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">y</a>()) / <span class="keywordtype">float</span>(strides.second));</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span>   pad_width       = ((out_width - 1) * strides.first + weights_shape.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#aa87f8fc26981b0f3228a78c83b95b802">x</a>() - input_shape.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#aa87f8fc26981b0f3228a78c83b95b802">x</a>());</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span>   pad_height      = ((out_height - 1) * strides.second + weights_shape.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">y</a>() - input_shape.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">y</a>());</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span>   same_pad_left   = pad_width / 2;</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span>   same_pad_top    = pad_height / 2;</div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span>   same_pad_right  = pad_width - same_pad_left;</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span>   same_pad_bottom = pad_height - same_pad_top;</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a>(strides.first, strides.second, same_pad_left, same_pad_right, same_pad_top, same_pad_bottom, DimensionRoundingType::CEIL);</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_aa87f8fc26981b0f3228a78c83b95b802"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#aa87f8fc26981b0f3228a78c83b95b802">arm_compute::Dimensions::x</a></div><div class="ttdeci">T x() const</div><div class="ttdoc">Alias to access the size of the first dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00081">Dimensions.h:81</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a6e324c1bd1111876469ea247da156147"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a6e324c1bd1111876469ea247da156147">arm_compute::PadStrideInfo::stride</a></div><div class="ttdeci">std::pair&lt; unsigned int, unsigned int &gt; stride() const</div><div class="ttdoc">Get the stride. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00733">Types.h:733</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml">arm_compute::PadStrideInfo</a></div><div class="ttdoc">Padding and stride information class. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00685">Types.h:685</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_ac4a1050be02b20b3f791b9a483f3abe2"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">arm_compute::Dimensions::y</a></div><div class="ttdeci">T y() const</div><div class="ttdoc">Alias to access the size of the second dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00086">Dimensions.h:86</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9d714e1b7d9d7818309138b7d830ebcb"></a>
+<a id="a9d714e1b7d9d7818309138b7d830ebcb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d714e1b7d9d7818309138b7d830ebcb">&#9670;&nbsp;</a></span>calculate_subsampled_shape()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -7476,24 +8513,26 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The subsampled tensor shape. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00673">673</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00674">674</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00541">has_format_horizontal_subsampling()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00552">has_format_vertical_subsampling()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>.</p>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00542">has_format_horizontal_subsampling()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00553">has_format_vertical_subsampling()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>.</p>
 
-<p>Referenced by <a class="el" href="reference_2_channel_extract_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::channel_extract()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00336">error_on_tensors_not_subsampled()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;{</div><div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;    TensorShape output{ <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> };</div><div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;</div><div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;    <span class="comment">// Subsample shape only for U or V channel</span></div><div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;    <span class="keywordflow">if</span>(Channel::U == channel || Channel::V == channel || Channel::UNKNOWN == channel)</div><div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;    {</div><div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;        <span class="comment">// Subsample width for the tensor shape when channel is U or V</span></div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">has_format_horizontal_subsampling</a>(format))</div><div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;        {</div><div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;            output.set(0, output.x() / 2<a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>);</div><div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;        }</div><div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;</div><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;        <span class="comment">// Subsample height for the tensor shape when channel is U or V</span></div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">has_format_vertical_subsampling</a>(format))</div><div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;        {</div><div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;            output.set(1, output.y() / 2<a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>);</div><div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;        }</div><div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;    }</div><div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;</div><div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;    <span class="keywordflow">return</span> output;</div><div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a95358b677c5c17f5cc1e369e4a27e2c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">arm_compute::has_format_vertical_subsampling</a></div><div class="ttdeci">bool has_format_vertical_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has vertical subsampling. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00552">Utils.h:552</a></div></div>
+<p class="reference">Referenced by <a class="el" href="reference_2_channel_extract_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::channel_extract()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>, <a class="el" href="_validate_8h_source.xhtml#l00336">error_on_tensors_not_subsampled()</a>, <a class="el" href="_c_l_multi_image_8cpp_source.xhtml#l00048">CLMultiImage::init_auto_padding()</a>, and <a class="el" href="_multi_image_8cpp_source.xhtml#l00048">MultiImage::init_auto_padding()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;{</div><div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;    TensorShape output{ <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> };</div><div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;</div><div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;    <span class="comment">// Subsample shape only for U or V channel</span></div><div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;    <span class="keywordflow">if</span>(Channel::U == channel || Channel::V == channel || Channel::UNKNOWN == channel)</div><div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;    {</div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;        <span class="comment">// Subsample width for the tensor shape when channel is U or V</span></div><div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">has_format_horizontal_subsampling</a>(format))</div><div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;        {</div><div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;            output.set(0, output.x() / 2<a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>);</div><div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;        }</div><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;</div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;        <span class="comment">// Subsample height for the tensor shape when channel is U or V</span></div><div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">has_format_vertical_subsampling</a>(format))</div><div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;        {</div><div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;            output.set(1, output.y() / 2<a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>);</div><div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;        }</div><div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;    }</div><div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;</div><div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;    <span class="keywordflow">return</span> output;</div><div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a95358b677c5c17f5cc1e369e4a27e2c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">arm_compute::has_format_vertical_subsampling</a></div><div class="ttdeci">bool has_format_vertical_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has vertical subsampling. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00553">Utils.h:553</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">arm_compute::Channel::U</a></div><div class="ttdoc">Cb/U channel. </div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_aa2f22cc01532e0236e438324310fdb94"><div class="ttname"><a href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">arm_compute::has_format_horizontal_subsampling</a></div><div class="ttdeci">bool has_format_horizontal_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has horizontal subsampling. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00541">Utils.h:541</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_aa2f22cc01532e0236e438324310fdb94"><div class="ttname"><a href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">arm_compute::has_format_horizontal_subsampling</a></div><div class="ttdeci">bool has_format_horizontal_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has horizontal subsampling. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00542">Utils.h:542</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a4f83578a33b502bf6419ead091249423"></a>
+<a id="a45509a321422cd1542958b5c33021bda"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45509a321422cd1542958b5c33021bda">&#9670;&nbsp;</a></span>calculate_valid_region_scale()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> arm_compute::calculate_valid_region_scale </td>
+          <td class="memname"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> calculate_valid_region_scale </td>
           <td>(</td>
           <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
           <td class="paramname"><em>src_info</em>, </td>
@@ -7543,11 +8582,32 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The corresponding valid region </dd></dl>
 
-<p>Referenced by <a class="el" href="validation_2_c_l_2_scale_8cpp_source.xhtml#l00072">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="validation_2_c_l_2_scale_8cpp_source.xhtml#l00121">arm_compute::test::validation::FIXTURE_DATA_TEST_CASE()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00184">184</a> of file <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml">Helpers.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00281">ValidRegion::anchor</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>, <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">CENTER</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00251">arm_compute::test::validation::data_layout</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00326">get_data_layout_dimension_index()</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00282">ValidRegion::shape</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00107">arm_compute::test::validation::valid_region</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">ITensorInfo::valid_region()</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="validation_2_c_l_2_scale_8cpp_source.xhtml#l00198">arm_compute::test::validation::combine()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00047">GCScaleKernel::configure()</a>, <a class="el" href="validation_2_c_l_2_scale_8cpp_source.xhtml#l00119">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="validation_2_c_l_2_scale_8cpp_source.xhtml#l00168">arm_compute::test::validation::FIXTURE_DATA_TEST_CASE()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;{</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;    <span class="keyword">const</span> <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a> = src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">data_layout</a>();</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span>        idx_width   = <a class="code" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">get_data_layout_dimension_index</a>(data_layout, DataLayoutDimension::WIDTH);</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span>        idx_height  = <a class="code" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">get_data_layout_dimension_index</a>(data_layout, DataLayoutDimension::HEIGHT);</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> scale_x        = <span class="keyword">static_cast&lt;</span><span class="keywordtype">float</span><span class="keyword">&gt;</span>(dst_shape[idx_width]) / src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">tensor_shape</a>()[idx_width];</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> scale_y        = <span class="keyword">static_cast&lt;</span><span class="keywordtype">float</span><span class="keyword">&gt;</span>(dst_shape[idx_height]) / src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">tensor_shape</a>()[idx_height];</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> sampling_point = (sampling_policy == SamplingPolicy::CENTER) ? 0.5f : 0.0f;</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;    <span class="comment">// Get input&#39;s valid region start and end points</span></div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span> valid_start_in_x = src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[idx_width];</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span> valid_start_in_y = src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[idx_height];</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span> valid_end_in_x   = src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[idx_width] + src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>[idx_width];</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span> valid_end_in_y   = src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[idx_height] + src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>[idx_height];</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;    <span class="comment">// Initialize output&#39;s valid region start and end points</span></div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    <span class="keyword">auto</span> valid_start_out_x = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(valid_start_in_x * scale_x);</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;    <span class="keyword">auto</span> valid_start_out_y = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(valid_start_in_y * scale_y);</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    <span class="keyword">auto</span> valid_end_out_x   = std::min&lt;int&gt;(std::ceil(valid_end_in_x * scale_x), dst_shape[idx_width]);</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    <span class="keyword">auto</span> valid_end_out_y   = std::min&lt;int&gt;(std::ceil(valid_end_in_y * scale_y), dst_shape[idx_height]);</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    <span class="comment">// Handle valid points in case of the bi-linear interpolation</span></div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;    <span class="keywordflow">if</span>(border_undefined)</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    {</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        <span class="keywordflow">switch</span>(interpolate_policy)</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        {</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;            <span class="keywordflow">case</span> InterpolationPolicy::NEAREST_NEIGHBOR:</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;            {</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;                <span class="comment">// (start_out + sampling_point) &gt;= (start_in * scale)</span></div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;                <span class="comment">// start_out = ceil((start_in * scale) - sampling_point)</span></div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;                valid_start_out_x = std::ceil(valid_start_in_x * scale_x - sampling_point);</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;                valid_start_out_y = std::ceil(valid_start_in_y * scale_y - sampling_point);</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;                <span class="comment">// (end_out - 1 + sampling_point) &lt; (end_in * scale)</span></div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;                <span class="comment">// end_out   = ceil((end_in * scale) - sampling_point); // &lt;-- ceil(x - 1) strictly less</span></div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;                valid_end_out_x = std::ceil(valid_end_in_x * scale_x - sampling_point);</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;                valid_end_out_y = std::ceil(valid_end_in_y * scale_y - sampling_point);</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;                <span class="keywordflow">break</span>;</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;            }</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;            <span class="keywordflow">case</span> InterpolationPolicy::BILINEAR:</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;            {</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;                <span class="comment">// (start_out + sampling_point) &gt;= ((start_in + sampling_point) * scale)</span></div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;                <span class="comment">// start_out = ceil(((start_in + sampling_point) * scale) - sampling_point)</span></div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;                valid_start_out_x = std::ceil((valid_start_in_x + sampling_point) * scale_x - sampling_point);</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;                valid_start_out_y = std::ceil((valid_start_in_y + sampling_point) * scale_y - sampling_point);</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;                <span class="comment">// (end_out - 1 + sampling_point) &lt;= ((end_in - 1 + sampling_point) * scale)</span></div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;                <span class="comment">// end_out   = floor(((end_in - 1 + sampling_point) * scale) - sampling_point + 1)</span></div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;                valid_end_out_x = std::floor((valid_end_in_x - 1.f + sampling_point) * scale_x - sampling_point + 1.f);</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;                valid_end_out_y = std::floor((valid_end_in_y - 1.f + sampling_point) * scale_y - sampling_point + 1.f);</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;                <span class="keywordflow">break</span>;</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;            }</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;            <span class="keywordflow">case</span> InterpolationPolicy::AREA:</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;                <span class="keywordflow">break</span>;</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;            <span class="keywordflow">default</span>:</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;            {</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;                <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Invalid InterpolationPolicy&quot;</span>);</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;                <span class="keywordflow">break</span>;</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;            }</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;        }</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    }</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    <span class="comment">// Setup output valid region</span></div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;    <a class="code" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>{ <a class="code" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a>(), dst_shape, src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">tensor_shape</a>().<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() };</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a982730e6f0da5f9490f59bc5f6bb3f27">set</a>(idx_width, std::max(0, valid_start_out_x));</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a982730e6f0da5f9490f59bc5f6bb3f27">set</a>(idx_height, std::max(0, valid_start_out_y));</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>.<a class="code" href="classarm__compute_1_1_tensor_shape.xhtml#a9c54fb6cea3557692fe7c00c40bb40ad">set</a>(idx_width, std::min&lt;size_t&gt;(valid_end_out_x - valid_start_out_x, dst_shape[idx_width]));</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>.<a class="code" href="classarm__compute_1_1_tensor_shape.xhtml#a9c54fb6cea3557692fe7c00c40bb40ad">set</a>(idx_height, std::min&lt;size_t&gt;(valid_end_out_y - valid_start_out_y, dst_shape[idx_height]));</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>;</div><div class="line"><a name="l00258"></a><span class="lineno">  258</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a1fcd64682b37ed3c2098d0094ce788d8"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">arm_compute::ValidRegion::shape</a></div><div class="ttdeci">TensorShape shape</div><div class="ttdoc">Shape of the valid region. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00282">Types.h:282</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00251">Winograd.cpp:251</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a982730e6f0da5f9490f59bc5f6bb3f27"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a982730e6f0da5f9490f59bc5f6bb3f27">arm_compute::Dimensions::set</a></div><div class="ttdeci">void set(size_t dimension, T value)</div><div class="ttdoc">Accessor to set the value of one of the dimensions. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00074">Dimensions.h:74</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_i_tensor_info_xhtml_a74dfd07380a290c34fe7c8e065029b95"><div class="ttname"><a href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">arm_compute::ITensorInfo::valid_region</a></div><div class="ttdeci">virtual ValidRegion valid_region() const =0</div><div class="ttdoc">Valid region of the tensor. </div></div>
+<div class="ttc" id="classarm__compute_1_1_i_tensor_info_xhtml_a7c66505457d00ece3aa4b34cab80757d"><div class="ttname"><a href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">arm_compute::ITensorInfo::tensor_shape</a></div><div class="ttdeci">virtual const TensorShape &amp; tensor_shape() const =0</div><div class="ttdoc">Size for each dimension of the tensor. </div></div>
+<div class="ttc" id="classarm__compute_1_1_coordinates_xhtml"><div class="ttname"><a href="classarm__compute_1_1_coordinates.xhtml">arm_compute::Coordinates</a></div><div class="ttdoc">Coordinates of an item. </div><div class="ttdef"><b>Definition:</b> <a href="_coordinates_8h_source.xhtml#l00037">Coordinates.h:37</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7819bcbbf45c2e7c1396a137dce54422"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">arm_compute::test::validation::valid_region</a></div><div class="ttdeci">const ValidRegion valid_region</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00107">ArithmeticDivision.cpp:107</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a80a5f2d6e3a697c9aad893a3b4242615"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">arm_compute::Dimensions::num_dimensions</a></div><div class="ttdeci">unsigned int num_dimensions() const</div><div class="ttdoc">Returns the effective dimensionality of the tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00122">Dimensions.h:122</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_tensor_shape_xhtml_a9c54fb6cea3557692fe7c00c40bb40ad"><div class="ttname"><a href="classarm__compute_1_1_tensor_shape.xhtml#a9c54fb6cea3557692fe7c00c40bb40ad">arm_compute::TensorShape::set</a></div><div class="ttdeci">TensorShape &amp; set(size_t dimension, size_t value, bool apply_dim_correction=true)</div><div class="ttdoc">Accessor to set the value of one of the dimensions. </div><div class="ttdef"><b>Definition:</b> <a href="_tensor_shape_8h_source.xhtml#l00078">TensorShape.h:78</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml">arm_compute::ValidRegion</a></div><div class="ttdoc">Container for valid region of a window. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00209">Types.h:209</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a46e938020a3ac8c926d0590b7fe957db"><div class="ttname"><a href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">arm_compute::get_data_layout_dimension_index</a></div><div class="ttdeci">size_t get_data_layout_dimension_index(const DataLayout data_layout, const DataLayoutDimension data_layout_dimension)</div><div class="ttdoc">Get the index of the given dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00326">Helpers.inl:326</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a></div><div class="ttdeci">DataLayout</div><div class="ttdoc">[DataLayout enum definition] </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00111">Types.h:111</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a55a69b397082accd94221dd10b722cf7"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">arm_compute::ValidRegion::anchor</a></div><div class="ttdeci">Coordinates anchor</div><div class="ttdoc">Anchor for the start of the valid region. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00281">Types.h:281</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_i_tensor_info_xhtml_a367b5090ab432bc7de2c32369e087ab1"><div class="ttname"><a href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">arm_compute::ITensorInfo::data_layout</a></div><div class="ttdeci">virtual DataLayout data_layout() const =0</div><div class="ttdoc">Get the data layout of the tensor. </div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="adf0c6059174045f80af46a0f1fb57bc6"></a>
+<a id="ab237a0a375cf382d52b61653248d3d4a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab237a0a375cf382d52b61653248d3d4a">&#9670;&nbsp;</a></span>ceil_to_multiple()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -7590,17 +8650,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the result. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00064">64</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">65</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00051">DIV_CEIL()</a>.</p>
-
-<p>Referenced by <a class="el" href="validation_2_c_l_2_remap_8cpp_source.xhtml#l00053">arm_compute::test::validation::DATA_TEST_CASE()</a>, and <a class="el" href="_window_8inl_source.xhtml#l00134">Window::scale()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;{</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(value &lt; 0 || divisor &lt;= 0);</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a12705a88669cb9fb90451ebe0db53c41">DIV_CEIL</a>(value, divisor) * divisor;</div><div class="line"><a name="l00068"></a><span class="lineno">   68</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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a12705a88669cb9fb90451ebe0db53c41"><div class="ttname"><a href="namespacearm__compute.xhtml#a12705a88669cb9fb90451ebe0db53c41">arm_compute::DIV_CEIL</a></div><div class="ttdeci">constexpr auto DIV_CEIL(S val, T m) -&gt; decltype((val+m-1)/m)</div><div class="ttdoc">Calculate the rounded up quotient of val / m. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00051">Utils.h:51</a></div></div>
+<p class="reference">Referenced by <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00082">calculate_max_enlarged_window()</a>, <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00028">calculate_max_window()</a>, <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00131">calculate_max_window_horizontal()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00042">GCLogits1DMaxKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00039">CLIntegralImageHorKernel::configure()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00040">GCTransposeKernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00047">GCScaleKernel::configure()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00437">NELogits1DMaxKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00044">GCGEMMMatrixAccumulateBiasesKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00083">CLGEMMMatrixVectorMultiplyKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00062">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00042">CLMemsetKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00213">NEGEMMMatrixVectorMultiplyKernel::configure()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00051">GCDepthwiseConvolutionLayer3x3Kernel::configure()</a>, <a class="el" href="_c_l_mean_std_dev_kernel_8cpp_source.xhtml#l00066">CLMeanStdDevKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_n_e_remap_kernel_8cpp_source.xhtml#l00076">NERemapKernel::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00107">GCLogits1DShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_mean_std_dev_kernel_8cpp_source.xhtml#l00097">NEMeanStdDevKernel::configure()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00104">CLStridedSliceKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_interleaved_wrapper_8cpp_source.xhtml#l00141">NEGEMMInterleavedWrapper::configure()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00044">GCCol2ImKernel::configure()</a>, <a class="el" href="_g_c_im2_col_kernel_8cpp_source.xhtml#l00067">GCIm2ColKernel::configure()</a>, <a class="el" href="validation_2_c_l_2_remap_8cpp_source.xhtml#l00053">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_i_g_c_kernel_8cpp_source.xhtml#l00069">IGCKernel::kernel()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00829">NEGEMMLowpMatrixMultiplyKernel::run()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00347">CLIm2ColKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00279">NEGEMMLowpMatrixBReductionKernel::run()</a>, <a class="el" href="_window_8inl_source.xhtml#l00134">Window::scale()</a>, and <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;{</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(value &lt; 0 || divisor &lt;= 0);</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#acac1575c0edd329ceb4a54d9fe8dcb08">DIV_CEIL</a>(value, divisor) * divisor;</div><div class="line"><a name="l00069"></a><span class="lineno">   69</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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_acac1575c0edd329ceb4a54d9fe8dcb08"><div class="ttname"><a href="namespacearm__compute.xhtml#acac1575c0edd329ceb4a54d9fe8dcb08">arm_compute::DIV_CEIL</a></div><div class="ttdeci">constexpr auto DIV_CEIL(S val, T m) -&gt; decltype((val+m - 1)/m)</div><div class="ttdoc">Calculate the rounded up quotient of val / m. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00052">Utils.h:52</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afab149f8d8b0f6405303ee8056fa77d3"></a>
+<a id="afab149f8d8b0f6405303ee8056fa77d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afab149f8d8b0f6405303ee8056fa77d3">&#9670;&nbsp;</a></span>channel_idx_from_format()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -7642,21 +8702,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The channel index of the specific channel of the specific format </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00312">312</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00313">313</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
 
-<p>Referenced by <a class="el" href="reference_2_channel_extract_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::channel_extract()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;{</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    {</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;        {</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;            {</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;                <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;                <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;                <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;                    <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;            }</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;        }</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;        {</div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;            {</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;                <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;                <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;                <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;                    <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;                <span class="keywordflow">case</span> Channel::A:</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;                    <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;            }</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;        }</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;        {</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;            {</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;                    <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;            }</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;        }</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        {</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;            {</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;                    <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;            }</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;        }</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;        {</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;            {</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;                    <span class="keywordflow">return</span> 0;</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 class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;        {</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;            {</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;            }</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;        }</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</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;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;            {</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;            }</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;        }</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported format&quot;</span>);</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;    }</div><div class="line"><a name="l00428"></a><span class="lineno">  428</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#l00261">Error.h:261</a></div></div>
+<p class="reference">Referenced by <a class="el" href="reference_2_channel_extract_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::channel_extract()</a>, and <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;{</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    {</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;        {</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;            {</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;                <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;                <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;                <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;                    <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;            }</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        }</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;        {</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;            {</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;                <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;                <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;                <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;                    <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;                <span class="keywordflow">case</span> Channel::A:</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;                    <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;            }</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;        }</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;        {</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;            {</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;                    <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;            }</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;        }</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;        {</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;            {</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;                    <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;            }</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;        }</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;        {</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><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">case</span> Channel::Y:</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;                    <span class="keywordflow">return</span> 1;</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;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;            }</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;        }</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;        {</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;            {</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;            }</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;        }</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;        {</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;            {</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;            }</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;        }</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported format&quot;</span>);</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;    }</div><div class="line"><a name="l00429"></a><span class="lineno">  429</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afd16b14c21838b5e9858f41d80bdcce7"></a>
+<a id="a7f5aff064f09dd7f355aaaf7641bf7d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f5aff064f09dd7f355aaaf7641bf7d3">&#9670;&nbsp;</a></span>cl_winograd_convolution_layer_supported()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">bool arm_compute::cl_winograd_convolution_layer_supported </td>
+          <td class="memname">bool cl_winograd_convolution_layer_supported </td>
           <td>(</td>
           <td class="paramtype">const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;&#160;</td>
           <td class="paramname"><em>output_tile</em>, </td>
@@ -7692,9 +8754,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the configuration is supported </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00190">190</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_size2_d_8h_source.xhtml#l00093">Size2D::height</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00092">Size2D::width</a>.</p>
+<div class="fragment"><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;{</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a> == DataLayout::UNKNOWN);</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="keyword">using</span> WinogradConfiguration = std::pair&lt;std::pair&lt;int, int&gt;, std::pair&lt;int, int&gt;&gt;;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    std::vector&lt;WinogradConfiguration&gt; winograd_configs_nchw =</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    {</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(1, 2), std::pair&lt;int, int&gt;(1, 3)),</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(1, 4), std::pair&lt;int, int&gt;(1, 3)),</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(2, 1), std::pair&lt;int, int&gt;(3, 1)),</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(4, 1), std::pair&lt;int, int&gt;(3, 1)),</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(2, 2), std::pair&lt;int, int&gt;(3, 3)),</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(4, 4), std::pair&lt;int, int&gt;(3, 3)),</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(4, 4), std::pair&lt;int, int&gt;(5, 5)),</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(4, 1), std::pair&lt;int, int&gt;(5, 1)),</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(1, 4), std::pair&lt;int, int&gt;(1, 5))</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    };</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    std::vector&lt;WinogradConfiguration&gt; winograd_configs_nhwc =</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    {</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(2, 2), std::pair&lt;int, int&gt;(3, 3)),</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(1, 4), std::pair&lt;int, int&gt;(1, 3)),</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(4, 1), std::pair&lt;int, int&gt;(3, 1)),</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(4, 4), std::pair&lt;int, int&gt;(3, 3)),</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(4, 4), std::pair&lt;int, int&gt;(5, 5)),</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(4, 1), std::pair&lt;int, int&gt;(5, 1)),</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;        WinogradConfiguration(std::pair&lt;int, int&gt;(1, 4), std::pair&lt;int, int&gt;(1, 5))</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    };</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    <span class="keyword">auto</span> p = std::make_pair(std::pair&lt;int, int&gt;(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62aa9469ab6f4dac26615fa705f55354">output_tile</a>.width, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62aa9469ab6f4dac26615fa705f55354">output_tile</a>.height),</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;                            std::pair&lt;int, int&gt;(kernel_size.width, kernel_size.height));</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    <span class="comment">// Return true if supported</span></div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a> == DataLayout::NCHW)</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    {</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;        <span class="keywordflow">return</span> (std::find(winograd_configs_nchw.begin(), winograd_configs_nchw.end(), p) != winograd_configs_nchw.end());</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;    }</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;    {</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;        <span class="keywordflow">return</span> (std::find(winograd_configs_nhwc.begin(), winograd_configs_nhwc.end(), p) != winograd_configs_nhwc.end());</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    }</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a62aa9469ab6f4dac26615fa705f55354"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a62aa9469ab6f4dac26615fa705f55354">arm_compute::test::validation::output_tile</a></div><div class="ttdeci">output_tile</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00420">Winograd.cpp:420</a></div></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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00251">Winograd.cpp:251</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="af2be1325decaa34a8a1199af177148c6"></a>
+<a id="af2be1325decaa34a8a1199af177148c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af2be1325decaa34a8a1199af177148c6">&#9670;&nbsp;</a></span>colorconvert_iyuv_to_nv12()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -7734,15 +8805,19 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00601">601</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00665">665</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;{</div><div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;    win.validate();</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;</div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;</div><div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;    Iterator in_u(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;    Iterator in_v(input_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;    Iterator out_uv(output_ptr-&gt;plane(1), win_uv);</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;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;    {</div><div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span>   ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span>   ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;        uint8x16x2_t ta_uv;</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;        ta_uv.val[0] = vld1q_u8(in_u.ptr());</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;        ta_uv.val[1] = vld1q_u8(in_v.ptr());</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;        <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;        <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;</div><div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;        vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;        vst2q_u8(out_uv.ptr(), ta_uv);</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;    },</div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;    in_y, in_u, in_v, out_y, out_uv);</div><div class="line"><a name="l00639"></a><span class="lineno">  639</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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00426">NEColorConvertKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;{</div><div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;    win.validate();</div><div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;</div><div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;</div><div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;</div><div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;    Iterator in_u(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;    Iterator in_v(input_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;    Iterator out_uv(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;</div><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;    {</div><div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span>   ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span>   ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;        uint8x16x2_t ta_uv;</div><div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;        ta_uv.val[0] = vld1q_u8(in_u.ptr());</div><div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;        ta_uv.val[1] = vld1q_u8(in_v.ptr());</div><div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;        <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;        <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;</div><div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;        vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;        vst2q_u8(out_uv.ptr(), ta_uv);</div><div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;    },</div><div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;    in_y, in_u, in_v, out_y, out_uv);</div><div class="line"><a name="l00703"></a><span class="lineno">  703</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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a6e42fac1baa264b033ac430b63ebd145"></a>
+<a id="a6e42fac1baa264b033ac430b63ebd145"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e42fac1baa264b033ac430b63ebd145">&#9670;&nbsp;</a></span>colorconvert_iyuv_to_rgb()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -7782,19 +8857,21 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00482">482</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00547">547</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00242">arm_compute::test::validation::out</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a6b14f175bf5281f57b561e2d4e4b1f1f">ITensorInfo::strides_in_bytes()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00086">Dimensions&lt; T &gt;::y()</a>, <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>, and <a class="el" href="_color_convert_helper_8h_source.xhtml#l00155">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;{</div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;    win.validate();</div><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="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;    constexpr <span class="keyword">auto</span> element_size = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a> ? 32 : 24;</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span>     out_stride   = output_ptr-&gt;info()-&gt;strides_in_bytes().y();</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;    Iterator in_u(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;    Iterator in_v(input_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;    {</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_u        = vld1q_u8(in_u.ptr());</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_v        = vld1q_u8(in_v.ptr());</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;        <span class="comment">//ta_u.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;        <span class="comment">//ta_v.val[0] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;        <span class="comment">// Convert the uint8x16x4_t to float32x4x4_t</span></div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;        float32x4x4_t yvec_top, yyvec_top, yvec_bottom, yyvec_bottom, uvec, vvec;</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;        convert_uint8x16_to_float32x4x4(ta_y_top.val[0], yvec_top);</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;        convert_uint8x16_to_float32x4x4(ta_y_top.val[1], yyvec_top);</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;        convert_uint8x16_to_float32x4x4(ta_y_bottom.val[0], yvec_bottom);</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;        convert_uint8x16_to_float32x4x4(ta_y_bottom.val[1], yyvec_bottom);</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;        convert_uint8x16_to_float32x4x4(ta_u, uvec);</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;        convert_uint8x16_to_float32x4x4(ta_v, vvec);</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[0], uvec.val[0], yyvec_top.val[0], vvec.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[1], uvec.val[1], yyvec_top.val[1], vvec.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[2], uvec.val[2], yyvec_top.val[2], vvec.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[3], uvec.val[3], yyvec_top.val[3], vvec.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</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;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[0], uvec.val[0], yyvec_bottom.val[0], vvec.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[1], uvec.val[1], yyvec_bottom.val[1], vvec.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[2], uvec.val[2], yyvec_bottom.val[2], vvec.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[3], uvec.val[3], yyvec_bottom.val[3], vvec.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;    },</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;    in_y, in_u, in_v, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00536"></a><span class="lineno">  536</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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail_xhtml_a2a36a93e164b484404fe908cefd6099a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation</a></div><div class="ttdeci">void yuyv_to_rgb_calculation(const SimpleTensor&lt; T &gt; yvec, const SimpleTensor&lt; T &gt; vvec, const SimpleTensor&lt; T &gt; yyvec, const SimpleTensor&lt; T &gt; uvec, SimpleTensor&lt; T &gt; &amp;dst)</div><div class="ttdef"><b>Definition:</b> <a href="_color_convert_helper_8h_source.xhtml#l00155">ColorConvertHelper.h:155</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00242">Winograd.cpp:242</a></div></div>
+<p class="reference">References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00266">arm_compute::test::validation::out</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a6b14f175bf5281f57b561e2d4e4b1f1f">ITensorInfo::strides_in_bytes()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00086">Dimensions&lt; T &gt;::y()</a>, <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>, and <a class="el" href="_color_convert_helper_8h_source.xhtml#l00159">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;{</div><div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;    win.validate();</div><div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;</div><div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;    constexpr <span class="keyword">auto</span> element_size = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a> ? 32 : 24;</div><div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span>     out_stride   = output_ptr-&gt;info()-&gt;strides_in_bytes().y();</div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;</div><div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;</div><div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;    Iterator in_u(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;    Iterator in_v(input_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;</div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</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;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_u        = vld1q_u8(in_u.ptr());</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_v        = vld1q_u8(in_v.ptr());</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;        <span class="comment">//ta_u.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;        <span class="comment">//ta_v.val[0] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;        <span class="comment">// Convert the uint8x16x4_t to float32x4x4_t</span></div><div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;        float32x4x4_t yvec_top     = convert_uint8x16_to_float32x4x4(ta_y_top.val[0]);</div><div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;        float32x4x4_t yyvec_top    = convert_uint8x16_to_float32x4x4(ta_y_top.val[1]);</div><div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;        float32x4x4_t yvec_bottom  = convert_uint8x16_to_float32x4x4(ta_y_bottom.val[0]);</div><div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;        float32x4x4_t yyvec_bottom = convert_uint8x16_to_float32x4x4(ta_y_bottom.val[1]);</div><div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;        float32x4x4_t uvec         = convert_uint8x16_to_float32x4x4(ta_u);</div><div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;        float32x4x4_t vvec         = convert_uint8x16_to_float32x4x4(ta_v);</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;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[0], uvec.val[0], yyvec_top.val[0], vvec.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[1], uvec.val[1], yyvec_top.val[1], vvec.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[2], uvec.val[2], yyvec_top.val[2], vvec.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[3], uvec.val[3], yyvec_top.val[3], vvec.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;</div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[0], uvec.val[0], yyvec_bottom.val[0], vvec.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[1], uvec.val[1], yyvec_bottom.val[1], vvec.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[2], uvec.val[2], yyvec_bottom.val[2], vvec.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[3], uvec.val[3], yyvec_bottom.val[3], vvec.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;    },</div><div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;    in_y, in_u, in_v, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00600"></a><span class="lineno">  600</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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail_xhtml_a2a36a93e164b484404fe908cefd6099a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation</a></div><div class="ttdeci">void yuyv_to_rgb_calculation(const SimpleTensor&lt; T &gt; yvec, const SimpleTensor&lt; T &gt; vvec, const SimpleTensor&lt; T &gt; yyvec, const SimpleTensor&lt; T &gt; uvec, SimpleTensor&lt; T &gt; &amp;dst)</div><div class="ttdef"><b>Definition:</b> <a href="_color_convert_helper_8h_source.xhtml#l00159">ColorConvertHelper.h:159</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00266">Winograd.cpp:266</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a62197192f0fbf4e0675eb37be1c4c175"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">arm_compute::test::validation::alpha</a></div><div class="ttdeci">alpha</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">GEMM.cpp:87</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a08e9d88293a5cef787bb324c2dc0a6bf"></a>
+<a id="a08e9d88293a5cef787bb324c2dc0a6bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08e9d88293a5cef787bb324c2dc0a6bf">&#9670;&nbsp;</a></span>colorconvert_iyuv_to_yuv4()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -7834,15 +8911,19 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00816">816</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00880">880</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;{</div><div class="line"><a name="l00818"></a><span class="lineno">  818</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160;    win.validate();</div><div class="line"><a name="l00821"></a><span class="lineno">  821</span>&#160;</div><div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160;</div><div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;</div><div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;    Iterator in_u(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;    Iterator in_v(input_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win);</div><div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win);</div><div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;</div><div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;    {</div><div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_u        = vld1q_u8(in_u.ptr());</div><div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_v        = vld1q_u8(in_v.ptr());</div><div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;        <span class="comment">//ta_u = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;        <span class="comment">//ta_v = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;</div><div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160;        vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00850"></a><span class="lineno">  850</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00851"></a><span class="lineno">  851</span>&#160;</div><div class="line"><a name="l00852"></a><span class="lineno">  852</span>&#160;        uint8x16x2_t uvec;</div><div class="line"><a name="l00853"></a><span class="lineno">  853</span>&#160;        uvec.val[0] = ta_u;</div><div class="line"><a name="l00854"></a><span class="lineno">  854</span>&#160;        uvec.val[1] = ta_u;</div><div class="line"><a name="l00855"></a><span class="lineno">  855</span>&#160;        vst2q_u8(out_u.ptr(), uvec);</div><div class="line"><a name="l00856"></a><span class="lineno">  856</span>&#160;        vst2q_u8(out_u.ptr() + output_ptr-&gt;plane(1)-&gt;info()-&gt;strides_in_bytes().y(), uvec);</div><div class="line"><a name="l00857"></a><span class="lineno">  857</span>&#160;</div><div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;        uint8x16x2_t vvec;</div><div class="line"><a name="l00859"></a><span class="lineno">  859</span>&#160;        vvec.val[0] = ta_v;</div><div class="line"><a name="l00860"></a><span class="lineno">  860</span>&#160;        vvec.val[1] = ta_v;</div><div class="line"><a name="l00861"></a><span class="lineno">  861</span>&#160;        vst2q_u8(out_v.ptr(), vvec);</div><div class="line"><a name="l00862"></a><span class="lineno">  862</span>&#160;        vst2q_u8(out_v.ptr() + output_ptr-&gt;plane(2)-&gt;info()-&gt;strides_in_bytes().y(), vvec);</div><div class="line"><a name="l00863"></a><span class="lineno">  863</span>&#160;    },</div><div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;    in_y, in_u, in_v, out_y, out_u, out_v);</div><div class="line"><a name="l00865"></a><span class="lineno">  865</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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00426">NEColorConvertKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00881"></a><span class="lineno">  881</span>&#160;{</div><div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00883"></a><span class="lineno">  883</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00884"></a><span class="lineno">  884</span>&#160;    win.validate();</div><div class="line"><a name="l00885"></a><span class="lineno">  885</span>&#160;</div><div class="line"><a name="l00886"></a><span class="lineno">  886</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00887"></a><span class="lineno">  887</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00888"></a><span class="lineno">  888</span>&#160;</div><div class="line"><a name="l00889"></a><span class="lineno">  889</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00890"></a><span class="lineno">  890</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00891"></a><span class="lineno">  891</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;</div><div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;    Iterator in_u(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;    Iterator in_v(input_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00899"></a><span class="lineno">  899</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win);</div><div class="line"><a name="l00900"></a><span class="lineno">  900</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win);</div><div class="line"><a name="l00901"></a><span class="lineno">  901</span>&#160;</div><div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;    {</div><div class="line"><a name="l00904"></a><span class="lineno">  904</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00905"></a><span class="lineno">  905</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00906"></a><span class="lineno">  906</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_u        = vld1q_u8(in_u.ptr());</div><div class="line"><a name="l00907"></a><span class="lineno">  907</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_v        = vld1q_u8(in_v.ptr());</div><div class="line"><a name="l00908"></a><span class="lineno">  908</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00909"></a><span class="lineno">  909</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00910"></a><span class="lineno">  910</span>&#160;        <span class="comment">//ta_u = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00911"></a><span class="lineno">  911</span>&#160;        <span class="comment">//ta_v = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00912"></a><span class="lineno">  912</span>&#160;</div><div class="line"><a name="l00913"></a><span class="lineno">  913</span>&#160;        vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00914"></a><span class="lineno">  914</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00915"></a><span class="lineno">  915</span>&#160;</div><div class="line"><a name="l00916"></a><span class="lineno">  916</span>&#160;        uint8x16x2_t uvec;</div><div class="line"><a name="l00917"></a><span class="lineno">  917</span>&#160;        uvec.val[0] = ta_u;</div><div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;        uvec.val[1] = ta_u;</div><div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;        vst2q_u8(out_u.ptr(), uvec);</div><div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;        vst2q_u8(out_u.ptr() + output_ptr-&gt;plane(1)-&gt;info()-&gt;strides_in_bytes().y(), uvec);</div><div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;</div><div class="line"><a name="l00922"></a><span class="lineno">  922</span>&#160;        uint8x16x2_t vvec;</div><div class="line"><a name="l00923"></a><span class="lineno">  923</span>&#160;        vvec.val[0] = ta_v;</div><div class="line"><a name="l00924"></a><span class="lineno">  924</span>&#160;        vvec.val[1] = ta_v;</div><div class="line"><a name="l00925"></a><span class="lineno">  925</span>&#160;        vst2q_u8(out_v.ptr(), vvec);</div><div class="line"><a name="l00926"></a><span class="lineno">  926</span>&#160;        vst2q_u8(out_v.ptr() + output_ptr-&gt;plane(2)-&gt;info()-&gt;strides_in_bytes().y(), vvec);</div><div class="line"><a name="l00927"></a><span class="lineno">  927</span>&#160;    },</div><div class="line"><a name="l00928"></a><span class="lineno">  928</span>&#160;    in_y, in_u, in_v, out_y, out_u, out_v);</div><div class="line"><a name="l00929"></a><span class="lineno">  929</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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a199d36780fbb4a70168f290480673650"></a>
+<a id="a199d36780fbb4a70168f290480673650"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a199d36780fbb4a70168f290480673650">&#9670;&nbsp;</a></span>colorconvert_nv12_to_iyuv()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -7882,15 +8963,17 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00649">649</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00713">713</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;{</div><div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;    win.validate();</div><div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;</div><div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;</div><div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;    constexpr <span class="keyword">auto</span> shift = uv ? 0 : 1;</div><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;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;</div><div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;    Iterator in_uv(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;</div><div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;    {</div><div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_uv       = vld2q_u8(in_uv.ptr());</div><div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;        <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;        <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;</div><div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;        vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;        vst1q_u8(out_u.ptr(), ta_uv.val[0 + shift]);</div><div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;        vst1q_u8(out_v.ptr(), ta_uv.val[1 - shift]);</div><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;    },</div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;    in_y, in_uv, out_y, out_u, out_v);</div><div class="line"><a name="l00688"></a><span class="lineno">  688</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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;{</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;    win.validate();</div><div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;</div><div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;</div><div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;    constexpr <span class="keyword">auto</span> shift = uv ? 0 : 1;</div><div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;</div><div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;</div><div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;    Iterator in_uv(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;</div><div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;    {</div><div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_uv       = vld2q_u8(in_uv.ptr());</div><div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;        <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;        <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;</div><div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;        vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;        vst1q_u8(out_u.ptr(), ta_uv.val[0 + shift]);</div><div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;        vst1q_u8(out_v.ptr(), ta_uv.val[1 - shift]);</div><div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;    },</div><div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;    in_y, in_uv, out_y, out_u, out_v);</div><div class="line"><a name="l00752"></a><span class="lineno">  752</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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ae6a44e412bccc0705a720708b0692218"></a>
+<a id="ae6a44e412bccc0705a720708b0692218"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6a44e412bccc0705a720708b0692218">&#9670;&nbsp;</a></span>colorconvert_nv12_to_rgb()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -7930,19 +9013,21 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00419">419</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00485">485</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00242">arm_compute::test::validation::out</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a6b14f175bf5281f57b561e2d4e4b1f1f">ITensorInfo::strides_in_bytes()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00086">Dimensions&lt; T &gt;::y()</a>, <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>, and <a class="el" href="_color_convert_helper_8h_source.xhtml#l00155">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;{</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;    win.validate();</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;    constexpr <span class="keyword">auto</span> element_size = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a> ? 32 : 24;</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span>     out_stride   = output_ptr-&gt;info()-&gt;strides_in_bytes().y();</div><div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;    constexpr <span class="keyword">auto</span> shift        = uv ? 0 : 1;</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win.x().step() / 2));</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    Iterator in_uv(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;</div><div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;    {</div><div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_uv       = vld2q_u8(in_uv.ptr());</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;        <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;        <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;</div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;        <span class="comment">// Convert the uint8x16x4_t to float32x4x4_t</span></div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;        float32x4x4_t yvec_top, yyvec_top, yvec_bottom, yyvec_bottom, uvec, vvec;</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;        convert_uint8x16_to_float32x4x4(ta_y_top.val[0], yvec_top);</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;        convert_uint8x16_to_float32x4x4(ta_y_top.val[1], yyvec_top);</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;        convert_uint8x16_to_float32x4x4(ta_y_bottom.val[0], yvec_bottom);</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;        convert_uint8x16_to_float32x4x4(ta_y_bottom.val[1], yyvec_bottom);</div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;        convert_uint8x16_to_float32x4x4(ta_uv.val[0 + shift], uvec);</div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;        convert_uint8x16_to_float32x4x4(ta_uv.val[1 - shift], vvec);</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[0], uvec.val[0], yyvec_top.val[0], vvec.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[1], uvec.val[1], yyvec_top.val[1], vvec.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[2], uvec.val[2], yyvec_top.val[2], vvec.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[3], uvec.val[3], yyvec_top.val[3], vvec.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[0], uvec.val[0], yyvec_bottom.val[0], vvec.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[1], uvec.val[1], yyvec_bottom.val[1], vvec.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[2], uvec.val[2], yyvec_bottom.val[2], vvec.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[3], uvec.val[3], yyvec_bottom.val[3], vvec.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;    },</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;    in_y, in_uv, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00472"></a><span class="lineno">  472</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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail_xhtml_a2a36a93e164b484404fe908cefd6099a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation</a></div><div class="ttdeci">void yuyv_to_rgb_calculation(const SimpleTensor&lt; T &gt; yvec, const SimpleTensor&lt; T &gt; vvec, const SimpleTensor&lt; T &gt; yyvec, const SimpleTensor&lt; T &gt; uvec, SimpleTensor&lt; T &gt; &amp;dst)</div><div class="ttdef"><b>Definition:</b> <a href="_color_convert_helper_8h_source.xhtml#l00155">ColorConvertHelper.h:155</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00242">Winograd.cpp:242</a></div></div>
+<p class="reference">References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00266">arm_compute::test::validation::out</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a6b14f175bf5281f57b561e2d4e4b1f1f">ITensorInfo::strides_in_bytes()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00086">Dimensions&lt; T &gt;::y()</a>, <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>, and <a class="el" href="_color_convert_helper_8h_source.xhtml#l00159">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;{</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;    win.validate();</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;    constexpr <span class="keyword">auto</span> element_size = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a> ? 32 : 24;</div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span>     out_stride   = output_ptr-&gt;info()-&gt;strides_in_bytes().y();</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;    constexpr <span class="keyword">auto</span> shift        = uv ? 0 : 1;</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win.x().step() / 2));</div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;    Iterator in_uv(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;</div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;    {</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_uv       = vld2q_u8(in_uv.ptr());</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;        <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;        <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;        <span class="comment">// Convert the uint8x16x4_t to float32x4x4_t</span></div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;        float32x4x4_t yvec_top     = convert_uint8x16_to_float32x4x4(ta_y_top.val[0]);</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;        float32x4x4_t yyvec_top    = convert_uint8x16_to_float32x4x4(ta_y_top.val[1]);</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;        float32x4x4_t yvec_bottom  = convert_uint8x16_to_float32x4x4(ta_y_bottom.val[0]);</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;        float32x4x4_t yyvec_bottom = convert_uint8x16_to_float32x4x4(ta_y_bottom.val[1]);</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;        float32x4x4_t uvec         = convert_uint8x16_to_float32x4x4(ta_uv.val[0 + shift]);</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;        float32x4x4_t vvec         = convert_uint8x16_to_float32x4x4(ta_uv.val[1 - shift]);</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[0], uvec.val[0], yyvec_top.val[0], vvec.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[1], uvec.val[1], yyvec_top.val[1], vvec.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[2], uvec.val[2], yyvec_top.val[2], vvec.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[3], uvec.val[3], yyvec_top.val[3], vvec.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[0], uvec.val[0], yyvec_bottom.val[0], vvec.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[1], uvec.val[1], yyvec_bottom.val[1], vvec.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[2], uvec.val[2], yyvec_bottom.val[2], vvec.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[3], uvec.val[3], yyvec_bottom.val[3], vvec.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + out_stride + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;    },</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;    in_y, in_uv, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00537"></a><span class="lineno">  537</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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail_xhtml_a2a36a93e164b484404fe908cefd6099a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation</a></div><div class="ttdeci">void yuyv_to_rgb_calculation(const SimpleTensor&lt; T &gt; yvec, const SimpleTensor&lt; T &gt; vvec, const SimpleTensor&lt; T &gt; yyvec, const SimpleTensor&lt; T &gt; uvec, SimpleTensor&lt; T &gt; &amp;dst)</div><div class="ttdef"><b>Definition:</b> <a href="_color_convert_helper_8h_source.xhtml#l00159">ColorConvertHelper.h:159</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00266">Winograd.cpp:266</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a62197192f0fbf4e0675eb37be1c4c175"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">arm_compute::test::validation::alpha</a></div><div class="ttdeci">alpha</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">GEMM.cpp:87</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a587a54c85dcc72838b8f4b5575ebafe4"></a>
+<a id="a587a54c85dcc72838b8f4b5575ebafe4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a587a54c85dcc72838b8f4b5575ebafe4">&#9670;&nbsp;</a></span>colorconvert_nv12_to_yuv4()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -7982,15 +9067,17 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00758">758</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00822">822</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;{</div><div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;    win.validate();</div><div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;</div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;</div><div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;    constexpr <span class="keyword">auto</span> shift = uv ? 0 : 1;</div><div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;</div><div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;</div><div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;    Iterator in_uv(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win);</div><div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win);</div><div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;</div><div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;    {</div><div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_uv       = vld2q_u8(in_uv.ptr());</div><div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;        <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;        <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;</div><div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;        vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;</div><div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;        uint8x16x2_t uvec;</div><div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;        uvec.val[0] = ta_uv.val[0 + shift];</div><div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;        uvec.val[1] = ta_uv.val[0 + shift];</div><div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;        vst2q_u8(out_u.ptr(), uvec);</div><div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;        vst2q_u8(out_u.ptr() + output_ptr-&gt;plane(1)-&gt;info()-&gt;strides_in_bytes().y(), uvec);</div><div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;</div><div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;        uint8x16x2_t vvec;</div><div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;        vvec.val[0] = ta_uv.val[1 - shift];</div><div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;        vvec.val[1] = ta_uv.val[1 - shift];</div><div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;        vst2q_u8(out_v.ptr(), vvec);</div><div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;        vst2q_u8(out_v.ptr() + output_ptr-&gt;plane(2)-&gt;info()-&gt;strides_in_bytes().y(), vvec);</div><div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;    },</div><div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;    in_y, in_uv, out_y, out_u, out_v);</div><div class="line"><a name="l00807"></a><span class="lineno">  807</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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;{</div><div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;    win.validate();</div><div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;</div><div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>IMultiImage *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;</div><div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;    constexpr <span class="keyword">auto</span> shift = uv ? 0 : 1;</div><div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;</div><div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;</div><div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;    Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;    Iterator in_uv(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win);</div><div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win);</div><div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160;</div><div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;    {</div><div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top    = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_uv       = vld2q_u8(in_uv.ptr());</div><div class="line"><a name="l00850"></a><span class="lineno">  850</span>&#160;        <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00851"></a><span class="lineno">  851</span>&#160;        <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00852"></a><span class="lineno">  852</span>&#160;        <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00853"></a><span class="lineno">  853</span>&#160;        <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00854"></a><span class="lineno">  854</span>&#160;</div><div class="line"><a name="l00855"></a><span class="lineno">  855</span>&#160;        vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00856"></a><span class="lineno">  856</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00857"></a><span class="lineno">  857</span>&#160;</div><div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;        uint8x16x2_t uvec;</div><div class="line"><a name="l00859"></a><span class="lineno">  859</span>&#160;        uvec.val[0] = ta_uv.val[0 + shift];</div><div class="line"><a name="l00860"></a><span class="lineno">  860</span>&#160;        uvec.val[1] = ta_uv.val[0 + shift];</div><div class="line"><a name="l00861"></a><span class="lineno">  861</span>&#160;        vst2q_u8(out_u.ptr(), uvec);</div><div class="line"><a name="l00862"></a><span class="lineno">  862</span>&#160;        vst2q_u8(out_u.ptr() + output_ptr-&gt;plane(1)-&gt;info()-&gt;strides_in_bytes().y(), uvec);</div><div class="line"><a name="l00863"></a><span class="lineno">  863</span>&#160;</div><div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;        uint8x16x2_t vvec;</div><div class="line"><a name="l00865"></a><span class="lineno">  865</span>&#160;        vvec.val[0] = ta_uv.val[1 - shift];</div><div class="line"><a name="l00866"></a><span class="lineno">  866</span>&#160;        vvec.val[1] = ta_uv.val[1 - shift];</div><div class="line"><a name="l00867"></a><span class="lineno">  867</span>&#160;        vst2q_u8(out_v.ptr(), vvec);</div><div class="line"><a name="l00868"></a><span class="lineno">  868</span>&#160;        vst2q_u8(out_v.ptr() + output_ptr-&gt;plane(2)-&gt;info()-&gt;strides_in_bytes().y(), vvec);</div><div class="line"><a name="l00869"></a><span class="lineno">  869</span>&#160;    },</div><div class="line"><a name="l00870"></a><span class="lineno">  870</span>&#160;    in_y, in_uv, out_y, out_u, out_v);</div><div class="line"><a name="l00871"></a><span class="lineno">  871</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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a49b7a8e217ba7aad821fdeaab86bad53"></a>
+<a id="a49b7a8e217ba7aad821fdeaab86bad53"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49b7a8e217ba7aad821fdeaab86bad53">&#9670;&nbsp;</a></span>colorconvert_rgb_to_iyuv()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8030,21 +9117,23 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00918">918</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00982">982</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00241">arm_compute::test::validation::in</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;{</div><div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00922"></a><span class="lineno">  922</span>&#160;    win.validate();</div><div class="line"><a name="l00923"></a><span class="lineno">  923</span>&#160;</div><div class="line"><a name="l00924"></a><span class="lineno">  924</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00925"></a><span class="lineno">  925</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00926"></a><span class="lineno">  926</span>&#160;</div><div class="line"><a name="l00927"></a><span class="lineno">  927</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00928"></a><span class="lineno">  928</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00931"></a><span class="lineno">  931</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00932"></a><span class="lineno">  932</span>&#160;</div><div class="line"><a name="l00933"></a><span class="lineno">  933</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00934"></a><span class="lineno">  934</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00935"></a><span class="lineno">  935</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00936"></a><span class="lineno">  936</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00937"></a><span class="lineno">  937</span>&#160;</div><div class="line"><a name="l00938"></a><span class="lineno">  938</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00939"></a><span class="lineno">  939</span>&#160;    {</div><div class="line"><a name="l00940"></a><span class="lineno">  940</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_top    = load_rgb(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00941"></a><span class="lineno">  941</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_bottom = load_rgb(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr() + input_ptr-&gt;<a class="code" href="classarm__compute_1_1_c_l_tensor.xhtml#a97de03c31e0ca04be6960e2e3ffdca95">info</a>()-&gt;<a class="code" href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">strides_in_bytes</a>().<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a691c9cb93365c2e33f3429de43244098">y</a>(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00942"></a><span class="lineno">  942</span>&#160;        <span class="comment">//ta_rgb.val[0] = R0 R1 R2 R3 ...</span></div><div class="line"><a name="l00943"></a><span class="lineno">  943</span>&#160;        <span class="comment">//ta_rgb.val[1] = G0 G1 G2 G3 ...</span></div><div class="line"><a name="l00944"></a><span class="lineno">  944</span>&#160;        <span class="comment">//ta_rgb.val[2] = B0 B1 B2 B3 ...</span></div><div class="line"><a name="l00945"></a><span class="lineno">  945</span>&#160;</div><div class="line"><a name="l00946"></a><span class="lineno">  946</span>&#160;        store_rgb_to_iyuv(ta_rgb_top.val[0], ta_rgb_top.val[1], ta_rgb_top.val[2],</div><div class="line"><a name="l00947"></a><span class="lineno">  947</span>&#160;                          ta_rgb_bottom.val[0], ta_rgb_bottom.val[1], ta_rgb_bottom.val[2],</div><div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;                          out_y.ptr(), out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(),</div><div class="line"><a name="l00949"></a><span class="lineno">  949</span>&#160;                          out_u.ptr(), out_v.ptr());</div><div class="line"><a name="l00950"></a><span class="lineno">  950</span>&#160;    },</div><div class="line"><a name="l00951"></a><span class="lineno">  951</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, out_y, out_u, out_v);</div><div class="line"><a name="l00952"></a><span class="lineno">  952</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00241">Winograd.cpp:241</a></div></div>
+<p class="reference">References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;{</div><div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00985"></a><span class="lineno">  985</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;    win.validate();</div><div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;</div><div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;</div><div class="line"><a name="l00991"></a><span class="lineno">  991</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00992"></a><span class="lineno">  992</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00993"></a><span class="lineno">  993</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00994"></a><span class="lineno">  994</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00995"></a><span class="lineno">  995</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;</div><div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00998"></a><span class="lineno">  998</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00999"></a><span class="lineno">  999</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;    {</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_top    = load_rgb(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_bottom = load_rgb(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr() + input_ptr-&gt;<a class="code" href="classarm__compute_1_1_c_l_tensor.xhtml#ad45f0c01a0713dfb6bd7232c7f396fc4">info</a>()-&gt;<a class="code" href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">strides_in_bytes</a>().<a class="code" href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">y</a>(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;        <span class="comment">//ta_rgb.val[0] = R0 R1 R2 R3 ...</span></div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;        <span class="comment">//ta_rgb.val[1] = G0 G1 G2 G3 ...</span></div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;        <span class="comment">//ta_rgb.val[2] = B0 B1 B2 B3 ...</span></div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;        store_rgb_to_iyuv(ta_rgb_top.val[0], ta_rgb_top.val[1], ta_rgb_top.val[2],</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;                          ta_rgb_bottom.val[0], ta_rgb_bottom.val[1], ta_rgb_bottom.val[2],</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;                          out_y.ptr(), out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(),</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;                          out_u.ptr(), out_v.ptr());</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160;    },</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, out_y, out_u, out_v);</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_c_l_tensor_xhtml_ad45f0c01a0713dfb6bd7232c7f396fc4"><div class="ttname"><a href="classarm__compute_1_1_c_l_tensor.xhtml#ad45f0c01a0713dfb6bd7232c7f396fc4">arm_compute::CLTensor::info</a></div><div class="ttdeci">TensorInfo * info() const override</div><div class="ttdoc">Interface to be implemented by the child class to return the tensor&amp;#39;s metadata. </div><div class="ttdef"><b>Definition:</b> <a href="_c_l_tensor_8cpp_source.xhtml#l00035">CLTensor.cpp:35</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="classarm__compute_1_1_c_l_tensor_xhtml_a97de03c31e0ca04be6960e2e3ffdca95"><div class="ttname"><a href="classarm__compute_1_1_c_l_tensor.xhtml#a97de03c31e0ca04be6960e2e3ffdca95">arm_compute::CLTensor::info</a></div><div class="ttdeci">TensorInfo * info() const override</div><div class="ttdoc">Interface to be implemented by the child class to return the tensor&amp;#39;s metadata. </div></div>
 <div class="ttc" id="classarm__compute_1_1_tensor_info_xhtml_a5f1ca9d674346287cae57a6c5b5c24ec"><div class="ttname"><a href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">arm_compute::TensorInfo::strides_in_bytes</a></div><div class="ttdeci">const Strides &amp; strides_in_bytes() const override</div><div class="ttdoc">The strides in bytes for accessing each dimension of the tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_tensor_info_8h_source.xhtml#l00231">TensorInfo.h:231</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
-<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a691c9cb93365c2e33f3429de43244098"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a691c9cb93365c2e33f3429de43244098">arm_compute::Dimensions::y</a></div><div class="ttdeci">T y() const </div><div class="ttdoc">Alias to access the size of the second dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00086">Dimensions.h:86</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_ac4a1050be02b20b3f791b9a483f3abe2"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">arm_compute::Dimensions::y</a></div><div class="ttdeci">T y() const</div><div class="ttdoc">Alias to access the size of the second dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00086">Dimensions.h:86</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a62197192f0fbf4e0675eb37be1c4c175"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">arm_compute::test::validation::alpha</a></div><div class="ttdeci">alpha</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">GEMM.cpp:87</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a14fd899b732509e245976b9967b8931d"></a>
+<a id="a14fd899b732509e245976b9967b8931d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14fd899b732509e245976b9967b8931d">&#9670;&nbsp;</a></span>colorconvert_rgb_to_nv12()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8084,21 +9173,23 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00875">875</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00939">939</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00241">arm_compute::test::validation::in</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160;{</div><div class="line"><a name="l00877"></a><span class="lineno">  877</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00878"></a><span class="lineno">  878</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00879"></a><span class="lineno">  879</span>&#160;    win.validate();</div><div class="line"><a name="l00880"></a><span class="lineno">  880</span>&#160;</div><div class="line"><a name="l00881"></a><span class="lineno">  881</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00883"></a><span class="lineno">  883</span>&#160;</div><div class="line"><a name="l00884"></a><span class="lineno">  884</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00885"></a><span class="lineno">  885</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00886"></a><span class="lineno">  886</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00887"></a><span class="lineno">  887</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00888"></a><span class="lineno">  888</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00889"></a><span class="lineno">  889</span>&#160;</div><div class="line"><a name="l00890"></a><span class="lineno">  890</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00891"></a><span class="lineno">  891</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160;    Iterator out_uv(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;</div><div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;    {</div><div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_top    = load_rgb(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_bottom = load_rgb(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr() + input_ptr-&gt;<a class="code" href="classarm__compute_1_1_c_l_tensor.xhtml#a97de03c31e0ca04be6960e2e3ffdca95">info</a>()-&gt;<a class="code" href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">strides_in_bytes</a>().<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a691c9cb93365c2e33f3429de43244098">y</a>(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;        <span class="comment">//ta_rgb.val[0] = R0 R1 R2 R3 ...</span></div><div class="line"><a name="l00899"></a><span class="lineno">  899</span>&#160;        <span class="comment">//ta_rgb.val[1] = G0 G1 G2 G3 ...</span></div><div class="line"><a name="l00900"></a><span class="lineno">  900</span>&#160;        <span class="comment">//ta_rgb.val[2] = B0 B1 B2 B3 ...</span></div><div class="line"><a name="l00901"></a><span class="lineno">  901</span>&#160;</div><div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;        store_rgb_to_nv12(ta_rgb_top.val[0], ta_rgb_top.val[1], ta_rgb_top.val[2],</div><div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;                          ta_rgb_bottom.val[0], ta_rgb_bottom.val[1], ta_rgb_bottom.val[2],</div><div class="line"><a name="l00904"></a><span class="lineno">  904</span>&#160;                          out_y.ptr(), out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(),</div><div class="line"><a name="l00905"></a><span class="lineno">  905</span>&#160;                          out_uv.ptr());</div><div class="line"><a name="l00906"></a><span class="lineno">  906</span>&#160;    },</div><div class="line"><a name="l00907"></a><span class="lineno">  907</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, out_y, out_uv);</div><div class="line"><a name="l00908"></a><span class="lineno">  908</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00241">Winograd.cpp:241</a></div></div>
+<p class="reference">References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00940"></a><span class="lineno">  940</span>&#160;{</div><div class="line"><a name="l00941"></a><span class="lineno">  941</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00942"></a><span class="lineno">  942</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00943"></a><span class="lineno">  943</span>&#160;    win.validate();</div><div class="line"><a name="l00944"></a><span class="lineno">  944</span>&#160;</div><div class="line"><a name="l00945"></a><span class="lineno">  945</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00946"></a><span class="lineno">  946</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00947"></a><span class="lineno">  947</span>&#160;</div><div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;    <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00949"></a><span class="lineno">  949</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00950"></a><span class="lineno">  950</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00951"></a><span class="lineno">  951</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00952"></a><span class="lineno">  952</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00953"></a><span class="lineno">  953</span>&#160;</div><div class="line"><a name="l00954"></a><span class="lineno">  954</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00955"></a><span class="lineno">  955</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;    Iterator out_uv(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00957"></a><span class="lineno">  957</span>&#160;</div><div class="line"><a name="l00958"></a><span class="lineno">  958</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00959"></a><span class="lineno">  959</span>&#160;    {</div><div class="line"><a name="l00960"></a><span class="lineno">  960</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_top    = load_rgb(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_bottom = load_rgb(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr() + input_ptr-&gt;<a class="code" href="classarm__compute_1_1_c_l_tensor.xhtml#ad45f0c01a0713dfb6bd7232c7f396fc4">info</a>()-&gt;<a class="code" href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">strides_in_bytes</a>().<a class="code" href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">y</a>(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160;        <span class="comment">//ta_rgb.val[0] = R0 R1 R2 R3 ...</span></div><div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;        <span class="comment">//ta_rgb.val[1] = G0 G1 G2 G3 ...</span></div><div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;        <span class="comment">//ta_rgb.val[2] = B0 B1 B2 B3 ...</span></div><div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;</div><div class="line"><a name="l00966"></a><span class="lineno">  966</span>&#160;        store_rgb_to_nv12(ta_rgb_top.val[0], ta_rgb_top.val[1], ta_rgb_top.val[2],</div><div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;                          ta_rgb_bottom.val[0], ta_rgb_bottom.val[1], ta_rgb_bottom.val[2],</div><div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;                          out_y.ptr(), out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(),</div><div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;                          out_uv.ptr());</div><div class="line"><a name="l00970"></a><span class="lineno">  970</span>&#160;    },</div><div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, out_y, out_uv);</div><div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_c_l_tensor_xhtml_ad45f0c01a0713dfb6bd7232c7f396fc4"><div class="ttname"><a href="classarm__compute_1_1_c_l_tensor.xhtml#ad45f0c01a0713dfb6bd7232c7f396fc4">arm_compute::CLTensor::info</a></div><div class="ttdeci">TensorInfo * info() const override</div><div class="ttdoc">Interface to be implemented by the child class to return the tensor&amp;#39;s metadata. </div><div class="ttdef"><b>Definition:</b> <a href="_c_l_tensor_8cpp_source.xhtml#l00035">CLTensor.cpp:35</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="classarm__compute_1_1_c_l_tensor_xhtml_a97de03c31e0ca04be6960e2e3ffdca95"><div class="ttname"><a href="classarm__compute_1_1_c_l_tensor.xhtml#a97de03c31e0ca04be6960e2e3ffdca95">arm_compute::CLTensor::info</a></div><div class="ttdeci">TensorInfo * info() const override</div><div class="ttdoc">Interface to be implemented by the child class to return the tensor&amp;#39;s metadata. </div></div>
 <div class="ttc" id="classarm__compute_1_1_tensor_info_xhtml_a5f1ca9d674346287cae57a6c5b5c24ec"><div class="ttname"><a href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">arm_compute::TensorInfo::strides_in_bytes</a></div><div class="ttdeci">const Strides &amp; strides_in_bytes() const override</div><div class="ttdoc">The strides in bytes for accessing each dimension of the tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_tensor_info_8h_source.xhtml#l00231">TensorInfo.h:231</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
-<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a691c9cb93365c2e33f3429de43244098"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a691c9cb93365c2e33f3429de43244098">arm_compute::Dimensions::y</a></div><div class="ttdeci">T y() const </div><div class="ttdoc">Alias to access the size of the second dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00086">Dimensions.h:86</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_ac4a1050be02b20b3f791b9a483f3abe2"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">arm_compute::Dimensions::y</a></div><div class="ttdeci">T y() const</div><div class="ttdoc">Alias to access the size of the second dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00086">Dimensions.h:86</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a62197192f0fbf4e0675eb37be1c4c175"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">arm_compute::test::validation::alpha</a></div><div class="ttdeci">alpha</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">GEMM.cpp:87</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a93cc303c8ae098d264f07d37890412de"></a>
+<a id="a93cc303c8ae098d264f07d37890412de"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93cc303c8ae098d264f07d37890412de">&#9670;&nbsp;</a></span>colorconvert_rgb_to_rgbx()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8138,18 +9229,77 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00312">312</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00351">351</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00241">arm_compute::test::validation::in</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00242">arm_compute::test::validation::out</a>, and <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;{</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    {</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span>   ta1 = vld3q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;        uint8x16x4_t ta2;</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;        ta2.val[0] = ta1.val[0];</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;        ta2.val[1] = ta1.val[1];</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;        ta2.val[2] = ta1.val[2];</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;        ta2.val[3] = vdupq_n_u8(255);</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        vst4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr(), ta2);</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    },</div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00241">Winograd.cpp:241</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00266">arm_compute::test::validation::out</a>, and <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;{</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;    {</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span>   ta1 = vld3q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;        uint8x16x4_t ta2;</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;        ta2.val[0] = ta1.val[0];</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;        ta2.val[1] = ta1.val[1];</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;        ta2.val[2] = ta1.val[2];</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;        ta2.val[3] = vdupq_n_u8(255);</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;        vst4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr(), ta2);</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;    },</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00242">Winograd.cpp:242</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00266">Winograd.cpp:266</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad304c0b0a72ed3f65c24fa69ab3cd53e"></a>
+<a id="aa1d4cf707dec05e3ff1d63d4ce8065ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa1d4cf707dec05e3ff1d63d4ce8065ca">&#9670;&nbsp;</a></span>colorconvert_rgb_to_u8()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::colorconvert_rgb_to_u8 </td>
+          <td>(</td>
+          <td class="paramtype">const void *__restrict&#160;</td>
+          <td class="paramname"><em>input</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">void *__restrict&#160;</td>
+          <td class="paramname"><em>output</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
+          <td class="paramname"><em>win</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Convert RGB to U8. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input RGB data buffer. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output U8 buffer. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window. ">Window</a> for iterating the buffers. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00382">382</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00266">arm_compute::test::validation::out</a>, and <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;{</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;    {</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta1 = vld3q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;        uint8x16_t ta2;</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;        rgb_to_u8_conversion(ta1, ta2);</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;        vst1q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr(), ta2);</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;    },</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00266">Winograd.cpp:266</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="ad304c0b0a72ed3f65c24fa69ab3cd53e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad304c0b0a72ed3f65c24fa69ab3cd53e">&#9670;&nbsp;</a></span>colorconvert_rgb_to_yuv4()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8189,18 +9339,20 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00962">962</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l01026">1026</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00241">arm_compute::test::validation::in</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;{</div><div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00966"></a><span class="lineno">  966</span>&#160;    win.validate();</div><div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;</div><div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00970"></a><span class="lineno">  970</span>&#160;</div><div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win);</div><div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win);</div><div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;</div><div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00977"></a><span class="lineno">  977</span>&#160;    {</div><div class="line"><a name="l00978"></a><span class="lineno">  978</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb = load_rgb(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;        <span class="comment">//ta_rgb.val[0] = R0 R1 R2 R3 ...</span></div><div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;        <span class="comment">//ta_rgb.val[1] = G0 G1 G2 G3 ...</span></div><div class="line"><a name="l00981"></a><span class="lineno">  981</span>&#160;        <span class="comment">//ta_rgb.val[2] = B0 B1 B2 B3 ...</span></div><div class="line"><a name="l00982"></a><span class="lineno">  982</span>&#160;</div><div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;        store_rgb_to_yuv4(ta_rgb.val[0], ta_rgb.val[1], ta_rgb.val[2],</div><div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;                          out_y.ptr(), out_u.ptr(), out_v.ptr());</div><div class="line"><a name="l00985"></a><span class="lineno">  985</span>&#160;    },</div><div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, out_y, out_u, out_v);</div><div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00241">Winograd.cpp:241</a></div></div>
+<p class="reference">References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;{</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160;    win.validate();</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160;</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win);</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win);</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;    {</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb = load_rgb(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;        <span class="comment">//ta_rgb.val[0] = R0 R1 R2 R3 ...</span></div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;        <span class="comment">//ta_rgb.val[1] = G0 G1 G2 G3 ...</span></div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;        <span class="comment">//ta_rgb.val[2] = B0 B1 B2 B3 ...</span></div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;        store_rgb_to_yuv4(ta_rgb.val[0], ta_rgb.val[1], ta_rgb.val[2],</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;                          out_y.ptr(), out_u.ptr(), out_v.ptr());</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;    },</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, out_y, out_u, out_v);</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a62197192f0fbf4e0675eb37be1c4c175"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">arm_compute::test::validation::alpha</a></div><div class="ttdeci">alpha</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">GEMM.cpp:87</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="acf7451c0d0f8a4b1cfbb60d7531a43aa"></a>
+<a id="acf7451c0d0f8a4b1cfbb60d7531a43aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf7451c0d0f8a4b1cfbb60d7531a43aa">&#9670;&nbsp;</a></span>colorconvert_rgbx_to_rgb()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8240,18 +9392,22 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00343">343</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00410">410</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00241">arm_compute::test::validation::in</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00242">arm_compute::test::validation::out</a>, and <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;{</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;    {</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span>   ta1 = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;        uint8x16x3_t ta2;</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;        ta2.val[0] = ta1.val[0];</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;        ta2.val[1] = ta1.val[1];</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;        ta2.val[2] = ta1.val[2];</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;        vst3q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr(), ta2);</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;    },</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00241">Winograd.cpp:241</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00266">arm_compute::test::validation::out</a>, and <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;{</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;    {</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span>   ta1 = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;        uint8x16x3_t ta2;</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;        ta2.val[0] = ta1.val[0];</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;        ta2.val[1] = ta1.val[1];</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;        ta2.val[2] = ta1.val[2];</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;        vst3q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr(), ta2);</div><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;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00242">Winograd.cpp:242</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00266">Winograd.cpp:266</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ae43e8f0463c0289169025c3041688d36"></a>
+<a id="ae43e8f0463c0289169025c3041688d36"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae43e8f0463c0289169025c3041688d36">&#9670;&nbsp;</a></span>colorconvert_yuyv_to_iyuv()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8291,20 +9447,22 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00698">698</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00762">762</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00241">arm_compute::test::validation::in</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;{</div><div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;    win.validate();</div><div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;</div><div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;</div><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;    constexpr <span class="keyword">auto</span> shift = yuyv ? 0 : 1;</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;</div><div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;    <span class="comment">// Destination&#39;s UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;</div><div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;    {</div><div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_top    = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_bottom = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr() + input_ptr-&gt;<a class="code" href="classarm__compute_1_1_c_l_tensor.xhtml#a97de03c31e0ca04be6960e2e3ffdca95">info</a>()-&gt;<a class="code" href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">strides_in_bytes</a>().<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a691c9cb93365c2e33f3429de43244098">y</a>());</div><div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;        <span class="comment">//ta.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;        <span class="comment">//ta.val[1] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;        <span class="comment">//ta.val[2] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;        <span class="comment">//ta.val[3] = V0 V2 V4 V7 ...</span></div><div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;</div><div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;        uint8x16x2_t yvec;</div><div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;        yvec.val[0] = ta_top.val[0 + shift];</div><div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;        yvec.val[1] = ta_top.val[2 + shift];</div><div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;        vst2q_u8(out_y.ptr(), yvec);</div><div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;</div><div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;        uint8x16x2_t yyvec;</div><div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;        yyvec.val[0] = ta_bottom.val[0 + shift];</div><div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;        yyvec.val[1] = ta_bottom.val[2 + shift];</div><div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), yyvec);</div><div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;</div><div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;        uint8x16_t uvec;</div><div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;        uvec = vhaddq_u8(ta_top.val[1 - shift], ta_bottom.val[1 - shift]);</div><div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;        vst1q_u8(out_u.ptr(), uvec);</div><div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;</div><div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;        uint8x16_t vvec;</div><div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;        vvec = vhaddq_u8(ta_top.val[3 - shift], ta_bottom.val[3 - shift]);</div><div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;        vst1q_u8(out_v.ptr(), vvec);</div><div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;    },</div><div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, out_y, out_u, out_v);</div><div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00241">Winograd.cpp:241</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;{</div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;    win.validate();</div><div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;</div><div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;</div><div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;    constexpr <span class="keyword">auto</span> shift = yuyv ? 0 : 1;</div><div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;</div><div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;    <span class="comment">// Destination&#39;s UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;</div><div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;    Iterator out_u(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;    Iterator out_v(output_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;</div><div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;    {</div><div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_top    = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_bottom = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr() + input_ptr-&gt;<a class="code" href="classarm__compute_1_1_c_l_tensor.xhtml#ad45f0c01a0713dfb6bd7232c7f396fc4">info</a>()-&gt;<a class="code" href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">strides_in_bytes</a>().<a class="code" href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">y</a>());</div><div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;        <span class="comment">//ta.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;        <span class="comment">//ta.val[1] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;        <span class="comment">//ta.val[2] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;        <span class="comment">//ta.val[3] = V0 V2 V4 V7 ...</span></div><div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;</div><div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;        uint8x16x2_t yvec;</div><div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;        yvec.val[0] = ta_top.val[0 + shift];</div><div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;        yvec.val[1] = ta_top.val[2 + shift];</div><div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;        vst2q_u8(out_y.ptr(), yvec);</div><div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;</div><div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;        uint8x16x2_t yyvec;</div><div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;        yyvec.val[0] = ta_bottom.val[0 + shift];</div><div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;        yyvec.val[1] = ta_bottom.val[2 + shift];</div><div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), yyvec);</div><div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;</div><div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;        uint8x16_t uvec;</div><div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;        uvec = vhaddq_u8(ta_top.val[1 - shift], ta_bottom.val[1 - shift]);</div><div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;        vst1q_u8(out_u.ptr(), uvec);</div><div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;</div><div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;        uint8x16_t vvec;</div><div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;        vvec = vhaddq_u8(ta_top.val[3 - shift], ta_bottom.val[3 - shift]);</div><div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;        vst1q_u8(out_v.ptr(), vvec);</div><div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;    },</div><div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, out_y, out_u, out_v);</div><div class="line"><a name="l00812"></a><span class="lineno">  812</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_c_l_tensor_xhtml_ad45f0c01a0713dfb6bd7232c7f396fc4"><div class="ttname"><a href="classarm__compute_1_1_c_l_tensor.xhtml#ad45f0c01a0713dfb6bd7232c7f396fc4">arm_compute::CLTensor::info</a></div><div class="ttdeci">TensorInfo * info() const override</div><div class="ttdoc">Interface to be implemented by the child class to return the tensor&amp;#39;s metadata. </div><div class="ttdef"><b>Definition:</b> <a href="_c_l_tensor_8cpp_source.xhtml#l00035">CLTensor.cpp:35</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="classarm__compute_1_1_c_l_tensor_xhtml_a97de03c31e0ca04be6960e2e3ffdca95"><div class="ttname"><a href="classarm__compute_1_1_c_l_tensor.xhtml#a97de03c31e0ca04be6960e2e3ffdca95">arm_compute::CLTensor::info</a></div><div class="ttdeci">TensorInfo * info() const override</div><div class="ttdoc">Interface to be implemented by the child class to return the tensor&amp;#39;s metadata. </div></div>
 <div class="ttc" id="classarm__compute_1_1_tensor_info_xhtml_a5f1ca9d674346287cae57a6c5b5c24ec"><div class="ttname"><a href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">arm_compute::TensorInfo::strides_in_bytes</a></div><div class="ttdeci">const Strides &amp; strides_in_bytes() const override</div><div class="ttdoc">The strides in bytes for accessing each dimension of the tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_tensor_info_8h_source.xhtml#l00231">TensorInfo.h:231</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
-<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a691c9cb93365c2e33f3429de43244098"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a691c9cb93365c2e33f3429de43244098">arm_compute::Dimensions::y</a></div><div class="ttdeci">T y() const </div><div class="ttdoc">Alias to access the size of the second dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00086">Dimensions.h:86</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_ac4a1050be02b20b3f791b9a483f3abe2"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">arm_compute::Dimensions::y</a></div><div class="ttdeci">T y() const</div><div class="ttdoc">Alias to access the size of the second dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00086">Dimensions.h:86</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a8ee13904a3f5ba84b28cb53d956021d7"></a>
+<a id="a8ee13904a3f5ba84b28cb53d956021d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ee13904a3f5ba84b28cb53d956021d7">&#9670;&nbsp;</a></span>colorconvert_yuyv_to_nv12()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8344,20 +9502,22 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00546">546</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00610">610</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00241">arm_compute::test::validation::in</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;{</div><div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;    win.validate();</div><div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;</div><div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;    constexpr <span class="keyword">auto</span> shift = yuyv ? 0 : 1;</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;</div><div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;    <span class="comment">// NV12&#39;s UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;    win_uv.validate();</div><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;</div><div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;    Iterator out_uv(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;</div><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;    {</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_top    = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_bottom = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr() + input_ptr-&gt;<a class="code" href="classarm__compute_1_1_c_l_tensor.xhtml#a97de03c31e0ca04be6960e2e3ffdca95">info</a>()-&gt;<a class="code" href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">strides_in_bytes</a>().<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a691c9cb93365c2e33f3429de43244098">y</a>());</div><div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;        <span class="comment">//ta.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;        <span class="comment">//ta.val[1] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;        <span class="comment">//ta.val[2] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;        <span class="comment">//ta.val[3] = V0 V2 V4 V7 ...</span></div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;        uint8x16x2_t yvec;</div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;        yvec.val[0] = ta_top.val[0 + shift];</div><div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;        yvec.val[1] = ta_top.val[2 + shift];</div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;        vst2q_u8(out_y.ptr(), yvec);</div><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;        uint8x16x2_t yyvec;</div><div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;        yyvec.val[0] = ta_bottom.val[0 + shift];</div><div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;        yyvec.val[1] = ta_bottom.val[2 + shift];</div><div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), yyvec);</div><div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;</div><div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;        uint8x16x2_t uvvec;</div><div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;        uvvec.val[0] = vhaddq_u8(ta_top.val[1 - shift], ta_bottom.val[1 - shift]);</div><div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;        uvvec.val[1] = vhaddq_u8(ta_top.val[3 - shift], ta_bottom.val[3 - shift]);</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;        vst2q_u8(out_uv.ptr(), uvvec);</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;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, out_y, out_uv);</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00241">Winograd.cpp:241</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;{</div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;    win.validate();</div><div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;</div><div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span>IMultiImage *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;</div><div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;    constexpr <span class="keyword">auto</span> shift = yuyv ? 0 : 1;</div><div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;</div><div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;    <span class="comment">// NV12&#39;s UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;    Window win_uv(win);</div><div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;    win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;    win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;    win_uv.validate();</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;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;    Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;    Iterator out_uv(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;    {</div><div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_top    = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta_bottom = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr() + input_ptr-&gt;<a class="code" href="classarm__compute_1_1_c_l_tensor.xhtml#ad45f0c01a0713dfb6bd7232c7f396fc4">info</a>()-&gt;<a class="code" href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">strides_in_bytes</a>().<a class="code" href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">y</a>());</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;        <span class="comment">//ta.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;        <span class="comment">//ta.val[1] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;        <span class="comment">//ta.val[2] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;        <span class="comment">//ta.val[3] = V0 V2 V4 V7 ...</span></div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;</div><div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;        uint8x16x2_t yvec;</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;        yvec.val[0] = ta_top.val[0 + shift];</div><div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;        yvec.val[1] = ta_top.val[2 + shift];</div><div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;        vst2q_u8(out_y.ptr(), yvec);</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;        uint8x16x2_t yyvec;</div><div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;        yyvec.val[0] = ta_bottom.val[0 + shift];</div><div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;        yyvec.val[1] = ta_bottom.val[2 + shift];</div><div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;        vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), yyvec);</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;        uint8x16x2_t uvvec;</div><div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;        uvvec.val[0] = vhaddq_u8(ta_top.val[1 - shift], ta_bottom.val[1 - shift]);</div><div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;        uvvec.val[1] = vhaddq_u8(ta_top.val[3 - shift], ta_bottom.val[3 - shift]);</div><div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;        vst2q_u8(out_uv.ptr(), uvvec);</div><div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;    },</div><div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, out_y, out_uv);</div><div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_c_l_tensor_xhtml_ad45f0c01a0713dfb6bd7232c7f396fc4"><div class="ttname"><a href="classarm__compute_1_1_c_l_tensor.xhtml#ad45f0c01a0713dfb6bd7232c7f396fc4">arm_compute::CLTensor::info</a></div><div class="ttdeci">TensorInfo * info() const override</div><div class="ttdoc">Interface to be implemented by the child class to return the tensor&amp;#39;s metadata. </div><div class="ttdef"><b>Definition:</b> <a href="_c_l_tensor_8cpp_source.xhtml#l00035">CLTensor.cpp:35</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="classarm__compute_1_1_c_l_tensor_xhtml_a97de03c31e0ca04be6960e2e3ffdca95"><div class="ttname"><a href="classarm__compute_1_1_c_l_tensor.xhtml#a97de03c31e0ca04be6960e2e3ffdca95">arm_compute::CLTensor::info</a></div><div class="ttdeci">TensorInfo * info() const override</div><div class="ttdoc">Interface to be implemented by the child class to return the tensor&amp;#39;s metadata. </div></div>
 <div class="ttc" id="classarm__compute_1_1_tensor_info_xhtml_a5f1ca9d674346287cae57a6c5b5c24ec"><div class="ttname"><a href="classarm__compute_1_1_tensor_info.xhtml#a5f1ca9d674346287cae57a6c5b5c24ec">arm_compute::TensorInfo::strides_in_bytes</a></div><div class="ttdeci">const Strides &amp; strides_in_bytes() const override</div><div class="ttdoc">The strides in bytes for accessing each dimension of the tensor. </div><div class="ttdef"><b>Definition:</b> <a href="_tensor_info_8h_source.xhtml#l00231">TensorInfo.h:231</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
-<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a691c9cb93365c2e33f3429de43244098"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a691c9cb93365c2e33f3429de43244098">arm_compute::Dimensions::y</a></div><div class="ttdeci">T y() const </div><div class="ttdoc">Alias to access the size of the second dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00086">Dimensions.h:86</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_ac4a1050be02b20b3f791b9a483f3abe2"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#ac4a1050be02b20b3f791b9a483f3abe2">arm_compute::Dimensions::y</a></div><div class="ttdeci">T y() const</div><div class="ttdoc">Alias to access the size of the second dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00086">Dimensions.h:86</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a3c22c0d3494660b72b4fc04fec76f92d"></a>
+<a id="a3c22c0d3494660b72b4fc04fec76f92d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c22c0d3494660b72b4fc04fec76f92d">&#9670;&nbsp;</a></span>colorconvert_yuyv_to_rgb()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8397,20 +9557,22 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00374">374</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00441">441</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
 
-<p>References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00241">arm_compute::test::validation::in</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00242">arm_compute::test::validation::out</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, and <a class="el" href="_color_convert_helper_8h_source.xhtml#l00155">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;{</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;    constexpr <span class="keyword">auto</span> element_size = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a> ? 32 : 24;</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;    constexpr <span class="keyword">auto</span> shift        = yuyv ? 0 : 1;</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;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;    {</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;        float32x4x4_t uvec, yvec, vvec, yyvec;</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span>    ta = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;        <span class="comment">//ta.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;        <span class="comment">//ta.val[1] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;        <span class="comment">//ta.val[2] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;        <span class="comment">//ta.val[3] = V0 V2 V4 V7 ...</span></div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;        <span class="comment">// Convert the uint8x16x4_t to float32x4x4_t</span></div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;        convert_uint8x16_to_float32x4x4(ta.val[0 + shift], yvec);</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;        convert_uint8x16_to_float32x4x4(ta.val[1 - shift], uvec);</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;        convert_uint8x16_to_float32x4x4(ta.val[2 + shift], yyvec);</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;        convert_uint8x16_to_float32x4x4(ta.val[3 - shift], vvec);</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[0], uvec.val[0], yyvec.val[0], vvec.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[1], uvec.val[1], yyvec.val[1], vvec.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[2], uvec.val[2], yyvec.val[2], vvec.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[3], uvec.val[3], yyvec.val[3], vvec.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;    },</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00241">Winograd.cpp:241</a></div></div>
+<p class="reference">References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00266">arm_compute::test::validation::out</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, and <a class="el" href="_color_convert_helper_8h_source.xhtml#l00159">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation()</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;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;</div><div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr  = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(input);</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = <span class="keyword">static_cast&lt;</span><a class="code" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> *__restrict<span class="keyword">&gt;</span>(output);</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;</div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;    constexpr <span class="keyword">auto</span> element_size = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a> ? 32 : 24;</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;    constexpr <span class="keyword">auto</span> shift        = yuyv ? 0 : 1;</div><div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;</div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>(input_ptr, win);</div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;    Iterator <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>(output_ptr, win);</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;    {</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;        <span class="keyword">const</span> <span class="keyword">auto</span> ta = vld4q_u8(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>.ptr());</div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;        <span class="comment">//ta.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;        <span class="comment">//ta.val[1] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;        <span class="comment">//ta.val[2] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;        <span class="comment">//ta.val[3] = V0 V2 V4 V7 ...</span></div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;        <span class="comment">// Convert the uint8x16x4_t to float32x4x4_t</span></div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;        <span class="keyword">const</span> float32x4x4_t yvec  = convert_uint8x16_to_float32x4x4(ta.val[0 + shift]);</div><div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;        <span class="keyword">const</span> float32x4x4_t uvec  = convert_uint8x16_to_float32x4x4(ta.val[1 - shift]);</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;        <span class="keyword">const</span> float32x4x4_t yyvec = convert_uint8x16_to_float32x4x4(ta.val[2 + shift]);</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;        <span class="keyword">const</span> float32x4x4_t vvec  = convert_uint8x16_to_float32x4x4(ta.val[3 - shift]);</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[0], uvec.val[0], yyvec.val[0], vvec.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[1], uvec.val[1], yyvec.val[1], vvec.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[2], uvec.val[2], yyvec.val[2], vvec.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[3], uvec.val[3], yyvec.val[3], vvec.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>.ptr() + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a>);</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;    },</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">in</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>);</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></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#l00337">Error.h:337</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail_xhtml_a2a36a93e164b484404fe908cefd6099a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation</a></div><div class="ttdeci">void yuyv_to_rgb_calculation(const SimpleTensor&lt; T &gt; yvec, const SimpleTensor&lt; T &gt; vvec, const SimpleTensor&lt; T &gt; yyvec, const SimpleTensor&lt; T &gt; uvec, SimpleTensor&lt; T &gt; &amp;dst)</div><div class="ttdef"><b>Definition:</b> <a href="_color_convert_helper_8h_source.xhtml#l00155">ColorConvertHelper.h:155</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a6c0dcc38187027dcb89cd9724bc5a823"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c0dcc38187027dcb89cd9724bc5a823">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;...iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00242">Winograd.cpp:242</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail_xhtml_a2a36a93e164b484404fe908cefd6099a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation</a></div><div class="ttdeci">void yuyv_to_rgb_calculation(const SimpleTensor&lt; T &gt; yvec, const SimpleTensor&lt; T &gt; vvec, const SimpleTensor&lt; T &gt; yyvec, const SimpleTensor&lt; T &gt; uvec, SimpleTensor&lt; T &gt; &amp;dst)</div><div class="ttdef"><b>Definition:</b> <a href="_color_convert_helper_8h_source.xhtml#l00159">ColorConvertHelper.h:159</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00266">Winograd.cpp:266</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ac20902ac1ef01783c8a8d71a9bdf1100"><div class="ttname"><a href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">arm_compute::IImage</a></div><div class="ttdeci">ITensor IImage</div><div class="ttdoc">Interface for CPP Images. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">CPPCornerCandidatesKernel.h:37</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a62197192f0fbf4e0675eb37be1c4c175"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">arm_compute::test::validation::alpha</a></div><div class="ttdeci">alpha</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">GEMM.cpp:87</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a35178800b82e07a49da5a81cdeda9a0c"></a>
+<a id="ac56739a30823647f7d86a0380a2ff62e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac56739a30823647f7d86a0380a2ff62e">&#9670;&nbsp;</a></span>compute_strides() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -8459,17 +9621,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_strides.xhtml" title="Strides of an item in bytes. ">Strides</a> object based on the specified strides. Missing strides are calculated based on the tensor shape and the strides of lower dimensions. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00501">501</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00501">501</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a1f4e725b8e1ea36b30e09dc08ae6961d">ITensorInfo::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>, <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">arm_compute::test::validation::shape</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>.</p>
+<p class="reference">References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a1f4e725b8e1ea36b30e09dc08ae6961d">ITensorInfo::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>, <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">arm_compute::test::validation::shape</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00523">compute_strides()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00214">TensorInfo::auto_padding()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00523">compute_strides()</a>, and <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00342">TensorInfo::set_tensor_shape()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;{</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;    <span class="keyword">const</span> TensorShape &amp;<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.tensor_shape();</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;    <span class="comment">// Create strides object</span></div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;    Strides strides(stride_x, fixed_strides...);</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;</div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 1 + <span class="keyword">sizeof</span>...(Ts); i &lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.num_dimensions(); ++i)</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;    {</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;        strides.set(i, shape[i - 1] * strides[i - 1]);</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;    }</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;    <span class="keywordflow">return</span> strides;</div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a8c35748731709927597cb5a2c227e682"></a>
+<a id="a8c35748731709927597cb5a2c227e682"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c35748731709927597cb5a2c227e682">&#9670;&nbsp;</a></span>compute_strides() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -8500,15 +9664,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_strides.xhtml" title="Strides of an item in bytes. ">Strides</a> object based on element size and tensor shape. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00523">523</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00523">523</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00501">compute_strides()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#aa459796b5489eca8a9160cb5dcf1a103">ITensorInfo::element_size()</a>.</p>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00501">compute_strides()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#aa459796b5489eca8a9160cb5dcf1a103">ITensorInfo::element_size()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;{</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a8c35748731709927597cb5a2c227e682">compute_strides</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.element_size());</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a8c35748731709927597cb5a2c227e682"><div class="ttname"><a href="namespacearm__compute.xhtml#a8c35748731709927597cb5a2c227e682">arm_compute::compute_strides</a></div><div class="ttdeci">Strides compute_strides(const ITensorInfo &amp;info)</div><div class="ttdoc">Create a strides object based on the tensor dimensions. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00523">Helpers.h:523</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a3b0c016b53e97663b39c2f3875f46c24"></a>
+<a id="a3b0c016b53e97663b39c2f3875f46c24"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b0c016b53e97663b39c2f3875f46c24">&#9670;&nbsp;</a></span>compute_winograd_convolution_tiles()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -8565,16 +9731,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the number of output tiles along the x and y directions of size "output_tile_size" </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00701">701</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00701">701</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="_size2_d_8h_source.xhtml#l00093">Size2D::height</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00658">PadStrideInfo::pad_bottom()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00643">PadStrideInfo::pad_left()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00648">PadStrideInfo::pad_right()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00653">PadStrideInfo::pad_top()</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00092">Size2D::width</a>.</p>
+<p class="reference">References <a class="el" href="_size2_d_8h_source.xhtml#l00093">Size2D::height</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00774">PadStrideInfo::pad_bottom()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00759">PadStrideInfo::pad_left()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00764">PadStrideInfo::pad_right()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00769">PadStrideInfo::pad_top()</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00092">Size2D::width</a>.</p>
 
-<p>Referenced by <a class="el" href="_shape_calculator_8h_source.xhtml#l00287">arm_compute::misc::shape_calculator::compute_winograd_input_transform_shape()</a>, <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00197">arm_compute::test::validation::reference::winograd_input_transform()</a>, and <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00401">arm_compute::test::validation::reference::winograd_output_transform()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;{</div><div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;    <span class="keywordtype">int</span> num_tiles_x = std::ceil((in_dims.width - (kernel_size.width - 1) + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_left() + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_right()) / static_cast&lt;float&gt;(output_tile_size.width));</div><div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;    <span class="keywordtype">int</span> num_tiles_y = std::ceil((in_dims.height - (kernel_size.height - 1) + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_top() + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_bottom()) / static_cast&lt;float&gt;(output_tile_size.height));</div><div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;</div><div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;    <span class="comment">// Clamp in case we provide paddings but we have 1D convolution</span></div><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;    num_tiles_x = std::min(num_tiles_x, static_cast&lt;int&gt;(in_dims.width));</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;    num_tiles_y = std::min(num_tiles_y, static_cast&lt;int&gt;(in_dims.height));</div><div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;</div><div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;    <span class="keywordflow">return</span> Size2D(num_tiles_x, num_tiles_y);</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_acbf8f8a6dd185de04c1981c57a8963cf"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">arm_compute::test::validation::conv_info</a></div><div class="ttdeci">conv_info</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00572">Winograd.cpp:572</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_shape_calculator_8h_source.xhtml#l00404">arm_compute::misc::shape_calculator::compute_winograd_input_transform_shape()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00136">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00233">arm_compute::test::validation::reference::winograd_input_transform()</a>, and <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00437">arm_compute::test::validation::reference::winograd_output_transform()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;{</div><div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;    <span class="keywordtype">int</span> num_tiles_x = std::ceil((in_dims.width - (kernel_size.width - 1) + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_left() + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_right()) / static_cast&lt;float&gt;(output_tile_size.width));</div><div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;    <span class="keywordtype">int</span> num_tiles_y = std::ceil((in_dims.height - (kernel_size.height - 1) + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_top() + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_bottom()) / static_cast&lt;float&gt;(output_tile_size.height));</div><div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;</div><div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;    <span class="comment">// Clamp in case we provide paddings but we have 1D convolution</span></div><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;    num_tiles_x = std::min(num_tiles_x, static_cast&lt;int&gt;(in_dims.width));</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;    num_tiles_y = std::min(num_tiles_y, static_cast&lt;int&gt;(in_dims.height));</div><div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;</div><div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;    <span class="keywordflow">return</span> Size2D(num_tiles_x, num_tiles_y);</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_acbf8f8a6dd185de04c1981c57a8963cf"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">arm_compute::test::validation::conv_info</a></div><div class="ttdeci">conv_info</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00694">Winograd.cpp:694</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afe3b7128bf77dd12c85eed944fe5b3d4"></a>
+<a id="afe3b7128bf77dd12c85eed944fe5b3d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afe3b7128bf77dd12c85eed944fe5b3d4">&#9670;&nbsp;</a></span>convert_window_coord_to_position()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -8616,14 +9784,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Absolute coordinates. </dd></dl>
 
-<p>Definition at line <a class="el" href="_window_iterator_8h_source.xhtml#l00040">40</a> of file <a class="el" href="_window_iterator_8h_source.xhtml">WindowIterator.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_window_iterator_8h_source.xhtml#l00044">44</a> of file <a class="el" href="_window_iterator_8h_source.xhtml">WindowIterator.h</a>.</p>
 
-<p>References <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;{</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    Coordinates position;</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; Coordinates::num_max_dimensions; ++i)</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    {</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        position.set(i, w[i].start() + <a class="code" href="helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a>[i] * w[i].step());</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    }</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <span class="keywordflow">return</span> position;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;}</div><div class="ttc" id="helpers_8h_xhtml_a009469e4d9b8fce3b6d5e97d2077827d"><div class="ttname"><a href="helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a></div><div class="ttdeci">__global uchar * offset(const Image *img, int x, int y)</div><div class="ttdoc">Get the pointer position of a Image. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00311">helpers.h:311</a></div></div>
+<p class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;{</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    Coordinates position;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; Coordinates::num_max_dimensions; ++i)</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    {</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        position.set(i, w[i].start() + <a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a>[i] * w[i].step());</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    }</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <span class="keywordflow">return</span> position;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;}</div><div class="ttc" id="src_2core_2_c_l_2cl__kernels_2_helpers_8h_xhtml_a009469e4d9b8fce3b6d5e97d2077827d"><div class="ttname"><a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a></div><div class="ttdeci">__global uchar * offset(const Image *img, int x, int y)</div><div class="ttdoc">Get the pointer position of a Image. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00309">helpers.h:309</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad95e1c14c3007ca18950bf8f4c5a5c93"></a>
+<a id="ad95e1c14c3007ca18950bf8f4c5a5c93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad95e1c14c3007ca18950bf8f4c5a5c93">&#9670;&nbsp;</a></span>coords2index()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -8665,18 +9835,62 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>linead index </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00308">308</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00308">308</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
 
-<p>Referenced by <a class="el" href="reference_2_convert_fully_connected_weights_8cpp_source.xhtml#l00035">arm_compute::test::validation::reference::convert_fully_connected_weights()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>, and <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00197">arm_compute::test::validation::reference::winograd_input_transform()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="reference_2_convert_fully_connected_weights_8cpp_source.xhtml#l00035">arm_compute::test::validation::reference::convert_fully_connected_weights()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>, and <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00233">arm_compute::test::validation::reference::winograd_input_transform()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;{</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;    <span class="keywordtype">int</span> num_elements = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.total_size();</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(num_elements);</div><div class="line"><a name="l00312"></a><span class="lineno">  312</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 linear index from empty shape!&quot;</span>);</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    <span class="keywordtype">int</span> index  = 0;</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <span class="keywordtype">int</span> stride = 1;</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> d = 0; d &lt; coord.num_dimensions(); ++d)</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;    {</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;        index += coord[d] * stride;</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;        stride *= <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[d];</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    }</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    <span class="keywordflow">return</span> index;</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a6dc630a6ae9cc063b3924bcea8dee9d6"><div class="ttname"><a href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a></div><div class="ttdeci">#define ARM_COMPUTE_UNUSED(...)</div><div class="ttdoc">To avoid unused variables warnings. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00160">Error.h:160</a></div></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#l00328">Error.h:328</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a35fb9d1dde1b976f4b7d361aabcc7c0d"></a>
+<a id="a5516ba576a612c73954609522347b576"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5516ba576a612c73954609522347b576">&#9670;&nbsp;</a></span>cpu_model_to_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string arm_compute::cpu_model_to_string </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a>&#160;</td>
+          <td class="paramname"><em>val</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>Convert a cpumodel value to a string. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">val</td><td>CPUModel value to be converted</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>String representing the corresponding CPUModel. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_c_p_p_types_8h_source.xhtml#l00069">69</a> of file <a class="el" href="_c_p_p_types_8h_source.xhtml">CPPTypes.h</a>.</p>
+
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">A53</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">A55r0</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca">A55r1</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">GENERIC_FP16</a>, and <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">GENERIC_FP16_DOT</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="main_8cpp_source.xhtml#l00087">main()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;{</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="keywordflow">switch</span>(val)</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    {</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        <span class="keywordflow">case</span> CPUModel::GENERIC:</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        {</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;            <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;GENERIC&quot;</span>);</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        }</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        <span class="keywordflow">case</span> CPUModel::GENERIC_FP16:</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;        {</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;            <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;GENERIC_FP16&quot;</span>);</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        }</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        <span class="keywordflow">case</span> CPUModel::GENERIC_FP16_DOT:</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        {</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;            <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;GENERIC_FP16_DOT&quot;</span>);</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        }</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        <span class="keywordflow">case</span> CPUModel::A53:</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        {</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;            <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;A53&quot;</span>);</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        }</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        <span class="keywordflow">case</span> CPUModel::A55r0:</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        {</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;            <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;A55r0&quot;</span>);</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        }</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <span class="keywordflow">case</span> CPUModel::A55r1:</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        {</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;            <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;A55r1&quot;</span>);</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        }</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        {</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Invalid CPUModel.&quot;</span>);</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;            <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;GENERIC&quot;</span>);</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        }</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    }</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;}</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#l00261">Error.h:261</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a6f698fa1629f7f800b3c8cd77a3d4b4a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f698fa1629f7f800b3c8cd77a3d4b4a">&#9670;&nbsp;</a></span>create_configure_kernel()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8699,16 +9913,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>A unique pointer pointed to a CL/GLES kernel object </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00074">74</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00074">74</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;{</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    std::unique_ptr&lt;Kernel&gt; k = arm_compute::support::cpp14::make_unique&lt;Kernel&gt;();</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    k-&gt;configure(std::forward&lt;T&gt;(args)...);</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <span class="keywordflow">return</span> k;</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a3eee3c80d78ee4574a5eed0af5af919d"></a>
+<a id="a439338e8e5a7c76a079aca52e16cff79"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a439338e8e5a7c76a079aca52e16cff79">&#9670;&nbsp;</a></span>create_error()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a> arm_compute::create_error </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a> create_error </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a>&#160;</td>
           <td class="paramname"><em>error_code</em>, </td>
@@ -8765,16 +9981,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>status containing the error </dd></dl>
 
-<p>Referenced by <a class="el" href="_error_8h_source.xhtml#l00102">Status::throw_if_error()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_error_8cpp_source.xhtml#l00042">42</a> of file <a class="el" href="_error_8cpp_source.xhtml">Error.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_error_8cpp_source.xhtml#l00033">create_error_va_list()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_error_8h_source.xhtml#l00102">Status::throw_if_error()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;{</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    va_list args;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    va_start(args, msg);</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="keyword">auto</span> err = <a class="code" href="namespacearm__compute.xhtml#aee087c8a7edb0fb5b7e75b9037e34cf7">create_error_va_list</a>(error_code, <span class="keyword">function</span>, file, line, msg, args);</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    va_end(args);</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keywordflow">return</span> err;</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_aee087c8a7edb0fb5b7e75b9037e34cf7"><div class="ttname"><a href="namespacearm__compute.xhtml#aee087c8a7edb0fb5b7e75b9037e34cf7">arm_compute::create_error_va_list</a></div><div class="ttdeci">Status create_error_va_list(ErrorCode error_code, const char *function, const char *file, const int line, const char *msg, va_list args)</div><div class="ttdoc">Creates an error containing the error message from variable argument list. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8cpp_source.xhtml#l00033">Error.cpp:33</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a2edb6ec8bea5c26d7d802d21caf64d02"></a>
+<a id="aee087c8a7edb0fb5b7e75b9037e34cf7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee087c8a7edb0fb5b7e75b9037e34cf7">&#9670;&nbsp;</a></span>create_error_va_list()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a> arm_compute::create_error_va_list </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a> create_error_va_list </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a>&#160;</td>
           <td class="paramname"><em>error_code</em>, </td>
@@ -8831,11 +10054,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>status containing the error </dd></dl>
 
-<p>Referenced by <a class="el" href="_error_8h_source.xhtml#l00102">Status::throw_if_error()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_error_8cpp_source.xhtml#l00033">33</a> of file <a class="el" href="_error_8cpp_source.xhtml">Error.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00309">offset()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00266">arm_compute::test::validation::out</a>, and <a class="el" href="_toolchain_support_8h_source.xhtml#l00289">arm_compute::support::cpp11::snprintf()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_error_8cpp_source.xhtml#l00042">create_error()</a>, <a class="el" href="_error_8cpp_source.xhtml#l00051">error()</a>, and <a class="el" href="_error_8h_source.xhtml#l00102">Status::throw_if_error()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;{</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <span class="keywordtype">char</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>[512];</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="keywordtype">int</span>  <a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a> = <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a9429515817425d10f4b662eaa069cc5c">snprintf</a>(out, <span class="keyword">sizeof</span>(out), <span class="stringliteral">&quot;in %s %s:%d: &quot;</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    vsnprintf(out + offset, <span class="keyword">sizeof</span>(out) - offset, msg, args);</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">Status</a>(error_code, std::string(out));</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;}</div><div class="ttc" id="src_2core_2_c_l_2cl__kernels_2_helpers_8h_xhtml_a009469e4d9b8fce3b6d5e97d2077827d"><div class="ttname"><a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a></div><div class="ttdeci">__global uchar * offset(const Image *img, int x, int y)</div><div class="ttdoc">Get the pointer position of a Image. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00309">helpers.h:309</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00266">Winograd.cpp:266</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1support_1_1cpp11_xhtml_a9429515817425d10f4b662eaa069cc5c"><div class="ttname"><a href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a9429515817425d10f4b662eaa069cc5c">arm_compute::support::cpp11::snprintf</a></div><div class="ttdeci">int snprintf(char *s, std::size_t n, const char *fmt, Ts &amp;&amp;... args)</div><div class="ttdoc">Loads the data from the given location, converts them to character string equivalents and writes the ...</div><div class="ttdef"><b>Definition:</b> <a href="_toolchain_support_8h_source.xhtml#l00289">ToolchainSupport.h:289</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="abc72c95941485d8a068fa38372308574"></a>
+<a id="abc72c95941485d8a068fa38372308574"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc72c95941485d8a068fa38372308574">&#9670;&nbsp;</a></span>create_kernel()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8851,13 +10084,15 @@
 <p>Helper function to create and return a unique_ptr pointed to a CL/GLES kernel object. </p>
 <dl class="section return"><dt>Returns</dt><dd>A unique pointer pointed to a <a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class. ">Kernel</a> kernel object </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00086">86</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00086">86</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>Referenced by <a class="el" href="_g_c_kernel_library_8h_source.xhtml#l00236">GCKernelLibrary::set_context()</a>, and <a class="el" href="_c_l_kernel_library_8h_source.xhtml#l00290">CLKernelLibrary::set_device()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_g_c_kernel_library_8h_source.xhtml#l00237">GCKernelLibrary::set_context()</a>, and <a class="el" href="_c_l_kernel_library_8h_source.xhtml#l00290">CLKernelLibrary::set_device()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;{</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    std::unique_ptr&lt;Kernel&gt; k = arm_compute::support::cpp14::make_unique&lt;Kernel&gt;();</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    <span class="keywordflow">return</span> k;</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aaf5f536bf7ec25ff83b912badcf61405"></a>
+<a id="aaf5f536bf7ec25ff83b912badcf61405"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaf5f536bf7ec25ff83b912badcf61405">&#9670;&nbsp;</a></span>create_window_iterator()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -8905,18 +10140,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>A <a class="el" href="classarm__compute_1_1_window_iterator.xhtml" title="Iterate over a portion of a Window. ">WindowIterator</a> object. </dd></dl>
 
-<p>Definition at line <a class="el" href="_window_iterator_8h_source.xhtml#l00304">304</a> of file <a class="el" href="_window_iterator_8h_source.xhtml">WindowIterator.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_window_iterator_8h_source.xhtml#l00317">317</a> of file <a class="el" href="_window_iterator_8h_source.xhtml">WindowIterator.h</a>.</p>
 
-<p>Referenced by <a class="el" href="_window_iterator_8cpp_source.xhtml#l00064">DATA_TEST_CASE()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;{</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    <span class="keywordflow">return</span> WindowIterator&lt;L&gt;(w, start, end, std::move(lambda_function));</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">Referenced by <a class="el" href="_window_iterator_8cpp_source.xhtml#l00064">DATA_TEST_CASE()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;{</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;    <span class="keywordflow">return</span> WindowIterator&lt;L&gt;(w, start, end, std::move(lambda_function));</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a70c6f92f6b74982b31716cfd2fdf612a"></a>
+<a id="a834b76c7d21af898f39def3b787d7530"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a834b76c7d21af898f39def3b787d7530">&#9670;&nbsp;</a></span>data_layout_from_name()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a> arm_compute::data_layout_from_name </td>
+          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a> data_layout_from_name </td>
           <td>(</td>
           <td class="paramtype">const std::string &amp;&#160;</td>
           <td class="paramname"><em>name</em></td><td>)</td>
@@ -8934,11 +10171,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Converted DataLayout enumeration </dd></dl>
 
-<p>Referenced by <a class="el" href="_type_loader_8h_source.xhtml#l00048">operator&gt;&gt;()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_type_loader_8cpp_source.xhtml#l00051">51</a> of file <a class="el" href="_type_loader_8cpp_source.xhtml">TypeLoader.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>, and <a class="el" href="_utility_8h_source.xhtml#l00202">arm_compute::utility::tolower()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keyword">static</span> <span class="keyword">const</span> std::map&lt;std::string, arm_compute::DataLayout&gt; data_layouts =</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    {</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        { <span class="stringliteral">&quot;nhwc&quot;</span>, DataLayout::NHWC },</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        { <span class="stringliteral">&quot;nchw&quot;</span>, DataLayout::NCHW },</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    };</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <span class="keywordflow">try</span></div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    {</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        <span class="keywordflow">return</span> data_layouts.at(<a class="code" href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">arm_compute::utility::tolower</a>(name));</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    }</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="keywordflow">catch</span>(<span class="keyword">const</span> std::out_of_range &amp;)</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    {</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        <span class="keywordflow">throw</span> std::invalid_argument(name);</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    }</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utility_xhtml_abb96ad5c7071ec3a47ea5f07e817a636"><div class="ttname"><a href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">arm_compute::utility::tolower</a></div><div class="ttdeci">std::string tolower(std::string string)</div><div class="ttdoc">Convert string to lower case. </div><div class="ttdef"><b>Definition:</b> <a href="_utility_8h_source.xhtml#l00202">Utility.h:202</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="abb7e0f23a4f2e63f39433f158dad47ab"></a>
+<a id="abb7e0f23a4f2e63f39433f158dad47ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb7e0f23a4f2e63f39433f158dad47ab">&#9670;&nbsp;</a></span>data_size_from_type()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -8969,17 +10211,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The size in bytes of the data type </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00107">107</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00108">108</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
 
-<p>Referenced by <a class="el" href="validation_2_c_l_2_activation_layer_8cpp_source.xhtml#l00091">arm_compute::test::validation::DATA_TEST_CASE()</a>, and <a class="el" href="_tensor_info_8h_source.xhtml#l00240">TensorInfo::element_size()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;{</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>)</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    {</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;            <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;            <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        <span class="keywordflow">case</span> DataType::F64:</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;            <span class="keywordflow">return</span> 8;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        <span class="keywordflow">case</span> DataType::SIZET:</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">sizeof</span>(size_t);</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Invalid data type&quot;</span>);</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    }</div><div class="line"><a name="l00133"></a><span class="lineno">  133</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#l00261">Error.h:261</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00088">GEMM.cpp:88</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_c_l_locally_connected_matrix_multiply_kernel_8cpp_source.xhtml#l00044">CLLocallyConnectedMatrixMultiplyKernel::CLLocallyConnectedMatrixMultiplyKernel()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00437">NELogits1DMaxKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00040">CLGradientKernel::configure()</a>, <a class="el" href="_c_l_depth_convert_layer_kernel_8cpp_source.xhtml#l00095">CLDepthConvertLayerKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_n_e_reduction_operation_kernel_8cpp_source.xhtml#l00597">NEReductionOperationKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00044">GCGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_8cpp_source.xhtml#l00051">NEGEMM::configure()</a>, <a class="el" href="validation_2_c_l_2_activation_layer_8cpp_source.xhtml#l00091">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_tensor_info_8h_source.xhtml#l00240">TensorInfo::element_size()</a>, <a class="el" href="_n_e_h_o_g_detector_kernel_8cpp_source.xhtml#l00095">NEHOGDetectorKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00829">NEGEMMLowpMatrixMultiplyKernel::run()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00772">NEHOGBlockNormalizationKernel::run()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01024">NEEdgeNonMaxSuppressionKernel::run()</a>, <a class="el" href="_i_lut_allocator_8cpp_source.xhtml#l00055">ILutAllocator::size()</a>, and <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;{</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>)</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    {</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;            <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;            <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keywordflow">case</span> DataType::F64:</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;            <span class="keywordflow">return</span> 8;</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        <span class="keywordflow">case</span> DataType::SIZET:</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">sizeof</span>(size_t);</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Invalid data type&quot;</span>);</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    }</div><div class="line"><a name="l00134"></a><span class="lineno">  134</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00174">ArithmeticSubtraction.cpp:174</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a01adc12d8e07c06cdb0f03c56a455bf3"></a>
+<a id="a01adc12d8e07c06cdb0f03c56a455bf3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a01adc12d8e07c06cdb0f03c56a455bf3">&#9670;&nbsp;</a></span>data_type_for_convolution()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -9028,15 +10272,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The return type is a pair. The first element of the pair is the biggest data type needed for the first stage. The second element of the pair is the biggest data type needed for the second stage. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00705">705</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00706">706</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
-<div class="fragment"><div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;{</div><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> first_stage  = DataType::UNKNOWN;</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> second_stage = DataType::UNKNOWN;</div><div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;</div><div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;    <span class="keyword">auto</span> gez = [](<span class="keyword">const</span> int16_t &amp;v)</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;    {</div><div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;        <span class="keywordflow">return</span> v &gt;= 0;</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;    };</div><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;    <span class="keyword">auto</span> accu_neg = [](<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;first, <span class="keyword">const</span> <span class="keywordtype">int</span> &amp;second)</div><div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;    {</div><div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;        <span class="keywordflow">return</span> first + (second &lt; 0 ? second : 0);</div><div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;    };</div><div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;</div><div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;    <span class="keyword">auto</span> accu_pos = [](<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;first, <span class="keyword">const</span> <span class="keywordtype">int</span> &amp;second)</div><div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;    {</div><div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;        <span class="keywordflow">return</span> first + (second &gt; 0 ? second : 0);</div><div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;    };</div><div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;</div><div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">bool</span> only_positive_coefficients = std::all_of(conv_row, conv_row + size, gez) &amp;&amp; std::all_of(conv_col, conv_col + size, gez);</div><div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;</div><div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;    <span class="keywordflow">if</span>(only_positive_coefficients)</div><div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;    {</div><div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_row_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_row, conv_row + size, 0) * UINT8_MAX;</div><div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_value     = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_col, conv_col + size, 0) * max_row_value;</div><div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;</div><div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;        first_stage = (max_row_value &lt;= UINT16_MAX) ? DataType::U16 : DataType::S32;</div><div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;</div><div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;        second_stage = (max_value &lt;= UINT16_MAX) ? DataType::U16 : DataType::S32;</div><div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;    }</div><div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;    {</div><div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> min_row_value  = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_row, conv_row + size, 0, accu_neg) * UINT8_MAX;</div><div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_row_value  = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_row, conv_row + size, 0, accu_pos) * UINT8_MAX;</div><div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> neg_coeffs_sum = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_col, conv_col + size, 0, accu_neg);</div><div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> pos_coeffs_sum = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_col, conv_col + size, 0, accu_pos);</div><div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> min_value      = neg_coeffs_sum * max_row_value + pos_coeffs_sum * min_row_value;</div><div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_value      = neg_coeffs_sum * min_row_value + pos_coeffs_sum * max_row_value;</div><div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;</div><div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;        first_stage = ((INT16_MIN &lt;= min_row_value) &amp;&amp; (max_row_value &lt;= INT16_MAX)) ? DataType::S16 : DataType::S32;</div><div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;</div><div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;        second_stage = ((INT16_MIN &lt;= min_value) &amp;&amp; (max_value &lt;= INT16_MAX)) ? DataType::S16 : DataType::S32;</div><div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;    }</div><div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;</div><div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;    <span class="keywordflow">return</span> std::make_pair(first_stage, second_stage);</div><div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;}</div><div class="ttc" id="accumulate_8cl_xhtml_a00e540076dd545ad59ac7482f8cdf514"><div class="ttname"><a href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">accumulate</a></div><div class="ttdeci">__kernel void accumulate(__global uchar *input_ptr, uint input_stride_x, uint input_step_x, uint input_stride_y, uint input_step_y, uint input_offset_first_element_in_bytes, __global uchar *accu_ptr, uint accu_stride_x, uint accu_step_x, uint accu_stride_y, uint accu_step_y, uint accu_offset_first_element_in_bytes)</div><div class="ttdoc">This function accumulates an input image into output image. </div><div class="ttdef"><b>Definition:</b> <a href="accumulate_8cl_source.xhtml#l00041">accumulate.cl:41</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00072">Types.h:72</a></div></div>
+<p class="reference">References <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_convolution_8cpp_source.xhtml#l00056">CLConvolutionSquare&lt; matrix_size &gt;::configure()</a>, and <a class="el" href="_n_e_convolution_8cpp_source.xhtml#l00057">NEConvolutionSquare&lt; matrix_size &gt;::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;{</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> first_stage  = DataType::UNKNOWN;</div><div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> second_stage = DataType::UNKNOWN;</div><div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;    <span class="keyword">auto</span> gez = [](<span class="keyword">const</span> int16_t &amp;v)</div><div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;    {</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;        <span class="keywordflow">return</span> v &gt;= 0;</div><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;    };</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;</div><div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;    <span class="keyword">auto</span> accu_neg = [](<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;first, <span class="keyword">const</span> <span class="keywordtype">int</span> &amp;second)</div><div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;    {</div><div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;        <span class="keywordflow">return</span> first + (second &lt; 0 ? second : 0);</div><div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;    };</div><div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;</div><div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;    <span class="keyword">auto</span> accu_pos = [](<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;first, <span class="keyword">const</span> <span class="keywordtype">int</span> &amp;second)</div><div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;    {</div><div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;        <span class="keywordflow">return</span> first + (second &gt; 0 ? second : 0);</div><div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;    };</div><div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">bool</span> only_positive_coefficients = std::all_of(conv_row, conv_row + size, gez) &amp;&amp; std::all_of(conv_col, conv_col + size, gez);</div><div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;</div><div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;    <span class="keywordflow">if</span>(only_positive_coefficients)</div><div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;    {</div><div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_row_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_row, conv_row + size, 0) * UINT8_MAX;</div><div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_value     = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_col, conv_col + size, 0) * max_row_value;</div><div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;</div><div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;        first_stage = (max_row_value &lt;= UINT16_MAX) ? DataType::U16 : DataType::S32;</div><div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;</div><div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;        second_stage = (max_value &lt;= UINT16_MAX) ? DataType::U16 : DataType::S32;</div><div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;    }</div><div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;    {</div><div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> min_row_value  = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_row, conv_row + size, 0, accu_neg) * UINT8_MAX;</div><div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_row_value  = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_row, conv_row + size, 0, accu_pos) * UINT8_MAX;</div><div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> neg_coeffs_sum = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_col, conv_col + size, 0, accu_neg);</div><div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> pos_coeffs_sum = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_col, conv_col + size, 0, accu_pos);</div><div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> min_value      = neg_coeffs_sum * max_row_value + pos_coeffs_sum * min_row_value;</div><div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_value      = neg_coeffs_sum * min_row_value + pos_coeffs_sum * max_row_value;</div><div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;</div><div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;        first_stage = ((INT16_MIN &lt;= min_row_value) &amp;&amp; (max_row_value &lt;= INT16_MAX)) ? DataType::S16 : DataType::S32;</div><div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;</div><div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;        second_stage = ((INT16_MIN &lt;= min_value) &amp;&amp; (max_value &lt;= INT16_MAX)) ? DataType::S16 : DataType::S32;</div><div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;    }</div><div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;</div><div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;    <span class="keywordflow">return</span> std::make_pair(first_stage, second_stage);</div><div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;}</div><div class="ttc" id="accumulate_8cl_xhtml_a00e540076dd545ad59ac7482f8cdf514"><div class="ttname"><a href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">accumulate</a></div><div class="ttdeci">__kernel void accumulate(__global uchar *input_ptr, uint input_stride_x, uint input_step_x, uint input_stride_y, uint input_step_y, uint input_offset_first_element_in_bytes, __global uchar *accu_ptr, uint accu_stride_x, uint accu_step_x, uint accu_stride_y, uint accu_step_y, uint accu_offset_first_element_in_bytes)</div><div class="ttdoc">This function accumulates an input image into output image. </div><div class="ttdef"><b>Definition:</b> <a href="accumulate_8cl_source.xhtml#l00041">accumulate.cl:41</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00074">Types.h:74</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a3992df9e8723140a53e49dc194d89ef5"></a>
+<a id="a3992df9e8723140a53e49dc194d89ef5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3992df9e8723140a53e49dc194d89ef5">&#9670;&nbsp;</a></span>data_type_for_convolution_matrix()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -9078,17 +10326,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The return is the biggest data type needed to do the convolution </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">761</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">762</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00102">arm_compute::test::validation::a</a>, <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>, <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00091">arm_compute::test::validation::b</a>, <a class="el" href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00133">arm_compute::test::validation::border_mode</a>, <a class="el" href="namespacearm__compute.xhtml#afa7962c747457714d0944af80cb07058">calculate_same_pad()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00572">arm_compute::test::validation::conv_info</a>, <a class="el" href="namespacearm__compute.xhtml#a5c7b26988083a67a91cd3e7962f38521">deconvolution_output_dimensions()</a>, <a class="el" href="namespacearm__compute.xhtml#a7d57332eb91a8735f173556b3caf6236">deconvolution_output_shape()</a>, <a class="el" href="namespacearm__compute.xhtml#a532fb45c0261724a4c2e755cfd3a44e6">lower_string()</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ac78192301777700de24d8c75667baf35">scaled_dimensions()</a>, <a class="el" href="namespacearm__compute.xhtml#ac955c978e18cc9bf6daea31f13076fba">string_from_activation_func()</a>, <a class="el" href="namespacearm__compute.xhtml#abd15add5c6c7de5c8205ce236875aadd">string_from_border_mode()</a>, <a class="el" href="namespacearm__compute.xhtml#a106c203dd6af234d38452ea0ee7b2ddc">string_from_channel()</a>, <a class="el" href="namespacearm__compute.xhtml#aa7755f939796ad7076886813ff89ed77">string_from_data_layout()</a>, <a class="el" href="namespacearm__compute.xhtml#aefa1d9648995e5eccc693c690e27aa88">string_from_data_type()</a>, <a class="el" href="namespacearm__compute.xhtml#a9c92c867fc64454545668d87b20979eb">string_from_format()</a>, <a class="el" href="namespacearm__compute.xhtml#ade34f5e72f050fd3665f3294dfb15850">string_from_interpolation_policy()</a>, <a class="el" href="namespacearm__compute.xhtml#a018795ab2489d17309e158ff5c060ab1">string_from_matrix_pattern()</a>, <a class="el" href="namespacearm__compute.xhtml#a14831547f57ecf5f0deef888ad41ad30">string_from_non_linear_filter_function()</a>, <a class="el" href="namespacearm__compute.xhtml#afb5698af5404d5d11e3516c87b6e7041">string_from_norm_type()</a>, <a class="el" href="namespacearm__compute.xhtml#a84a03e85d2c40bf54ec8cdd5e3715c58">string_from_pooling_type()</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>.</p>
-<div class="fragment"><div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;{</div><div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;    <span class="keyword">auto</span> gez = [](<span class="keyword">const</span> int16_t v)</div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;    {</div><div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;        <span class="keywordflow">return</span> v &gt;= 0;</div><div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;    };</div><div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;</div><div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">bool</span> only_positive_coefficients = std::all_of(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a> + size, gez);</div><div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;</div><div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;    <span class="keywordflow">if</span>(only_positive_coefficients)</div><div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;    {</div><div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_conv_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a> + size, 0) * UINT8_MAX;</div><div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;        <span class="keywordflow">if</span>(max_conv_value &lt;= UINT16_MAX)</div><div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;        {</div><div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;            <span class="keywordflow">return</span> DataType::U16;</div><div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;        }</div><div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;        {</div><div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;            <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;        }</div><div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;    }</div><div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;    {</div><div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> min_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a> + size, 0, [](<span class="keywordtype">int</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>, <span class="keywordtype">int</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7b8004eef325a40dd43eb80755610fff">b</a>)</div><div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;        {</div><div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;            <span class="keywordflow">return</span> b &lt; 0 ? a + b : <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>;</div><div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;        })</div><div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;        * UINT8_MAX;</div><div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;</div><div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a> + size, 0, [](<span class="keywordtype">int</span> a, <span class="keywordtype">int</span> b)</div><div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;        {</div><div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;            <span class="keywordflow">return</span> b &gt; 0 ? a + b : <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>;</div><div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;        })</div><div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;        * UINT8_MAX;</div><div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;</div><div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;        <span class="keywordflow">if</span>((INT16_MIN &lt;= min_value) &amp;&amp; (INT16_MAX &gt;= max_value))</div><div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;        {</div><div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;            <span class="keywordflow">return</span> DataType::S16;</div><div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;        }</div><div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;        {</div><div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;            <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;        }</div><div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;    }</div><div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_aac40b7097f2bda9274ae07fa33d15a79"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">arm_compute::test::validation::a</a></div><div class="ttdeci">gemm configure &amp; a</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00102">GEMM.cpp:102</a></div></div>
+<p class="reference">References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00102">arm_compute::test::validation::a</a>, <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>, <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00091">arm_compute::test::validation::b</a>, <a class="el" href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00133">arm_compute::test::validation::border_mode</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00324">calculate_same_pad()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00694">arm_compute::test::validation::conv_info</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00339">deconvolution_output_dimensions()</a>, <a class="el" href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">arm_compute::test::validation::policy</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00352">scaled_dimensions()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00162">string_from_activation_func()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00219">string_from_border_mode()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00106">string_from_channel()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00127">string_from_data_layout()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00139">string_from_data_type()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00080">string_from_format()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00255">string_from_gemmlowp_output_stage()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00207">string_from_interpolation_policy()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00182">string_from_matrix_pattern()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00195">string_from_non_linear_filter_function()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00231">string_from_norm_type()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00268">string_from_pixel_value()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00243">string_from_pooling_type()</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, and <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00246">CLConvolutionRectangleKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;{</div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;    <span class="keyword">auto</span> gez = [](<span class="keyword">const</span> int16_t v)</div><div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;    {</div><div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;        <span class="keywordflow">return</span> v &gt;= 0;</div><div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;    };</div><div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;</div><div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">bool</span> only_positive_coefficients = std::all_of(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a> + size, gez);</div><div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;</div><div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;    <span class="keywordflow">if</span>(only_positive_coefficients)</div><div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;    {</div><div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_conv_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a> + size, 0) * UINT8_MAX;</div><div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;        <span class="keywordflow">if</span>(max_conv_value &lt;= UINT16_MAX)</div><div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;        {</div><div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;            <span class="keywordflow">return</span> DataType::U16;</div><div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;        }</div><div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;        {</div><div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;            <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;        }</div><div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;    }</div><div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;    {</div><div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> min_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a> + size, 0, [](<span class="keywordtype">int</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>, <span class="keywordtype">int</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7b8004eef325a40dd43eb80755610fff">b</a>)</div><div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;        {</div><div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;            <span class="keywordflow">return</span> b &lt; 0 ? a + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7b8004eef325a40dd43eb80755610fff">b</a> : <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>;</div><div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;        })</div><div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;        * UINT8_MAX;</div><div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;</div><div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">int</span> max_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a> + size, 0, [](<span class="keywordtype">int</span> a, <span class="keywordtype">int</span> b)</div><div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;        {</div><div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;            <span class="keywordflow">return</span> b &gt; 0 ? a + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7b8004eef325a40dd43eb80755610fff">b</a> : <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>;</div><div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;        })</div><div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;        * UINT8_MAX;</div><div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;</div><div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;        <span class="keywordflow">if</span>((INT16_MIN &lt;= min_value) &amp;&amp; (INT16_MAX &gt;= max_value))</div><div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;        {</div><div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;            <span class="keywordflow">return</span> DataType::S16;</div><div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;        }</div><div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;        {</div><div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;            <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;        }</div><div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;    }</div><div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_aac40b7097f2bda9274ae07fa33d15a79"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">arm_compute::test::validation::a</a></div><div class="ttdeci">gemm configure &amp; a</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00102">GEMM.cpp:102</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_adf88bb8e946175c496fb362aa458128b"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">arm_compute::test::validation::conv</a></div><div class="ttdeci">int16_t conv[25]</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00140">Convolution.cpp:140</a></div></div>
 <div class="ttc" id="accumulate_8cl_xhtml_a00e540076dd545ad59ac7482f8cdf514"><div class="ttname"><a href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">accumulate</a></div><div class="ttdeci">__kernel void accumulate(__global uchar *input_ptr, uint input_stride_x, uint input_step_x, uint input_stride_y, uint input_step_y, uint input_offset_first_element_in_bytes, __global uchar *accu_ptr, uint accu_stride_x, uint accu_step_x, uint accu_stride_y, uint accu_step_y, uint accu_offset_first_element_in_bytes)</div><div class="ttdoc">This function accumulates an input image into output image. </div><div class="ttdef"><b>Definition:</b> <a href="accumulate_8cl_source.xhtml#l00041">accumulate.cl:41</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7b8004eef325a40dd43eb80755610fff"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7b8004eef325a40dd43eb80755610fff">arm_compute::test::validation::b</a></div><div class="ttdeci">CLTensor b</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00091">GEMM.cpp:91</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a59846ef5ca75cd81cdb7e8a1ce08f9db"></a>
+<a id="a59846ef5ca75cd81cdb7e8a1ce08f9db"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59846ef5ca75cd81cdb7e8a1ce08f9db">&#9670;&nbsp;</a></span>data_type_from_format()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -9119,21 +10371,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The size in bytes of the pixel format </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00207">207</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00208">208</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
 
-<p>Referenced by <a class="el" href="validation_2_c_l_2_canny_edge_8cpp_source.xhtml#l00060">arm_compute::test::validation::DATA_TEST_CASE()</a>, and <a class="el" href="_simple_tensor_8h_source.xhtml#l00319">SimpleTensor&lt; T &gt;::data_type()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;{</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    {</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;            <span class="keywordflow">return</span> DataType::U8;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;            <span class="keywordflow">return</span> DataType::U16;</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;            <span class="keywordflow">return</span> DataType::S16;</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;            <span class="keywordflow">return</span> DataType::U32;</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;            <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;            <span class="keywordflow">return</span> DataType::F16;</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;            <span class="keywordflow">return</span> DataType::F32;</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;        <span class="comment">//Doesn&#39;t make sense for planar formats:</span></div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported data_type for given format&quot;</span>);</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;            <span class="keywordflow">return</span> DataType::UNKNOWN;</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;    }</div><div class="line"><a name="l00239"></a><span class="lineno">  239</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#l00261">Error.h:261</a></div></div>
+<p class="reference">Referenced by <a class="el" href="validation_2_c_l_2_canny_edge_8cpp_source.xhtml#l00058">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_simple_tensor_8h_source.xhtml#l00358">SimpleTensor&lt; uint8_t &gt;::data_type()</a>, <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00104">TensorInfo::init()</a>, <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00173">TensorInfo::init_auto_padding()</a>, and <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00325">TensorInfo::set_format()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;{</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;    {</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;            <span class="keywordflow">return</span> DataType::U8;</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;            <span class="keywordflow">return</span> DataType::U16;</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;            <span class="keywordflow">return</span> DataType::S16;</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;            <span class="keywordflow">return</span> DataType::U32;</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;            <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;            <span class="keywordflow">return</span> DataType::F16;</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;            <span class="keywordflow">return</span> DataType::F32;</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;        <span class="comment">//Doesn&#39;t make sense for planar formats:</span></div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported data_type for given format&quot;</span>);</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;            <span class="keywordflow">return</span> DataType::UNKNOWN;</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;    }</div><div class="line"><a name="l00240"></a><span class="lineno">  240</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ade65ba63cdf4becce903866f4a59815e"></a>
+<a id="a307a55b07dc70dc9177ff26543b1c66f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a307a55b07dc70dc9177ff26543b1c66f">&#9670;&nbsp;</a></span>data_type_from_name()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a> arm_compute::data_type_from_name </td>
+          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a> data_type_from_name </td>
           <td>(</td>
           <td class="paramtype">const std::string &amp;&#160;</td>
           <td class="paramname"><em>name</em></td><td>)</td>
@@ -9151,16 +10405,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Converted DataType enumeration </dd></dl>
 
-<p>Referenced by <a class="el" href="_type_loader_8h_source.xhtml#l00048">operator&gt;&gt;()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_type_loader_8cpp_source.xhtml#l00032">32</a> of file <a class="el" href="_type_loader_8cpp_source.xhtml">TypeLoader.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="benchmark_2_c_l_2_depthwise_convolution_layer_8cpp_source.xhtml#l00042">arm_compute::test::benchmark::data_types</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, and <a class="el" href="_utility_8h_source.xhtml#l00202">arm_compute::utility::tolower()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;{</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keyword">static</span> <span class="keyword">const</span> std::map&lt;std::string, arm_compute::DataType&gt; <a class="code" href="namespacearm__compute_1_1test_1_1benchmark.xhtml#aab9a2ff74a27ae837d32a79a38952228">data_types</a> =</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    {</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        { <span class="stringliteral">&quot;f16&quot;</span>, DataType::F16 },</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        { <span class="stringliteral">&quot;f32&quot;</span>, DataType::F32 },</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        { <span class="stringliteral">&quot;qasymm8&quot;</span>, DataType::QASYMM8 },</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    };</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <span class="keywordflow">try</span></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    {</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="keywordflow">return</span> data_types.at(<a class="code" href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">arm_compute::utility::tolower</a>(name));</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    }</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <span class="keywordflow">catch</span>(<span class="keyword">const</span> std::out_of_range &amp;)</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    {</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        <span class="keywordflow">throw</span> std::invalid_argument(name);</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    }</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1benchmark_xhtml_aab9a2ff74a27ae837d32a79a38952228"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1benchmark.xhtml#aab9a2ff74a27ae837d32a79a38952228">arm_compute::test::benchmark::data_types</a></div><div class="ttdeci">const auto data_types</div><div class="ttdef"><b>Definition:</b> <a href="benchmark_2_c_l_2_depthwise_convolution_layer_8cpp_source.xhtml#l00042">DepthwiseConvolutionLayer.cpp:42</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1utility_xhtml_abb96ad5c7071ec3a47ea5f07e817a636"><div class="ttname"><a href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">arm_compute::utility::tolower</a></div><div class="ttdeci">std::string tolower(std::string string)</div><div class="ttdoc">Convert string to lower case. </div><div class="ttdef"><b>Definition:</b> <a href="_utility_8h_source.xhtml#l00202">Utility.h:202</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5c7b26988083a67a91cd3e7962f38521"></a>
+<a id="a49d307dcc8f16084a061e1b6e8140eb7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49d307dcc8f16084a061e1b6e8140eb7">&#9670;&nbsp;</a></span>deconvolution_output_dimensions()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::pair&lt;unsigned int, unsigned int&gt; arm_compute::deconvolution_output_dimensions </td>
+          <td class="memname">const std::pair&lt; unsigned int, unsigned int &gt; deconvolution_output_dimensions </td>
           <td>(</td>
           <td class="paramtype">unsigned int&#160;</td>
           <td class="paramname"><em>in_width</em>, </td>
@@ -9199,18 +10459,6 @@
           <td class="paramkey"></td>
           <td></td>
           <td class="paramtype">unsigned int&#160;</td>
-          <td class="paramname"><em>inner_border_right</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">unsigned int&#160;</td>
-          <td class="paramname"><em>inner_border_top</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">unsigned int&#160;</td>
           <td class="paramname"><em>stride_x</em>, </td>
         </tr>
         <tr>
@@ -9236,8 +10484,6 @@
     <tr><td class="paramdir">[in]</td><td class="paramname">kernel_height</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class. ">Kernel</a> height. </td></tr>
     <tr><td class="paramdir">[in]</td><td class="paramname">padx</td><td>X axis padding. </td></tr>
     <tr><td class="paramdir">[in]</td><td class="paramname">pady</td><td>Y axis padding. </td></tr>
-    <tr><td class="paramdir">[in]</td><td class="paramname">inner_border_right</td><td>The number of zeros added to right edge of the input. </td></tr>
-    <tr><td class="paramdir">[in]</td><td class="paramname">inner_border_top</td><td>The number of zeros added to top edge of the input. </td></tr>
     <tr><td class="paramdir">[in]</td><td class="paramname">stride_x</td><td>X axis input stride. </td></tr>
     <tr><td class="paramdir">[in]</td><td class="paramname">stride_y</td><td>Y axis input stride.</td></tr>
   </table>
@@ -9245,56 +10491,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>A pair with the new width in the first position and the new height in the second. </dd></dl>
 
-<p>Referenced by <a class="el" href="_c_l_2_deconvolution_layer_8cpp_source.xhtml#l00064">arm_compute::test::validation::DATA_TEST_CASE()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00339">339</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deconvolution_layer_node_8cpp_source.xhtml#l00052">DeconvolutionLayerNode::compute_output_descriptor()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00110">CLDeconvolutionLayer::configure()</a>, <a class="el" href="_n_e_deconvolution_layer_8cpp_source.xhtml#l00103">NEDeconvolutionLayer::configure()</a>, <a class="el" href="_c_l_2_deconvolution_layer_8cpp_source.xhtml#l00070">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00051">CLDeconvolutionLayer::validate()</a>, and <a class="el" href="_n_e_deconvolution_layer_8cpp_source.xhtml#l00050">NEDeconvolutionLayer::validate()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;{</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(in_width &lt; 1 || in_height &lt; 1);</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(((in_width - 1) * stride_x + kernel_width) &lt; 2 * padx);</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(((in_height - 1) * stride_y + kernel_height) &lt; 2 * pady);</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span> w = stride_x * (in_width - 1) + kernel_width - 2 * padx;</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span> h = stride_y * (in_height - 1) + kernel_height - 2 * pady;</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;    <span class="keywordflow">return</span> std::make_pair&lt;unsigned int, unsigned int&gt;(w, h);</div><div class="line"><a name="l00350"></a><span class="lineno">  350</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#l00337">Error.h:337</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a7d57332eb91a8735f173556b3caf6236"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> arm_compute::deconvolution_output_shape </td>
-          <td>(</td>
-          <td class="paramtype">const std::pair&lt; unsigned int, unsigned int &gt; &amp;&#160;</td>
-          <td class="paramname"><em>out_dims</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></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>input</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></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>weights</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
+<a id="ad656a27ce8a507e31096ca45683ba9a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad656a27ce8a507e31096ca45683ba9a5">&#9670;&nbsp;</a></span>delta_bilinear_c1()</h2>
 
-<p>Returns expected shape for the deconvolution output tensor. </p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramdir">[in]</td><td class="paramname">out_dims</td><td>widht and height of the output tensor, these values can be obtained with the function deconvolution_output_dimensions. </td></tr>
-    <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Shape of the input tensor. </td></tr>
-    <tr><td class="paramdir">[in]</td><td class="paramname">weights</td><td>Shape of the weights tensor.</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>Deconvolution output tensor shape. </dd></dl>
-
-<p>Referenced by <a class="el" href="_c_l_2_deconvolution_layer_8cpp_source.xhtml#l00064">arm_compute::test::validation::DATA_TEST_CASE()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ad656a27ce8a507e31096ca45683ba9a5"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -9352,16 +10560,18 @@
 <dl class="section note"><dt>Note</dt><dd>dx and dy must be in the range [0, 1.0]</dd></dl>
 <dl class="section return"><dt>Returns</dt><dd>The bilinear interpolated pixel value </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">127</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">127</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00210">pixel_bilinear_c1()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00237">pixel_bilinear_c1_clamp()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_n_e_scale_kernel_8cpp_source.xhtml#l00285">NEScaleKernel::configure()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00210">pixel_bilinear_c1()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00237">pixel_bilinear_c1_clamp()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;{</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> dx1 = 1.0f - dx;</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> dy1 = 1.0f - dy;</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    <span class="keyword">const</span> T a00 = *pixel_ptr;</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    <span class="keyword">const</span> T a01 = *(pixel_ptr + 1);</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    <span class="keyword">const</span> T a10 = *(pixel_ptr + stride);</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    <span class="keyword">const</span> T a11 = *(pixel_ptr + stride + 1);</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> w1 = dx1 * dy1;</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> w2 = dx * dy1;</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> w3 = dx1 * dy;</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> w4 = dx * dy;</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(a00 * w1 + a01 * w2 + a10 * w3 + a11 * w4);</div><div class="line"><a name="l00145"></a><span class="lineno">  145</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#l00337">Error.h:337</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a6174495b626531de015ae2b810859287"></a>
+<a id="a6174495b626531de015ae2b810859287"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6174495b626531de015ae2b810859287">&#9670;&nbsp;</a></span>delta_linear_c1_x()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -9405,16 +10615,18 @@
 <dl class="section note"><dt>Note</dt><dd>dx must be in the range [0, 1.0]</dd></dl>
 <dl class="section return"><dt>Returns</dt><dd>The linear interpolated pixel value </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00184">184</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00184">184</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00237">pixel_bilinear_c1_clamp()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00237">pixel_bilinear_c1_clamp()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;{</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;    <span class="keyword">const</span> T a00 = *pixel_ptr;</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;    <span class="keyword">const</span> T a01 = *(pixel_ptr + 1);</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> dx1 = 1.0f - dx;</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> w1 = dx1;</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> w2 = dx;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(a00 * w1 + a01 * w2);</div><div class="line"><a name="l00197"></a><span class="lineno">  197</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#l00337">Error.h:337</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad5fa8bacf824e9538014bfb0dcdaab52"></a>
+<a id="ad5fa8bacf824e9538014bfb0dcdaab52"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad5fa8bacf824e9538014bfb0dcdaab52">&#9670;&nbsp;</a></span>delta_linear_c1_y()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -9465,21 +10677,23 @@
 <dl class="section note"><dt>Note</dt><dd>dy must be in the range [0, 1.0]</dd></dl>
 <dl class="section return"><dt>Returns</dt><dd>The linear interpolated pixel value </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00159">159</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00159">159</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00237">pixel_bilinear_c1_clamp()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00237">pixel_bilinear_c1_clamp()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;{</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> dy1 = 1.0f - dy;</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;    <span class="keyword">const</span> T a00 = *pixel_ptr;</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;    <span class="keyword">const</span> T a10 = *(pixel_ptr + stride);</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> w1 = dy1;</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> w3 = dy;</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(a00 * w1 + a10 * w3);</div><div class="line"><a name="l00172"></a><span class="lineno">  172</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#l00337">Error.h:337</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a94de99589574c0072be98be1ba806cad"></a>
+<a id="a6c4a5ca34ebb51d4e2e119a110e4c8f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6c4a5ca34ebb51d4e2e119a110e4c8f0">&#9670;&nbsp;</a></span>device_supports_extension()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">bool arm_compute::device_supports_extension </td>
+          <td class="memname">bool device_supports_extension </td>
           <td>(</td>
           <td class="paramtype">const cl::Device &amp;&#160;</td>
           <td class="paramname"><em>device</em>, </td>
@@ -9508,9 +10722,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the extension is supported </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00183">183</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00135">arm_non_uniform_workgroup_supported()</a>, <a class="el" href="_c_l_scheduler_8cpp_source.xhtml#l00056">CLScheduler::default_init()</a>, <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00155">dot8_acc_supported()</a>, <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00145">dot8_supported()</a>, <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00140">fp16_supported()</a>, and <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00979">CLKernelLibrary::int64_base_atomics_supported()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;{</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    std::string extensions = device.getInfo&lt;CL_DEVICE_EXTENSIONS&gt;();</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="keyword">auto</span>        pos        = extensions.find(extension_name);</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;    <span class="keywordflow">return</span> (pos != std::string::npos);</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a12705a88669cb9fb90451ebe0db53c41"></a>
+<a id="acac1575c0edd329ceb4a54d9fe8dcb08"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acac1575c0edd329ceb4a54d9fe8dcb08">&#9670;&nbsp;</a></span>DIV_CEIL()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -9545,18 +10765,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the result. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00051">51</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00052">52</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;{</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <span class="keywordflow">return</span> (val + m - 1) / m;</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a4878daab91c6d7173de20283766e0c2c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4878daab91c6d7173de20283766e0c2c">&#9670;&nbsp;</a></span>dot8_acc_supported()</h2>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00064">ceil_to_multiple()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keywordflow">return</span> (val + m - 1) / m;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;}</div></div><!-- fragment -->
-</div>
-</div>
-<a class="anchor" id="a5b3ca013e6190e8a57de25064bf7caad"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">bool arm_compute::dot8_acc_supported </td>
+          <td class="memname">bool dot8_acc_supported </td>
           <td>(</td>
           <td class="paramtype">const cl::Device &amp;&#160;</td>
           <td class="paramname"><em>device</em></td><td>)</td>
@@ -9574,14 +10794,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the extension is supported </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00155">155</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00183">device_supports_extension()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00895">CLKernelLibrary::create_kernel()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;{</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">device_supports_extension</a>(device, <span class="stringliteral">&quot;cl_arm_integer_dot_product_accumulate_int8&quot;</span>);</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a6c4a5ca34ebb51d4e2e119a110e4c8f0"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">arm_compute::device_supports_extension</a></div><div class="ttdeci">bool device_supports_extension(const cl::Device &amp;device, const char *extension_name)</div><div class="ttdoc">Helper function to check whether a given extension is supported. </div><div class="ttdef"><b>Definition:</b> <a href="_c_l_helpers_8cpp_source.xhtml#l00183">CLHelpers.cpp:183</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a3e1a11146f191cc0dc152e1be09b9339"></a>
+<a id="ac07e02c0066cf540a5a2665fa7d54934"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac07e02c0066cf540a5a2665fa7d54934">&#9670;&nbsp;</a></span>dot8_supported()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">bool arm_compute::dot8_supported </td>
+          <td class="memname">bool dot8_supported </td>
           <td>(</td>
           <td class="paramtype">const cl::Device &amp;&#160;</td>
           <td class="paramname"><em>device</em></td><td>)</td>
@@ -9599,9 +10828,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the extension is supported </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00145">145</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00183">device_supports_extension()</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a>, and <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">get_target_from_name()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00141">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00220">CLGEMMLowpMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00106">CLGEMMLowpMatrixAReductionKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_core_8cpp_source.xhtml#l00091">CLGEMMLowpMatrixMultiplyCore::configure()</a>, and <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00895">CLKernelLibrary::create_kernel()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;{</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    std::string     device_name = device.getInfo&lt;CL_DEVICE_NAME&gt;();</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    <span class="keyword">const</span> <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> gpu_target  = <a class="code" href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">get_target_from_name</a>(device_name);</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    <span class="comment">// SW_WORKAROUND: Workaround for DDK revision r14p0.to enable cl_arm_integer_dot_product_int8</span></div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    std::set&lt;GPUTarget&gt; sw_workaround_issue = {GPUTarget::G76};</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">device_supports_extension</a>(device, <span class="stringliteral">&quot;cl_arm_integer_dot_product_int8&quot;</span>) || sw_workaround_issue.count(gpu_target) != 0);</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a0dc6fb54ac0bbc7bf512fe0ca7414076"><div class="ttname"><a href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">arm_compute::get_target_from_name</a></div><div class="ttdeci">GPUTarget get_target_from_name(const std::string &amp;device_name)</div><div class="ttdoc">Helper function to get the GPU target from a device name. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">GPUTarget.cpp:127</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a6c4a5ca34ebb51d4e2e119a110e4c8f0"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">arm_compute::device_supports_extension</a></div><div class="ttdeci">bool device_supports_extension(const cl::Device &amp;device, const char *extension_name)</div><div class="ttdoc">Helper function to check whether a given extension is supported. </div><div class="ttdef"><b>Definition:</b> <a href="_c_l_helpers_8cpp_source.xhtml#l00183">CLHelpers.cpp:183</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">arm_compute::GPUTarget</a></div><div class="ttdeci">GPUTarget</div><div class="ttdoc">Available GPU Targets. </div><div class="ttdef"><b>Definition:</b> <a href="_g_p_u_target_8h_source.xhtml#l00034">GPUTarget.h:34</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a34b06c0cd94808a77b697e79880b84b0"></a>
+<a id="a34b06c0cd94808a77b697e79880b84b0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a34b06c0cd94808a77b697e79880b84b0">&#9670;&nbsp;</a></span>element_size_from_data_type()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -9632,21 +10872,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The size in bytes of the data type </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00179">179</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00180">180</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
 
-<p>Referenced by <a class="el" href="_simple_tensor_8h_source.xhtml#l00288">SimpleTensor&lt; T &gt;::element_size()</a>, and <a class="el" href="_validation_8cpp_source.xhtml#l00177">arm_compute::test::validation::validate()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;{</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    {</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;            <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;            <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined element size for given data type&quot;</span>);</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    }</div><div class="line"><a name="l00199"></a><span class="lineno">  199</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#l00261">Error.h:261</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_c_l_direct_convolution_output_stage_kernel_8cpp_source.xhtml#l00129">CLDirectConvolutionLayerOutputStageKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00877">NEGradientKernel::configure()</a>, <a class="el" href="_simple_tensor_8h_source.xhtml#l00327">SimpleTensor&lt; uint8_t &gt;::element_size()</a>, <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00498">NENonMaximaSuppression3x3Kernel::run()</a>, <a class="el" href="_n_e_harris_corners_kernel_8cpp_source.xhtml#l00709">NEHarrisScoreKernel&lt; block_size &gt;::run()</a>, and <a class="el" href="_validation_8cpp_source.xhtml#l00177">arm_compute::test::validation::validate()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;{</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;    {</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;            <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;            <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined element size for given data type&quot;</span>);</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    }</div><div class="line"><a name="l00200"></a><span class="lineno">  200</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab36bc98bdbf6c4d7bee0cb099513c806"></a>
+<a id="a5c7c5fe99682f92e5e09cf62fb02ac91"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c7c5fe99682f92e5e09cf62fb02ac91">&#9670;&nbsp;</a></span>enqueue() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">void arm_compute::enqueue </td>
+          <td class="memname">void enqueue </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_g_c_kernel.xhtml">IGCKernel</a> &amp;&#160;</td>
           <td class="paramname"><em>kernel</em>, </td>
@@ -9685,14 +10927,33 @@
 </dl>
 <dl class="section note"><dt>Note</dt><dd>If any dimension of the lws is greater than the global workgroup size then no lws will be passed. </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_i_g_c_kernel_8cpp_source.xhtml#l00041">41</a> of file <a class="el" href="_i_g_c_kernel_8cpp_source.xhtml">IGCKernel.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_open_g_l_e_s_8h_source.xhtml#l00045">ARM_COMPUTE_GL_CHECK</a>, <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_g_c_kernel_library_8h_source.xhtml#l00121">GCKernel::get_program()</a>, <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00542">glDispatchCompute()</a>, <a class="el" href="_i_g_c_kernel_8cpp_source.xhtml#l00069">IGCKernel::kernel()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>, and <a class="el" href="_window_8h_source.xhtml#l00154">Window::z()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;{</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(kernel);</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <span class="keywordflow">if</span>(kernel.<a class="code" href="classarm__compute_1_1_i_g_c_kernel.xhtml#a3b8f9d088e013cfbb039fd0ebbe42589">kernel</a>().<a class="code" href="classarm__compute_1_1_g_c_kernel.xhtml#af88e933209c9201dfdafa052d3181aac">get_program</a>() == 0)</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    {</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        <span class="keywordflow">return</span>;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    }</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>((0 == (window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>())) || (0 == (window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>())));</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>((((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) % (window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>() * lws[0])) != 0),</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                             <span class="stringliteral">&quot;window x end =%d, start=%d, step=%d, lws x=%d&quot;</span>, window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>(), lws[0]);</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>((((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) % (window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>() * lws[1])) != 0),</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                             <span class="stringliteral">&quot;window y end =%d, start=%d, step=%d, lws y=%d&quot;</span>, window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>(), lws[1]);</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>((((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) % (window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>() * lws[2])) != 0),</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                             <span class="stringliteral">&quot;window z end =%d, start=%d, step=%d, lws z=%d&quot;</span>, window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>(), lws[2]);</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#af7682f051486a2d562206f70b2c212ab">glDispatchCompute</a>(((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) / window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>()) / lws[0],</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                                           ((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) / window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>()) / lws[1],</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                                           ((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) / window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>()) / lws[2]));</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;}</div><div class="ttc" id="_open_g_l_e_s_8h_xhtml_a496c7b08ac063d996956854207366913"><div class="ttname"><a href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a></div><div class="ttdeci">#define ARM_COMPUTE_GL_CHECK(x)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8h_source.xhtml#l00045">OpenGLES.h:45</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml_a918580dc9188825d67dbb203a43d02fe"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">arm_compute::Window::Dimension::step</a></div><div class="ttdeci">constexpr int step() const</div><div class="ttdoc">Return the step of the dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00095">Window.h:95</a></div></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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_xhtml_a51a8c7a9d2fa20943c213e85eb8d9caf"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">arm_compute::Window::z</a></div><div class="ttdeci">constexpr const Dimension &amp; z() const</div><div class="ttdoc">Alias to access the third dimension of the window. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00154">Window.h:154</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_i_g_c_kernel_xhtml_a3b8f9d088e013cfbb039fd0ebbe42589"><div class="ttname"><a href="classarm__compute_1_1_i_g_c_kernel.xhtml#a3b8f9d088e013cfbb039fd0ebbe42589">arm_compute::IGCKernel::kernel</a></div><div class="ttdeci">GCKernel &amp; kernel()</div><div class="ttdoc">Returns a reference to the GLES kernel of this object. </div><div class="ttdef"><b>Definition:</b> <a href="_i_g_c_kernel_8cpp_source.xhtml#l00069">IGCKernel.cpp:69</a></div></div>
+<div class="ttc" id="_error_8h_xhtml_a6dc630a6ae9cc063b3924bcea8dee9d6"><div class="ttname"><a href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a></div><div class="ttdeci">#define ARM_COMPUTE_UNUSED(...)</div><div class="ttdoc">To avoid unused variables warnings. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00160">Error.h:160</a></div></div>
+<div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_af7682f051486a2d562206f70b2c212ab"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#af7682f051486a2d562206f70b2c212ab">glDispatchCompute</a></div><div class="ttdeci">void GL_APIENTRY glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00542">OpenGLES.cpp:542</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_g_c_kernel_xhtml_af88e933209c9201dfdafa052d3181aac"><div class="ttname"><a href="classarm__compute_1_1_g_c_kernel.xhtml#af88e933209c9201dfdafa052d3181aac">arm_compute::GCKernel::get_program</a></div><div class="ttdeci">GLuint get_program() const</div><div class="ttdoc">Get program id. </div><div class="ttdef"><b>Definition:</b> <a href="_g_c_kernel_library_8h_source.xhtml#l00121">GCKernelLibrary.h:121</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_xhtml_a1b522b073f3ca32d24eb4e03495ef8a6"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">arm_compute::Window::y</a></div><div class="ttdeci">constexpr const Dimension &amp; y() const</div><div class="ttdoc">Alias to access the second dimension of the window. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00145">Window.h:145</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml_a0f590bfcf19110f44efc502e7b5c1d9e"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">arm_compute::Window::Dimension::end</a></div><div class="ttdeci">constexpr int end() const</div><div class="ttdoc">Return the end of the dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00090">Window.h:90</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml_ab24e31d1a4830bf79564ee902ec6c060"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">arm_compute::Window::Dimension::start</a></div><div class="ttdeci">constexpr int start() const</div><div class="ttdoc">Return the start of the dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00085">Window.h:85</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_window_xhtml_a273fd2ecdd45169b2f702f01a7e5e382"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">arm_compute::Window::x</a></div><div class="ttdeci">constexpr const Dimension &amp; x() const</div><div class="ttdoc">Alias to access the first dimension of the window. </div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00136">Window.h:136</a></div></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#l00328">Error.h:328</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a0f68015f649819f1102aa73d7b88b29e"></a>
+<a id="a1e48b7cf7de6a52575088cb7082d2b3e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e48b7cf7de6a52575088cb7082d2b3e">&#9670;&nbsp;</a></span>enqueue() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">void arm_compute::enqueue </td>
+          <td class="memname">void enqueue </td>
           <td>(</td>
           <td class="paramtype">cl::CommandQueue &amp;&#160;</td>
           <td class="paramname"><em>queue</em>, </td>
@@ -9713,7 +10974,7 @@
           <td class="paramkey"></td>
           <td></td>
           <td class="paramtype">const cl::NDRange &amp;&#160;</td>
-          <td class="paramname"><em>lws_hint</em> = <code><a class="el" href="classarm__compute_1_1_c_l_kernel_library.xhtml#aebe2d25607545d31f2b1ace6d60a81da">CLKernelLibrary::get</a>().default_ndrange()</code>&#160;</td>
+          <td class="paramname"><em>lws_hint</em> = <code><a class="el" href="classarm__compute_1_1_c_l_kernel_library.xhtml#acba005f5ce2c62cbf3f94d074d9007aa">CLKernelLibrary::get</a>().default_ndrange()</code>&#160;</td>
         </tr>
         <tr>
           <td></td>
@@ -9738,16 +10999,25 @@
 </dl>
 <dl class="section note"><dt>Note</dt><dd>If any dimension of the lws is greater than the global workgroup size then no lws will be passed. </dd></dl>
 
-<p>Referenced by <a class="el" href="_i_g_c_kernel_8h_source.xhtml#l00122">IGCKernel::get_target()</a>, and <a class="el" href="_i_c_l_kernel_8h_source.xhtml#l00258">ICLKernel::get_target()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_i_c_l_kernel_8cpp_source.xhtml#l00039">39</a> of file <a class="el" href="_i_c_l_kernel_8cpp_source.xhtml">ICLKernel.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_i_c_l_kernel_8cpp_source.xhtml#l00125">ICLKernel::get_max_workgroup_size()</a>, <a class="el" href="_i_c_l_kernel_8cpp_source.xhtml#l00134">ICLKernel::gws_from_window()</a>, <a class="el" href="_i_c_l_kernel_8h_source.xhtml#l00087">ICLKernel::kernel()</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_i_g_c_kernel_8h_source.xhtml#l00122">IGCKernel::get_target()</a>, <a class="el" href="_i_c_l_kernel_8h_source.xhtml#l00258">ICLKernel::get_target()</a>, <a class="el" href="_i_c_l_simple2_d_kernel_8cpp_source.xhtml#l00033">ICLSimple2DKernel::run()</a>, <a class="el" href="_i_g_c_simple2_d_kernel_8cpp_source.xhtml#l00033">IGCSimple2DKernel::run()</a>, <a class="el" href="_i_c_l_simple3_d_kernel_8cpp_source.xhtml#l00033">ICLSimple3DKernel::run()</a>, <a class="el" href="_i_g_c_simple3_d_kernel_8cpp_source.xhtml#l00033">IGCSimple3DKernel::run()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00123">GCTransposeKernel::run()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00137">GCScaleKernel::run()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00103">GCGEMMMatrixAccumulateBiasesKernel::run()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00101">CLGaussianPyramidHorKernel::run()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00083">CLGradientKernel::run()</a>, <a class="el" href="_c_l_histogram_kernel_8cpp_source.xhtml#l00113">CLHistogramKernel::run()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00124">CLMinMaxKernel::run()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00094">CLRemapKernel::run()</a>, <a class="el" href="_c_l_bitwise_and_kernel_8cpp_source.xhtml#l00072">CLBitwiseAndKernel::run()</a>, <a class="el" href="_c_l_bitwise_or_kernel_8cpp_source.xhtml#l00073">CLBitwiseOrKernel::run()</a>, <a class="el" href="_c_l_bitwise_xor_kernel_8cpp_source.xhtml#l00073">CLBitwiseXorKernel::run()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00101">GCPixelWiseMultiplicationKernel::run()</a>, <a class="el" href="_c_l_derivative_kernel_8cpp_source.xhtml#l00123">CLDerivativeKernel::run()</a>, <a class="el" href="_c_l_sobel3x3_kernel_8cpp_source.xhtml#l00108">CLSobel3x3Kernel::run()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00104">GCActivationLayerKernel::run()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00205">GCDepthwiseConvolutionLayer3x3Kernel::run()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00080">GCGEMMMatrixAdditionKernel::run()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00097">CLHOGOrientationBinningKernel::run()</a>, <a class="el" href="_g_c_normalization_layer_kernel_8cpp_source.xhtml#l00098">GCNormalizationLayerKernel::run()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00108">CLSobel5x5HorKernel::run()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00111">CLSobel7x7HorKernel::run()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00087">CLAbsoluteDifferenceKernel::run()</a>, <a class="el" href="_g_c_absolute_difference_kernel_8cpp_source.xhtml#l00086">GCAbsoluteDifferenceKernel::run()</a>, <a class="el" href="_g_c_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00098">GCGEMMTranspose1xWKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00115">CLGEMMMatrixAccumulateBiasesKernel::run()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00143">CLMagnitudePhaseKernel::run()</a>, <a class="el" href="_c_l_floor_kernel_8cpp_source.xhtml#l00114">CLFloorKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00135">CLGEMMMatrixVectorMultiplyKernel::run()</a>, <a class="el" href="_c_l_copy_kernel_8cpp_source.xhtml#l00204">CLCopyKernel::run()</a>, <a class="el" href="_g_c_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00112">GCDepthConcatenateLayerKernel::run()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00095">CLIntegralImageVertKernel::run()</a>, <a class="el" href="_c_l_flatten_layer_kernel_8cpp_source.xhtml#l00131">CLFlattenLayerKernel::run()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00169">CLChannelShuffleLayerKernel::run()</a>, <a class="el" href="_c_l_reshape_layer_kernel_8cpp_source.xhtml#l00113">CLReshapeLayerKernel::run()</a>, <a class="el" href="_c_l_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00107">CLROIPoolingLayerKernel::run()</a>, <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00078">CLMemsetKernel::run()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00172">CLNormalizationLayerKernel::run()</a>, <a class="el" href="_c_l_permute_kernel_8cpp_source.xhtml#l00134">CLPermuteKernel::run()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00171">GCLogits1DShiftExpSumKernel::run()</a>, <a class="el" href="_c_l_locally_connected_matrix_multiply_kernel_8cpp_source.xhtml#l00129">CLLocallyConnectedMatrixMultiplyKernel::run()</a>, <a class="el" href="_g_c_dropout_layer_kernel_8cpp_source.xhtml#l00086">GCDropoutLayerKernel::run()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00111">CLComputeAllAnchorsKernel::run()</a>, <a class="el" href="_c_l_fill_border_kernel_8cpp_source.xhtml#l00160">CLFillBorderKernel::run()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00168">CLChannelExtractKernel::run()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00130">CLUpsampleLayerKernel::run()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00313">CLDepthwiseConvolutionLayer3x3NCHWKernel::run()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00292">CLDepthwiseConvolutionLayer3x3NHWCKernel::run()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00401">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::run()</a>, <a class="el" href="_g_c_fill_border_kernel_8cpp_source.xhtml#l00141">GCFillBorderKernel::run()</a>, <a class="el" href="_c_l_depthwise_weights_reshape_kernel_8cpp_source.xhtml#l00107">CLDepthwiseWeightsReshapeKernel::run()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00093">CLFastCornersKernel::run()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00311">CLPoolingLayerKernel::run()</a>, <a class="el" href="_g_c_pooling_layer_kernel_8cpp_source.xhtml#l00331">GCPoolingLayerKernel::run()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00203">CLActivationLayerKernel::run()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00134">CLWidthConcatenate2TensorsKernel::run()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00099">CLDeconvolutionLayerUpsampleKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00111">CLGEMMMatrixAdditionKernel::run()</a>, <a class="el" href="_c_l_arithmetic_division_kernel_8cpp_source.xhtml#l00135">CLArithmeticDivisionKernel::run()</a>, <a class="el" href="_c_l_min_max_layer_kernel_8cpp_source.xhtml#l00141">CLMinMaxLayerKernel::run()</a>, <a class="el" href="_c_l_quantization_layer_kernel_8cpp_source.xhtml#l00110">CLQuantizationLayerKernel::run()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00124">CLReorgLayerKernel::run()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00099">CLDepthwiseVectorToTensorKernel::run()</a>, <a class="el" href="_c_l_width_concatenate_layer_kernel_8cpp_source.xhtml#l00120">CLWidthConcatenateLayerKernel::run()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00112">CLHarrisScoreKernel::run()</a>, <a class="el" href="_c_l_h_o_g_detector_kernel_8cpp_source.xhtml#l00116">CLHOGDetectorKernel::run()</a>, <a class="el" href="_c_l_dequantization_layer_kernel_8cpp_source.xhtml#l00110">CLDequantizationLayerKernel::run()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00238">CLChannelCombineKernel::run()</a>, <a class="el" href="_c_l_prior_box_layer_kernel_8cpp_source.xhtml#l00236">CLPriorBoxLayerKernel::run()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00090">GCGEMMInterleave4x4Kernel::run()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00160">CLNormalizePlanarYUVLayerKernel::run()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00230">CLScaleKernel::run()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00102">CLConvertFullyConnectedWeightsKernel::run()</a>, <a class="el" href="_c_l_arithmetic_addition_kernel_8cpp_source.xhtml#l00182">CLArithmeticAdditionKernel::run()</a>, <a class="el" href="_g_c_arithmetic_addition_kernel_8cpp_source.xhtml#l00131">GCArithmeticAdditionKernel::run()</a>, <a class="el" href="_c_l_mean_std_dev_kernel_8cpp_source.xhtml#l00112">CLMeanStdDevKernel::run()</a>, <a class="el" href="_g_c_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00132">GCNormalizePlanarYUVLayerKernel::run()</a>, <a class="el" href="_c_l_scharr3x3_kernel_8cpp_source.xhtml#l00108">CLScharr3x3Kernel::run()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00152">CLWidthConcatenate4TensorsKernel::run()</a>, <a class="el" href="_c_l_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00140">CLDepthConcatenateLayerKernel::run()</a>, <a class="el" href="_g_c_tensor_shift_kernel_8cpp_source.xhtml#l00077">GCTensorShiftKernel::run()</a>, <a class="el" href="_c_l_arithmetic_subtraction_kernel_8cpp_source.xhtml#l00180">CLArithmeticSubtractionKernel::run()</a>, <a class="el" href="_c_l_reduction_operation_kernel_8cpp_source.xhtml#l00222">CLReductionOperationKernel::run()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00115">CLBoundingBoxTransformKernel::run()</a>, <a class="el" href="_c_l_direct_convolution_output_stage_kernel_8cpp_source.xhtml#l00182">CLDirectConvolutionLayerOutputStageKernel::run()</a>, <a class="el" href="_c_l_l2_normalize_layer_kernel_8cpp_source.xhtml#l00158">CLL2NormalizeLayerKernel::run()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00161">CLYOLOLayerKernel::run()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00230">CLPixelWiseMultiplicationKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00322">CLGEMMLowpMatrixMultiplyKernel::run()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00114">CLDepthwiseIm2ColKernel::run()</a>, <a class="el" href="_g_c_weights_reshape_kernel_8cpp_source.xhtml#l00101">GCWeightsReshapeKernel::run()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00384">CLColorConvertKernel::run()</a>, <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00131">CLROIAlignLayerKernel::run()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00097">GCCol2ImKernel::run()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00303">GCGEMMMatrixMultiplyKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00382">CLGEMMMatrixMultiplyKernel::run()</a>, <a class="el" href="_g_c_im2_col_kernel_8cpp_source.xhtml#l00221">GCIm2ColKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00140">CLGEMMLowpMatrixAReductionKernel::run()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00182">CLFuseBatchNormalizationKernel::run()</a>, <a class="el" href="_g_c_batch_normalization_layer_kernel_8cpp_source.xhtml#l00205">GCBatchNormalizationLayerKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00185">CLGEMMInterleave4x4Kernel::run()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00149">CLBatchToSpaceLayerKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float_kernel_8cpp_source.xhtml#l00152">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::run()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00227">CLWinogradInputTransformKernel::run()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00503">CLDirectConvolutionLayerKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel_8cpp_source.xhtml#l00155">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel_8cpp_source.xhtml#l00151">CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::run()</a>, <a class="el" href="_c_l_col2_im_kernel_8cpp_source.xhtml#l00141">CLCol2ImKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00141">CLGEMMTranspose1xWKernel::run()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00141">CLWinogradFilterTransformKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_offset_contribution_output_stage_kernel_8cpp_source.xhtml#l00258">CLGEMMLowpOffsetContributionOutputStageKernel::run()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00223">CLBatchNormalizationLayerKernel::run()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00187">CLStridedSliceKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_offset_contribution_kernel_8cpp_source.xhtml#l00219">CLGEMMLowpOffsetContributionKernel::run()</a>, <a class="el" href="_c_l_histogram_kernel_8cpp_source.xhtml#l00204">CLHistogramBorderKernel::run()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00183">CLGaussianPyramidVertKernel::run()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00206">CLWinogradOutputTransformKernel::run()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00160">CLSpaceToBatchLayerKernel::run()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00081">CLLKTrackerInitKernel::run()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00151">CLEdgeNonMaxSuppressionKernel::run()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00215">CLMinMaxLocationKernel::run()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00180">CLHOGBlockNormalizationKernel::run()</a>, <a class="el" href="_c_l_weights_reshape_kernel_8cpp_source.xhtml#l00118">CLWeightsReshapeKernel::run()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00249">GCLogits1DNormKernel::run()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00347">CLIm2ColKernel::run()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00207">CLSobel5x5VertKernel::run()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00210">CLSobel7x7VertKernel::run()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00154">CLCopyToArrayKernel::run()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00110">CLLKTrackerFinalizeKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00194">CLGEMMLowpMatrixBReductionKernel::run()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00236">CLEdgeTraceKernel::run()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00194">CLLKTrackerStage0Kernel::run()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00298">CLLogits1DMaxShiftExpSumKernel::run()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00304">CLConvolutionRectangleKernel::run()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00278">CLLKTrackerStage1Kernel::run()</a>, and <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00379">CLLogits1DNormKernel::run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;{</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <span class="keywordflow">if</span>(kernel.<a class="code" href="classarm__compute_1_1_i_c_l_kernel.xhtml#ae5121015ab09ece4d470f50c7ffe198e">kernel</a>()() == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    {</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="keywordflow">return</span>;</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    }</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; Coordinates::num_max_dimensions; ++i)</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    {</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(window[i].step() == 0);</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="comment">// Make sure that dimensions &gt; Z are 1</span></div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>((i &gt;= 3) &amp;&amp; ((window[i].end() - window[i].start()) != 1));</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    }</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    cl::NDRange gws = ICLKernel::gws_from_window(window);</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="comment">// Check for empty NDRange</span></div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <span class="keywordflow">if</span>(gws.dimensions() == 0)</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    {</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="keywordflow">return</span>;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    }</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    cl::NDRange valid_lws;</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="keywordflow">if</span>(lws_hint[0] * lws_hint[1] * lws_hint[2] &gt; kernel.<a class="code" href="classarm__compute_1_1_i_c_l_kernel.xhtml#abca336f832d730e8494049bd714df60a">get_max_workgroup_size</a>())</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    {</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        valid_lws = cl::NullRange;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    }</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    {</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        valid_lws = lws_hint;</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    }</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    cl::NDRange lws = cl::NullRange;</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <span class="keywordflow">if</span>((valid_lws[0] &lt;= gws[0]) &amp;&amp; (valid_lws[1] &lt;= gws[1]) &amp;&amp; (valid_lws[2] &lt;= gws[2]))</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    {</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        lws = valid_lws;</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    }</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    queue.enqueueNDRangeKernel(kernel.<a class="code" href="classarm__compute_1_1_i_c_l_kernel.xhtml#ae5121015ab09ece4d470f50c7ffe198e">kernel</a>(), cl::NullRange, gws, lws);</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_i_c_l_kernel_xhtml_ae5121015ab09ece4d470f50c7ffe198e"><div class="ttname"><a href="classarm__compute_1_1_i_c_l_kernel.xhtml#ae5121015ab09ece4d470f50c7ffe198e">arm_compute::ICLKernel::kernel</a></div><div class="ttdeci">cl::Kernel &amp; kernel()</div><div class="ttdoc">Returns a reference to the OpenCL kernel of this object. </div><div class="ttdef"><b>Definition:</b> <a href="_i_c_l_kernel_8h_source.xhtml#l00087">ICLKernel.h:87</a></div></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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_i_c_l_kernel_xhtml_abca336f832d730e8494049bd714df60a"><div class="ttname"><a href="classarm__compute_1_1_i_c_l_kernel.xhtml#abca336f832d730e8494049bd714df60a">arm_compute::ICLKernel::get_max_workgroup_size</a></div><div class="ttdeci">size_t get_max_workgroup_size()</div><div class="ttdoc">Get the maximum workgroup size for the device the CLKernelLibrary uses. </div><div class="ttdef"><b>Definition:</b> <a href="_i_c_l_kernel_8cpp_source.xhtml#l00125">ICLKernel.cpp:125</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a568b0fbfa3d903099d9c9f7b6acf188d"></a>
+<a id="a0768178b90a30994784fd28c5a89323f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0768178b90a30994784fd28c5a89323f">&#9670;&nbsp;</a></span>error()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">void arm_compute::error </td>
+          <td class="memname">void error </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -9796,11 +11066,18 @@
   </dd>
 </dl>
 
-<p>Referenced by <a class="el" href="_framework_8cpp_source.xhtml#l00261">Framework::error_on_missing_assets()</a>, <a class="el" href="main_8cpp_source.xhtml#l00087">main()</a>, and <a class="el" href="_error_8h_source.xhtml#l00102">Status::throw_if_error()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_error_8cpp_source.xhtml#l00051">51</a> of file <a class="el" href="_error_8cpp_source.xhtml">Error.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_error_8cpp_source.xhtml#l00033">create_error_va_list()</a>, and <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579">RUNTIME_ERROR</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_framework_8cpp_source.xhtml#l00276">Framework::error_on_missing_assets()</a>, <a class="el" href="main_8cpp_source.xhtml#l00087">main()</a>, and <a class="el" href="_error_8h_source.xhtml#l00102">Status::throw_if_error()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    va_list args;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    va_start(args, msg);</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="keyword">auto</span> err = <a class="code" href="namespacearm__compute.xhtml#aee087c8a7edb0fb5b7e75b9037e34cf7">create_error_va_list</a>(ErrorCode::RUNTIME_ERROR, <span class="keyword">function</span>, file, line, msg, args);</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    va_end(args);</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keywordflow">throw</span> std::runtime_error(err.error_description());</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_aee087c8a7edb0fb5b7e75b9037e34cf7"><div class="ttname"><a href="namespacearm__compute.xhtml#aee087c8a7edb0fb5b7e75b9037e34cf7">arm_compute::create_error_va_list</a></div><div class="ttdeci">Status create_error_va_list(ErrorCode error_code, const char *function, const char *file, const int line, const char *msg, va_list args)</div><div class="ttdoc">Creates an error containing the error message from variable argument list. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8cpp_source.xhtml#l00033">Error.cpp:33</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ae7fcde610527b8fa3d9acdf398187962"></a>
+<a id="a89059fcfb27bba71edffcc22c6e1a1a2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a89059fcfb27bba71edffcc22c6e1a1a2">&#9670;&nbsp;</a></span>error_on_channel_not_in()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -9870,20 +11147,24 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00820">820</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00872">872</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
-<div class="fragment"><div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160;{</div><div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(cn == Channel::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160;</div><div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160;    <span class="keyword">const</span> std::array&lt;T, <span class="keyword">sizeof</span>...(Ts)&gt; channels_array{ { std::forward&lt;Ts&gt;(channels)... } };</div><div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(channel != cn &amp;&amp; std::none_of(channels_array.begin(), channels_array.end(), [&amp;](<span class="keyword">const</span> T &amp; f)</div><div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;    {</div><div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;        <span class="keywordflow">return</span> f == cn;</div><div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;    }),</div><div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;    <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_validate_8cpp_source.xhtml#l00113">error_on_channel_not_in_known_format()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00874"></a><span class="lineno">  874</span>&#160;{</div><div class="line"><a name="l00875"></a><span class="lineno">  875</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(cn == Channel::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160;</div><div class="line"><a name="l00877"></a><span class="lineno">  877</span>&#160;    <span class="keyword">const</span> std::array&lt;T, <span class="keyword">sizeof</span>...(Ts)&gt; channels_array{ { std::forward&lt;Ts&gt;(channels)... } };</div><div class="line"><a name="l00878"></a><span class="lineno">  878</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(channel != cn &amp;&amp; std::none_of(channels_array.begin(), channels_array.end(), [&amp;](<span class="keyword">const</span> T &amp; f)</div><div class="line"><a name="l00879"></a><span class="lineno">  879</span>&#160;    {</div><div class="line"><a name="l00880"></a><span class="lineno">  880</span>&#160;        <span class="keywordflow">return</span> f == cn;</div><div class="line"><a name="l00881"></a><span class="lineno">  881</span>&#160;    }),</div><div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;    <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00883"></a><span class="lineno">  883</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00884"></a><span class="lineno">  884</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa2af31a4685af1fb5ecef784c5e96da0"></a>
+<a id="a66876161b2add31c70efb9d1ba9423cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66876161b2add31c70efb9d1ba9423cb">&#9670;&nbsp;</a></span>error_on_channel_not_in_known_format()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_channel_not_in_known_format </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_channel_not_in_known_format </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -9903,13 +11184,13 @@
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">arm_compute::Format</a>&#160;</td>
           <td class="paramname"><em>fmt</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a>&#160;</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">arm_compute::Channel</a>&#160;</td>
           <td class="paramname"><em>cn</em>&#160;</td>
         </tr>
         <tr>
@@ -9933,14 +11214,41 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00113">113</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, <a class="el" href="_error_8h_source.xhtml#l00270">ARM_COMPUTE_ERROR_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, <a class="el" href="_validate_8h_source.xhtml#l00872">error_on_channel_not_in()</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
+<div class="fragment"><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;{</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(fmt == <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::Format::UNKNOWN</a>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(cn == <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::Channel::UNKNOWN</a>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <span class="keywordflow">switch</span>(fmt)</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    {</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">arm_compute::Format::RGB888</a>:</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;            <a class="code" href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">arm_compute::error_on_channel_not_in</a>(<span class="keyword">function</span>, file, line, cn, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">arm_compute::Channel::R</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">arm_compute::Channel::G</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::Channel::B</a>);</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">arm_compute::Format::RGBA8888</a>:</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;            <a class="code" href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">arm_compute::error_on_channel_not_in</a>(<span class="keyword">function</span>, file, line, cn, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">arm_compute::Channel::R</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">arm_compute::Channel::G</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::Channel::B</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a>);</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">arm_compute::Format::UV88</a>:</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;            <a class="code" href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">arm_compute::error_on_channel_not_in</a>(<span class="keyword">function</span>, file, line, cn, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">arm_compute::Channel::U</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">arm_compute::Channel::V</a>);</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">arm_compute::Format::IYUV</a>:</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">arm_compute::Format::UYVY422</a>:</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">arm_compute::Format::YUYV422</a>:</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">arm_compute::Format::NV12</a>:</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">arm_compute::Format::NV21</a>:</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">arm_compute::Format::YUV444</a>:</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;            <a class="code" href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">arm_compute::error_on_channel_not_in</a>(<span class="keyword">function</span>, file, line, cn, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">arm_compute::Channel::Y</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">arm_compute::Channel::U</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">arm_compute::Channel::V</a>);</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;            <a class="code" href="_error_8h.xhtml#af93757c5021d1802b094dfbead459391">ARM_COMPUTE_ERROR_LOC</a>(<span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Not supported format.&quot;</span>);</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    }</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a></div><div class="ttdoc">Alpha channel. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">arm_compute::Format::UYVY422</a></div><div class="ttdoc">A single plane of 32-bit macro pixel of U0, Y0, V0, Y1 byte. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">arm_compute::Channel::V</a></div><div class="ttdoc">Cr/V/Value channel. </div></div>
+<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::Channel::B</a></div><div class="ttdoc">Blue channel. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">arm_compute::Format::NV12</a></div><div class="ttdoc">A 2 plane YUV format of Luma (Y) and interleaved UV data at 4:2:0 sampling. </div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">arm_compute::Channel::R</a></div><div class="ttdoc">Red channel. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">arm_compute::Format::NV21</a></div><div class="ttdoc">A 2 plane YUV format of Luma (Y) and interleaved VU data at 4:2:0 sampling. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">arm_compute::Format::RGB888</a></div><div class="ttdoc">3 channels, 1 U8 per channel </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">arm_compute::Channel::U</a></div><div class="ttdoc">Cb/U channel. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a89059fcfb27bba71edffcc22c6e1a1a2"><div class="ttname"><a href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">arm_compute::error_on_channel_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_channel_not_in(const char *function, const char *file, const int line, T cn, T &amp;&amp;channel, Ts &amp;&amp;... channels)</div><div class="ttdoc">Return an error if the channel is not in channels. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00872">Validate.h:872</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">arm_compute::Format::YUV444</a></div><div class="ttdoc">A 3 plane of 8 bit 4:4:4 sampled Y, U, V planes. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">arm_compute::Channel::Y</a></div><div class="ttdoc">Luma channel. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">arm_compute::Format::IYUV</a></div><div class="ttdoc">A 3 plane of 8-bit 4:2:0 sampled Y, U, V planes. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">arm_compute::Format::RGBA8888</a></div><div class="ttdoc">4 channels, 1 U8 per channel </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::CLVersion::UNKNOWN</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">arm_compute::Format::UV88</a></div><div class="ttdoc">2 channel, 1 U8 per channel </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">arm_compute::Channel::G</a></div><div class="ttdoc">Green channel. </div></div>
+<div class="ttc" id="_error_8h_xhtml_af93757c5021d1802b094dfbead459391"><div class="ttname"><a href="_error_8h.xhtml#af93757c5021d1802b094dfbead459391">ARM_COMPUTE_ERROR_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_LOC(func, file, line,...)</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#l00270">Error.h:270</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">arm_compute::Format::YUYV422</a></div><div class="ttdoc">A single plane of 32-bit macro pixel of Y0, U0, Y1, V0 bytes. </div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a454f8112fcca60b99883f19ff43daf9f"></a>
+<a id="a3c62cc8d5ee934d42c115c9315d66c13"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c62cc8d5ee934d42c115c9315d66c13">&#9670;&nbsp;</a></span>error_on_coordinates_dimensions_gte()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_coordinates_dimensions_gte </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_coordinates_dimensions_gte </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -9991,9 +11299,185 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00070">70</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>.</p>
+<div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;{</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = max_dim; i &lt; <a class="code" href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Coordinates::num_max_dimensions</a>; ++i)</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    {</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(pos[i] != 0, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    }</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a1b67d5b720119d50faa286c774579ecc"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Dimensions&lt; int &gt;::num_max_dimensions</a></div><div class="ttdeci">static constexpr size_t num_max_dimensions</div><div class="ttdoc">Number of dimensions the tensor has. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00045">Dimensions.h:45</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a499a45039b9bba66384504843d5823d4"></a>
+<a id="a4b97ba5512e8deb4a428515bc61c0c7a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4b97ba5512e8deb4a428515bc61c0c7a">&#9670;&nbsp;</a></span>error_on_data_layout_not_in() <span class="overload">[1/2]</span></h2>
+
+<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_status.xhtml">arm_compute::Status</a> arm_compute::error_on_data_layout_not_in </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>function</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>file</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const int&#160;</td>
+          <td class="paramname"><em>line</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
+          <td class="paramname"><em>tensor_info</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">T &amp;&amp;&#160;</td>
+          <td class="paramname"><em>dl</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">Ts &amp;&amp;...&#160;</td>
+          <td class="paramname"><em>dls</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>Return an error if the data layout of the passed tensor info does not match any of the data layouts provided. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface. ">Tensor</a> info to validate. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">dl</td><td>First data layout allowed. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">dls</td><td>(Optional) Further allowed data layouts.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00708">708</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00127">string_from_data_layout()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00736">error_on_data_layout_not_in()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;{</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;    <span class="keyword">const</span> <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> &amp;tensor_dl = tensor_info-&gt;data_layout(); <span class="comment">//NOLINT</span></div><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_dl == DataLayout::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;</div><div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;    <span class="keyword">const</span> std::array&lt;T, <span class="keyword">sizeof</span>...(Ts)&gt; dls_array{ { std::forward&lt;Ts&gt;(dls)... } };</div><div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor_dl != dl &amp;&amp; std::none_of(dls_array.begin(), dls_array.end(), [&amp;](<span class="keyword">const</span> T &amp; l)</div><div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;    {</div><div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;        <span class="keywordflow">return</span> l == tensor_dl;</div><div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;    }),</div><div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;ITensor data layout %s not supported by this kernel&quot;</span>, <a class="code" href="namespacearm__compute.xhtml#a56b9e25c2e8731ca5488e7b3ccd66f58">string_from_data_layout</a>(tensor_dl).c_str());</div><div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
+<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a56b9e25c2e8731ca5488e7b3ccd66f58"><div class="ttname"><a href="namespacearm__compute.xhtml#a56b9e25c2e8731ca5488e7b3ccd66f58">arm_compute::string_from_data_layout</a></div><div class="ttdeci">const std::string &amp; string_from_data_layout(DataLayout dl)</div><div class="ttdoc">Convert a data layout identity into a string. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_utils_8cpp_source.xhtml#l00127">Utils.cpp:127</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a></div><div class="ttdeci">DataLayout</div><div class="ttdoc">[DataLayout enum definition] </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00111">Types.h:111</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="aba935fe0dd1a33ed2525ace5b21e1a8a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aba935fe0dd1a33ed2525ace5b21e1a8a">&#9670;&nbsp;</a></span>error_on_data_layout_not_in() <span class="overload">[2/2]</span></h2>
+
+<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_status.xhtml">arm_compute::Status</a> arm_compute::error_on_data_layout_not_in </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>function</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>file</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const int&#160;</td>
+          <td class="paramname"><em>line</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
+          <td class="paramname"><em>tensor</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">T &amp;&amp;&#160;</td>
+          <td class="paramname"><em>dl</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">Ts &amp;&amp;...&#160;</td>
+          <td class="paramname"><em>dls</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>Return an error if the data layout of the passed tensor does not match any of the data layout provided. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface. ">Tensor</a> to validate. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">dl</td><td>First data layout allowed. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">dls</td><td>(Optional) Further allowed data layouts.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00736">736</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00708">error_on_data_layout_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;{</div><div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a4b97ba5512e8deb4a428515bc61c0c7a">arm_compute::error_on_data_layout_not_in</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), std::forward&lt;T&gt;(dl), std::forward&lt;Ts&gt;(dls)...));</div><div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a4b97ba5512e8deb4a428515bc61c0c7a"><div class="ttname"><a href="namespacearm__compute.xhtml#a4b97ba5512e8deb4a428515bc61c0c7a">arm_compute::error_on_data_layout_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_layout_not_in(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, T &amp;&amp;dl, Ts &amp;&amp;... dls)</div><div class="ttdoc">Return an error if the data layout of the passed tensor info does not match any of the data layouts p...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00708">Validate.h:708</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a2f061a50e9fd383396233a85234c1774"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2f061a50e9fd383396233a85234c1774">&#9670;&nbsp;</a></span>error_on_data_type_channel_not_in() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -10070,19 +11554,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00709">709</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00761">761</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00656">error_on_data_type_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#ad7829ae79223ab87f9da4c0bd7d229ba">ITensorInfo::num_channels()</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00656">error_on_data_type_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#ad7829ae79223ab87f9da4c0bd7d229ba">ITensorInfo::num_channels()</a>.</p>
 
-<p>Referenced by <a class="el" href="_validate_8h_source.xhtml#l00730">error_on_data_type_channel_not_in()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;{</div><div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a774ec1fdc7bd1e7973c866d13734bc21">arm_compute::error_on_data_type_not_in</a>(<span class="keyword">function</span>, file, line, tensor_info, std::forward&lt;T&gt;(dt), std::forward&lt;Ts&gt;(dts)...));</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">size_t</span> tensor_nc = tensor_info-&gt;num_channels();</div><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor_nc != num_channels, <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Number of channels %d. Required number of channels %d&quot;</span>, tensor_nc, num_channels);</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00782">error_on_data_type_channel_not_in()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;{</div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#abb2e6a7590121c1c9139bdb14558f20a">arm_compute::error_on_data_type_not_in</a>(<span class="keyword">function</span>, file, line, tensor_info, std::forward&lt;T&gt;(dt), std::forward&lt;Ts&gt;(dts)...));</div><div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">size_t</span> tensor_nc = tensor_info-&gt;num_channels();</div><div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor_nc != num_channels, <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Number of channels %d. Required number of channels %d&quot;</span>, tensor_nc, num_channels);</div><div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a774ec1fdc7bd1e7973c866d13734bc21"><div class="ttname"><a href="namespacearm__compute.xhtml#a774ec1fdc7bd1e7973c866d13734bc21">arm_compute::error_on_data_type_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_type_not_in(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, T &amp;&amp;dt, Ts &amp;&amp;...dts)</div><div class="ttdoc">Return an error if the data type of the passed tensor info does not match any of the data types provi...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00656">Validate.h:656</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_abb2e6a7590121c1c9139bdb14558f20a"><div class="ttname"><a href="namespacearm__compute.xhtml#abb2e6a7590121c1c9139bdb14558f20a">arm_compute::error_on_data_type_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_type_not_in(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, T &amp;&amp;dt, Ts &amp;&amp;... dts)</div><div class="ttdoc">Return an error if the data type of the passed tensor info does not match any of the data types provi...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00656">Validate.h:656</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad3137e73dbd78133d25751abd84540d8"></a>
+<a id="aa87a2bd032fb1e4406506f5bb2da3225"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa87a2bd032fb1e4406506f5bb2da3225">&#9670;&nbsp;</a></span>error_on_data_type_channel_not_in() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -10159,17 +11645,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00730">730</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00782">782</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00709">error_on_data_type_channel_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;{</div><div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(<a class="code" href="namespacearm__compute.xhtml#ad3137e73dbd78133d25751abd84540d8">error_on_data_type_channel_not_in</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), num_channels, std::forward&lt;T&gt;(dt), std::forward&lt;Ts&gt;(dts)...));</div><div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00761">error_on_data_type_channel_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;{</div><div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(<a class="code" href="namespacearm__compute.xhtml#aa87a2bd032fb1e4406506f5bb2da3225">error_on_data_type_channel_not_in</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), num_channels, std::forward&lt;T&gt;(dt), std::forward&lt;Ts&gt;(dts)...));</div><div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_aa87a2bd032fb1e4406506f5bb2da3225"><div class="ttname"><a href="namespacearm__compute.xhtml#aa87a2bd032fb1e4406506f5bb2da3225">arm_compute::error_on_data_type_channel_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_type_channel_not_in(const char *function, const char *file, const int line, const ITensor *tensor, size_t num_channels, T &amp;&amp;dt, Ts &amp;&amp;... dts)</div><div class="ttdoc">Return an error if the data type or the number of channels of the passed tensor does not match any of...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00782">Validate.h:782</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_ad3137e73dbd78133d25751abd84540d8"><div class="ttname"><a href="namespacearm__compute.xhtml#ad3137e73dbd78133d25751abd84540d8">arm_compute::error_on_data_type_channel_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_type_channel_not_in(const char *function, const char *file, const int line, const ITensor *tensor, size_t num_channels, T &amp;&amp;dt, Ts &amp;&amp;...dts)</div><div class="ttdoc">Return an error if the data type or the number of channels of the passed tensor does not match any of...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00730">Validate.h:730</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a774ec1fdc7bd1e7973c866d13734bc21"></a>
+<a id="abb2e6a7590121c1c9139bdb14558f20a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb2e6a7590121c1c9139bdb14558f20a">&#9670;&nbsp;</a></span>error_on_data_type_not_in() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -10239,20 +11727,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00656">656</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00656">656</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="namespacearm__compute.xhtml#aefa1d9648995e5eccc693c690e27aa88">string_from_data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00139">string_from_data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
 
-<p>Referenced by <a class="el" href="_validate_8h_source.xhtml#l00709">error_on_data_type_channel_not_in()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00684">error_on_data_type_not_in()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;{</div><div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;    <span class="keyword">const</span> <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;tensor_dt = tensor_info-&gt;data_type(); <span class="comment">//NOLINT</span></div><div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_dt == DataType::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;</div><div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;    <span class="keyword">const</span> std::array&lt;T, <span class="keyword">sizeof</span>...(Ts)&gt; dts_array{ { std::forward&lt;Ts&gt;(dts)... } };</div><div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor_dt != dt &amp;&amp; std::none_of(dts_array.begin(), dts_array.end(), [&amp;](<span class="keyword">const</span> T &amp; d)</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;        <span class="keywordflow">return</span> d == tensor_dt;</div><div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;    }),</div><div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;ITensor data type %s not supported by this kernel&quot;</span>, <a class="code" href="namespacearm__compute.xhtml#aefa1d9648995e5eccc693c690e27aa88">string_from_data_type</a>(tensor_dt).c_str());</div><div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00761">error_on_data_type_channel_not_in()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00684">error_on_data_type_not_in()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;{</div><div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;    <span class="keyword">const</span> <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;tensor_dt = tensor_info-&gt;data_type(); <span class="comment">//NOLINT</span></div><div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_dt == DataType::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;</div><div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;    <span class="keyword">const</span> std::array&lt;T, <span class="keyword">sizeof</span>...(Ts)&gt; dts_array{ { std::forward&lt;Ts&gt;(dts)... } };</div><div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor_dt != dt &amp;&amp; std::none_of(dts_array.begin(), dts_array.end(), [&amp;](<span class="keyword">const</span> T &amp; d)</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;        <span class="keywordflow">return</span> d == tensor_dt;</div><div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;    }),</div><div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;ITensor data type %s not supported by this kernel&quot;</span>, <a class="code" href="namespacearm__compute.xhtml#a142b55a483cadf4e1068a1a09a55e8e9">string_from_data_type</a>(tensor_dt).c_str());</div><div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_aefa1d9648995e5eccc693c690e27aa88"><div class="ttname"><a href="namespacearm__compute.xhtml#aefa1d9648995e5eccc693c690e27aa88">arm_compute::string_from_data_type</a></div><div class="ttdeci">const std::string &amp; string_from_data_type(DataType dt)</div><div class="ttdoc">Convert a data type identity into a string. </div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00072">Types.h:72</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a142b55a483cadf4e1068a1a09a55e8e9"><div class="ttname"><a href="namespacearm__compute.xhtml#a142b55a483cadf4e1068a1a09a55e8e9">arm_compute::string_from_data_type</a></div><div class="ttdeci">const std::string &amp; string_from_data_type(DataType dt)</div><div class="ttdoc">Convert a data type identity into a string. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_utils_8cpp_source.xhtml#l00139">Utils.cpp:139</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00074">Types.h:74</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a4ae0ca8176fce8caa48601dc8324ca97"></a>
+<a id="ae8dfd7ddb80f1bd4042a0409d56cc72a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8dfd7ddb80f1bd4042a0409d56cc72a">&#9670;&nbsp;</a></span>error_on_data_type_not_in() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -10322,17 +11812,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00684">684</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00684">684</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00656">error_on_data_type_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;{</div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a774ec1fdc7bd1e7973c866d13734bc21">arm_compute::error_on_data_type_not_in</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), std::forward&lt;T&gt;(dt), std::forward&lt;Ts&gt;(dts)...));</div><div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00656">error_on_data_type_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;{</div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#abb2e6a7590121c1c9139bdb14558f20a">arm_compute::error_on_data_type_not_in</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), std::forward&lt;T&gt;(dt), std::forward&lt;Ts&gt;(dts)...));</div><div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a774ec1fdc7bd1e7973c866d13734bc21"><div class="ttname"><a href="namespacearm__compute.xhtml#a774ec1fdc7bd1e7973c866d13734bc21">arm_compute::error_on_data_type_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_type_not_in(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, T &amp;&amp;dt, Ts &amp;&amp;...dts)</div><div class="ttdoc">Return an error if the data type of the passed tensor info does not match any of the data types provi...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00656">Validate.h:656</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_abb2e6a7590121c1c9139bdb14558f20a"><div class="ttname"><a href="namespacearm__compute.xhtml#abb2e6a7590121c1c9139bdb14558f20a">arm_compute::error_on_data_type_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_type_not_in(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, T &amp;&amp;dt, Ts &amp;&amp;... dts)</div><div class="ttdoc">Return an error if the data type of the passed tensor info does not match any of the data types provi...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00656">Validate.h:656</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a0b360558b516e256f0af005a164c674e"></a>
+<a id="a8a09f045f83a973807cbfdd3083732ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a09f045f83a973807cbfdd3083732ef">&#9670;&nbsp;</a></span>error_on_format_not_in()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -10393,23 +11885,25 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00623">623</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00623">623</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00347">ARM_COMPUTE_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00329">ARM_COMPUTE_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="namespacearm__compute.xhtml#a9c92c867fc64454545668d87b20979eb">string_from_format()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
-<div class="fragment"><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;{</div><div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;    <a class="code" href="_error_8h.xhtml#ac90c3bce005225cbaa4a43740917bb58">ARM_COMPUTE_ERROR_ON_LOC</a>(<span class="keywordtype">object</span> == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;&amp;object_format = <span class="keywordtype">object</span>-&gt;info()-&gt;format();</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;    <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(object_format);</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;    <a class="code" href="_error_8h.xhtml#ac90c3bce005225cbaa4a43740917bb58">ARM_COMPUTE_ERROR_ON_LOC</a>(object_format == Format::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;</div><div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;    <span class="keyword">const</span> std::array&lt;F, <span class="keyword">sizeof</span>...(Fs)&gt; formats_array{ { std::forward&lt;Fs&gt;(formats)... } };</div><div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;    <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(formats_array);</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;    <a class="code" href="_error_8h.xhtml#a1b62e396a1789909dadda61ea4cda96f">ARM_COMPUTE_ERROR_ON_LOC_MSG</a>(object_format != format &amp;&amp; std::none_of(formats_array.begin(), formats_array.end(), [&amp;](<span class="keyword">const</span> F &amp; f)</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;    {</div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;        <span class="keywordflow">return</span> f == object_format;</div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;    }),</div><div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Format %s not supported by this kernel&quot;</span>, <a class="code" href="namespacearm__compute.xhtml#a9c92c867fc64454545668d87b20979eb">string_from_format</a>(object_format).c_str());</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a1b62e396a1789909dadda61ea4cda96f"><div class="ttname"><a href="_error_8h.xhtml#a1b62e396a1789909dadda61ea4cda96f">ARM_COMPUTE_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00329">Error.h:329</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00347">ARM_COMPUTE_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00329">ARM_COMPUTE_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00080">string_from_format()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+<div class="fragment"><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;{</div><div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;    <a class="code" href="_error_8h.xhtml#ac90c3bce005225cbaa4a43740917bb58">ARM_COMPUTE_ERROR_ON_LOC</a>(<span class="keywordtype">object</span> == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;&amp;object_format = <span class="keywordtype">object</span>-&gt;info()-&gt;format();</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;    <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(object_format);</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;    <a class="code" href="_error_8h.xhtml#ac90c3bce005225cbaa4a43740917bb58">ARM_COMPUTE_ERROR_ON_LOC</a>(object_format == Format::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;</div><div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;    <span class="keyword">const</span> std::array&lt;F, <span class="keyword">sizeof</span>...(Fs)&gt; formats_array{ { std::forward&lt;Fs&gt;(formats)... } };</div><div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;    <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(formats_array);</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;    <a class="code" href="_error_8h.xhtml#a1b62e396a1789909dadda61ea4cda96f">ARM_COMPUTE_ERROR_ON_LOC_MSG</a>(object_format != format &amp;&amp; std::none_of(formats_array.begin(), formats_array.end(), [&amp;](<span class="keyword">const</span> F &amp; f)</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;    {</div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;        <span class="keywordflow">return</span> f == object_format;</div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;    }),</div><div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Format %s not supported by this kernel&quot;</span>, <a class="code" href="namespacearm__compute.xhtml#a8b82da7b5e0f6192f415ac347c9e0555">string_from_format</a>(object_format).c_str());</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a1b62e396a1789909dadda61ea4cda96f"><div class="ttname"><a href="_error_8h.xhtml#a1b62e396a1789909dadda61ea4cda96f">ARM_COMPUTE_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00329">Error.h:329</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a6dc630a6ae9cc063b3924bcea8dee9d6"><div class="ttname"><a href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a></div><div class="ttdeci">#define ARM_COMPUTE_UNUSED(...)</div><div class="ttdoc">To avoid unused variables warnings. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00160">Error.h:160</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">arm_compute::Format</a></div><div class="ttdeci">Format</div><div class="ttdoc">Image colour formats. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00050">Types.h:50</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">arm_compute::Format</a></div><div class="ttdeci">Format</div><div class="ttdoc">Image colour formats. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00052">Types.h:52</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_ac90c3bce005225cbaa4a43740917bb58"><div class="ttname"><a href="_error_8h.xhtml#ac90c3bce005225cbaa4a43740917bb58">ARM_COMPUTE_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_LOC(cond, func, file, line)</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#l00347">Error.h:347</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a9c92c867fc64454545668d87b20979eb"><div class="ttname"><a href="namespacearm__compute.xhtml#a9c92c867fc64454545668d87b20979eb">arm_compute::string_from_format</a></div><div class="ttdeci">const std::string &amp; string_from_format(Format format)</div><div class="ttdoc">Convert a tensor format into a string. </div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a8b82da7b5e0f6192f415ac347c9e0555"><div class="ttname"><a href="namespacearm__compute.xhtml#a8b82da7b5e0f6192f415ac347c9e0555">arm_compute::string_from_format</a></div><div class="ttdeci">const std::string &amp; string_from_format(Format format)</div><div class="ttdoc">Convert a tensor format into a string. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_utils_8cpp_source.xhtml#l00080">Utils.cpp:80</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="adf16abfe081654f8bb2b9a4fee09100e"></a>
+<a id="a689cede2a5855c731f7d69b487f30aaa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a689cede2a5855c731f7d69b487f30aaa">&#9670;&nbsp;</a></span>error_on_invalid_multi_hog()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_invalid_multi_hog </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_invalid_multi_hog </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -10458,14 +11952,24 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00144">144</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_h_o_g.xhtml#a4e9b5d4ab15fd9009b463861c1a19dbd">IHOG::info()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00121">HOGInfo::l2_hyst_threshold()</a>, <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">L2HYS_NORM</a>, <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml#a75e828c2dc5a300d224761a410c0925f">IMultiHOG::model()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00116">HOGInfo::normalization_type()</a>, <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml#a36ab43f5c3606001dcd2468b955f3e02">IMultiHOG::num_models()</a>, and <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00126">HOGInfo::phase_type()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;{</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(<span class="keyword">nullptr</span> == multi_hog, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(0 == multi_hog-&gt;num_models(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 1; i &lt; multi_hog-&gt;num_models(); ++i)</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    {</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(multi_hog-&gt;model(0)-&gt;info()-&gt;phase_type() != multi_hog-&gt;model(i)-&gt;info()-&gt;phase_type(),</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                                            <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;                                            <span class="stringliteral">&quot;All HOG parameters must have the same phase type&quot;</span>);</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(multi_hog-&gt;model(0)-&gt;info()-&gt;normalization_type() != multi_hog-&gt;model(i)-&gt;info()-&gt;normalization_type(),</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;                                            <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;                                            <span class="stringliteral">&quot;All HOG parameters must have the same normalization type&quot;</span>);</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>((multi_hog-&gt;model(0)-&gt;info()-&gt;l2_hyst_threshold() != multi_hog-&gt;model(i)-&gt;info()-&gt;l2_hyst_threshold())</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;                                            &amp;&amp; (multi_hog-&gt;model(0)-&gt;info()-&gt;normalization_type() == <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">arm_compute::HOGNormType::L2HYS_NORM</a>),</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;                                            <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;                                            <span class="stringliteral">&quot;All HOG parameters must have the same l2 hysteresis threshold if you use L2 hysteresis normalization type&quot;</span>);</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    }</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">arm_compute::HOGNormType::L2HYS_NORM</a></div><div class="ttdoc">L2-norm followed by clipping. </div></div>
+<div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
+<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a7fdf77ab857ef3a644eef09389cc808d"></a>
+<a id="a9f83032f49a13db29baa1af1a62e5627"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9f83032f49a13db29baa1af1a62e5627">&#9670;&nbsp;</a></span>error_on_invalid_subtensor()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_invalid_subtensor </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_invalid_subtensor </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -10522,14 +12026,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00176">176</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</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>
+<div class="fragment"><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;{</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;    <span class="comment">// Subtensor should not index in x, y dimensions.</span></div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(((coords.x() != 0) || (coords.y() != 0)), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;    <span class="comment">// Subtensor shape should match parent tensor in x, y dimensions.</span></div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(((parent_shape.x() != <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.x()) || (parent_shape.y() != <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.y())), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;    <span class="comment">// Check dimensions</span></div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; TensorShape::num_max_dimensions; ++i)</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    {</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(((coords[i] &gt;= static_cast&lt;int&gt;(parent_shape[i])) || (coords[i] + static_cast&lt;int&gt;(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[i]) &gt; static_cast&lt;int&gt;(parent_shape[i]))),</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;                                        <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;    }</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
+<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a74dd77930a4d0ccf755c1cc648601c63"></a>
+<a id="ac2ab765daf6f586ceaa12575743361e7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac2ab765daf6f586ceaa12575743361e7">&#9670;&nbsp;</a></span>error_on_invalid_subtensor_valid_region()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_invalid_subtensor_valid_region </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_invalid_subtensor_valid_region </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -10579,14 +12092,25 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00193">193</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00281">ValidRegion::anchor</a>, <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00282">ValidRegion::shape</a>.</p>
+<div class="fragment"><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;{</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    <span class="comment">// Check valid regions</span></div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> d = 0; d &lt; TensorShape::num_max_dimensions; ++d)</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    {</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>((parent_valid_region.anchor[d] &gt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[d]), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>((parent_valid_region.anchor[d] + static_cast&lt;int&gt;(parent_valid_region.shape[d])) &lt; (<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[d] + static_cast&lt;int&gt;(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>[d])),</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;                                        <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    }</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;}</div><div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a1fcd64682b37ed3c2098d0094ce788d8"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">arm_compute::ValidRegion::shape</a></div><div class="ttdeci">TensorShape shape</div><div class="ttdoc">Shape of the valid region. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00282">Types.h:282</a></div></div>
+<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7819bcbbf45c2e7c1396a137dce54422"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">arm_compute::test::validation::valid_region</a></div><div class="ttdeci">const ValidRegion valid_region</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00107">ArithmeticDivision.cpp:107</a></div></div>
+<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a55a69b397082accd94221dd10b722cf7"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">arm_compute::ValidRegion::anchor</a></div><div class="ttdeci">Coordinates anchor</div><div class="ttdoc">Anchor for the start of the valid region. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00281">Types.h:281</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aceb8dd0f6a4e2539b39b5a69a1c345b4"></a>
+<a id="ae93ff1ca47057b95d0c6fd0d287253a8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae93ff1ca47057b95d0c6fd0d287253a8">&#9670;&nbsp;</a></span>error_on_invalid_subwindow()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_invalid_subwindow </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_invalid_subwindow </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -10641,9 +12165,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00041">41</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;{</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    full.validate();</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>.<a class="code" href="classarm__compute_1_1_c_l_arithmetic_subtraction.xhtml#a5e951bf3e414ddcd908245bcf284b08f">validate</a>();</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 0; i &lt; <a class="code" href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Coordinates::num_max_dimensions</a>; ++i)</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    {</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].start() &gt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>[i].start(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].end() &lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>[i].end(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].step() != <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>[i].step(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>((<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>[i].start() - full[i].start()) % <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>[i].step(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    }</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_c_l_arithmetic_subtraction_xhtml_a5e951bf3e414ddcd908245bcf284b08f"><div class="ttname"><a href="classarm__compute_1_1_c_l_arithmetic_subtraction.xhtml#a5e951bf3e414ddcd908245bcf284b08f">arm_compute::CLArithmeticSubtraction::validate</a></div><div class="ttdeci">static Status validate(const ITensorInfo *input1, const ITensorInfo *input2, const ITensorInfo *output, ConvertPolicy policy)</div><div class="ttdoc">Static function to check if given info will lead to a valid configuration of CLArithmeticSubtraction...</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_arithmetic_subtraction_8cpp_source.xhtml#l00051">CLArithmeticSubtraction.cpp:51</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a5cf018925dff7200819397bf8a295a0f"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">arm_compute::test::validation::sub</a></div><div class="ttdeci">CLArithmeticSubtraction sub</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00182">ArithmeticSubtraction.cpp:182</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a1b67d5b720119d50faa286c774579ecc"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Dimensions&lt; int &gt;::num_max_dimensions</a></div><div class="ttdeci">static constexpr size_t num_max_dimensions</div><div class="ttdoc">Number of dimensions the tensor has. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00045">Dimensions.h:45</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="adc72c7263d6751e6e1a71fd33c6f8955"></a>
+<a id="a8355d6db4cebee2724bf4463076526c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8355d6db4cebee2724bf4463076526c6">&#9670;&nbsp;</a></span>error_on_mismatching_data_layouts() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -10706,21 +12241,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00457">457</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00457">457</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>.</p>
 
-<p>Referenced by <a class="el" href="_validate_8h_source.xhtml#l00483">error_on_mismatching_data_layouts()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;{</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensor_infos)...));</div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> &amp;&amp;tensor_data_layout = tensor_info-&gt;data_layout();</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;    <span class="keyword">const</span> std::array&lt;<span class="keyword">const</span> ITensorInfo *, <span class="keyword">sizeof</span>...(Ts)&gt; tensors_infos_array{ { std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_infos_array.begin(), tensors_infos_array.end(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info_obj)</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;    {</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;        <span class="keywordflow">return</span> tensor_info_obj-&gt;data_layout() != tensor_data_layout;</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;    }),</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different data layouts&quot;</span>);</div><div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_af4587cd36ddbf2e4dde217d1a1007940"><div class="ttname"><a href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;...pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00483">error_on_mismatching_data_layouts()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;{</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensor_infos)...));</div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> &amp;&amp;tensor_data_layout = tensor_info-&gt;data_layout();</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;    <span class="keyword">const</span> std::array&lt;<span class="keyword">const</span> ITensorInfo *, <span class="keyword">sizeof</span>...(Ts)&gt; tensors_infos_array{ { std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_infos_array.begin(), tensors_infos_array.end(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info_obj)</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;    {</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;        <span class="keywordflow">return</span> tensor_info_obj-&gt;data_layout() != tensor_data_layout;</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;    }),</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different data layouts&quot;</span>);</div><div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a></div><div class="ttdeci">DataLayout</div><div class="ttdoc">Supported tensor data layouts. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00107">Types.h:107</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a></div><div class="ttdeci">DataLayout</div><div class="ttdoc">[DataLayout enum definition] </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00111">Types.h:111</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a8571c7d34a35bcbddf5e4e2538ea0b10"></a>
+<a id="ad6e5ea4c65e9a0e7853ce314024c955d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6e5ea4c65e9a0e7853ce314024c955d">&#9670;&nbsp;</a></span>error_on_mismatching_data_layouts() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -10783,18 +12320,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00483">483</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00483">483</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00457">error_on_mismatching_data_layouts()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;{</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#adc72c7263d6751e6e1a71fd33c6f8955">arm_compute::error_on_mismatching_data_layouts</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(),</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;                                                                                 detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_af4587cd36ddbf2e4dde217d1a1007940"><div class="ttname"><a href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;...pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
-<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00457">error_on_mismatching_data_layouts()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;{</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a8355d6db4cebee2724bf4463076526c6">arm_compute::error_on_mismatching_data_layouts</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(),</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;                                                                                 detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_adc72c7263d6751e6e1a71fd33c6f8955"><div class="ttname"><a href="namespacearm__compute.xhtml#adc72c7263d6751e6e1a71fd33c6f8955">arm_compute::error_on_mismatching_data_layouts</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_data_layouts(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, Ts...tensor_infos)</div><div class="ttdoc">Return an error if the passed tensor infos have different data layouts. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00457">Validate.h:457</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a8355d6db4cebee2724bf4463076526c6"><div class="ttname"><a href="namespacearm__compute.xhtml#a8355d6db4cebee2724bf4463076526c6">arm_compute::error_on_mismatching_data_layouts</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_data_layouts(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, Ts... tensor_infos)</div><div class="ttdoc">Return an error if the passed tensor infos have different data layouts. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00457">Validate.h:457</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a00672eb7b5db5f6396b39b241eaf12f7"></a>
+<a id="a85c38583df1a7998d58c51f7c3d4b354"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85c38583df1a7998d58c51f7c3d4b354">&#9670;&nbsp;</a></span>error_on_mismatching_data_types() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -10857,21 +12396,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00508">508</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00508">508</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>.</p>
 
-<p>Referenced by <a class="el" href="_validate_8h_source.xhtml#l00534">error_on_mismatching_data_types()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;{</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensor_infos)...));</div><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;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&amp;tensor_data_type = tensor_info-&gt;data_type();</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;    <span class="keyword">const</span> std::array&lt;<span class="keyword">const</span> ITensorInfo *, <span class="keyword">sizeof</span>...(Ts)&gt; tensors_infos_array{ { std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_infos_array.begin(), tensors_infos_array.end(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info_obj)</div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;    {</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;        <span class="keywordflow">return</span> tensor_info_obj-&gt;data_type() != tensor_data_type;</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;    }),</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different data types&quot;</span>);</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_af4587cd36ddbf2e4dde217d1a1007940"><div class="ttname"><a href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;...pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00534">error_on_mismatching_data_types()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;{</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensor_infos)...));</div><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;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&amp;tensor_data_type = tensor_info-&gt;data_type();</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;    <span class="keyword">const</span> std::array&lt;<span class="keyword">const</span> ITensorInfo *, <span class="keyword">sizeof</span>...(Ts)&gt; tensors_infos_array{ { std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_infos_array.begin(), tensors_infos_array.end(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info_obj)</div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;    {</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;        <span class="keywordflow">return</span> tensor_info_obj-&gt;data_type() != tensor_data_type;</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;    }),</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different data types&quot;</span>);</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00072">Types.h:72</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00074">Types.h:74</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a709c2aef39aa212b840c6395fc20ce17"></a>
+<a id="aa8b68ddd24c352a4cdd4fb1eea263429"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa8b68ddd24c352a4cdd4fb1eea263429">&#9670;&nbsp;</a></span>error_on_mismatching_data_types() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -10934,18 +12475,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00534">534</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00534">534</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00508">error_on_mismatching_data_types()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;{</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a00672eb7b5db5f6396b39b241eaf12f7">arm_compute::error_on_mismatching_data_types</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(),</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;                                                                               detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_af4587cd36ddbf2e4dde217d1a1007940"><div class="ttname"><a href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;...pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
-<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00508">error_on_mismatching_data_types()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;{</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a85c38583df1a7998d58c51f7c3d4b354">arm_compute::error_on_mismatching_data_types</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(),</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;                                                                               detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a00672eb7b5db5f6396b39b241eaf12f7"><div class="ttname"><a href="namespacearm__compute.xhtml#a00672eb7b5db5f6396b39b241eaf12f7">arm_compute::error_on_mismatching_data_types</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_data_types(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, Ts...tensor_infos)</div><div class="ttdoc">Return an error if the passed two tensor infos have different data types. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00508">Validate.h:508</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a85c38583df1a7998d58c51f7c3d4b354"><div class="ttname"><a href="namespacearm__compute.xhtml#a85c38583df1a7998d58c51f7c3d4b354">arm_compute::error_on_mismatching_data_types</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_data_types(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, Ts... tensor_infos)</div><div class="ttdoc">Return an error if the passed two tensor infos have different data types. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00508">Validate.h:508</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab3f385292b90327061e1276f3e3445c7"></a>
+<a id="a632c1b33a482f7126de4aca221542b64"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a632c1b33a482f7126de4aca221542b64">&#9670;&nbsp;</a></span>error_on_mismatching_dimensions()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -11007,16 +12550,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00280">280</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00280">280</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, and <a class="el" href="_validate_8h_source.xhtml#l00108">arm_compute::detail::for_each_error()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;{</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(<a class="code" href="namespacearm__compute_1_1detail.xhtml#a2fa22dee7227625fa4516f267235667c">detail::for_each_error</a>(detail::compare_dimension&lt;T&gt;(dim1, <span class="keyword">function</span>, file, line), dim2, std::forward&lt;Ts&gt;(dims)...));</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, and <a class="el" href="_validate_8h_source.xhtml#l00108">arm_compute::detail::for_each_error()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;{</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(<a class="code" href="namespacearm__compute_1_1detail.xhtml#a7955712fcb1027a92679cf656e9394cb">detail::for_each_error</a>(detail::compare_dimension&lt;T&gt;(dim1, <span class="keyword">function</span>, file, line), dim2, std::forward&lt;Ts&gt;(dims)...));</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1detail_xhtml_a2fa22dee7227625fa4516f267235667c"><div class="ttname"><a href="namespacearm__compute_1_1detail.xhtml#a2fa22dee7227625fa4516f267235667c">arm_compute::detail::for_each_error</a></div><div class="ttdeci">arm_compute::Status for_each_error(F &amp;&amp;func, T &amp;&amp;arg, Ts &amp;&amp;...args)</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00114">Validate.h:114</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1detail_xhtml_a7955712fcb1027a92679cf656e9394cb"><div class="ttname"><a href="namespacearm__compute_1_1detail.xhtml#a7955712fcb1027a92679cf656e9394cb">arm_compute::detail::for_each_error</a></div><div class="ttdeci">arm_compute::Status for_each_error(F &amp;&amp;func, T &amp;&amp;arg, Ts &amp;&amp;... args)</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00114">Validate.h:114</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="af4c3199d58278db542e1cdfb72a41901"></a>
+<a id="a49e1fb8719a6e3b4db298796bdeac758"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49e1fb8719a6e3b4db298796bdeac758">&#9670;&nbsp;</a></span>error_on_mismatching_quantization_info() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -11087,19 +12632,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00562">562</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00562">562</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00992">is_data_type_quantized_asymmetric()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a3f3e1a3200223e6a304a533b1016e749">ITensorInfo::quantization_info()</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00996">is_data_type_quantized_asymmetric()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a3f3e1a3200223e6a304a533b1016e749">ITensorInfo::quantization_info()</a>.</p>
 
-<p>Referenced by <a class="el" href="_validate_8h_source.xhtml#l00601">error_on_mismatching_quantization_info()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00601">error_on_mismatching_quantization_info()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;{</div><div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;    <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>             &amp;&amp;first_data_type         = tensor_info_1-&gt;data_type();</div><div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;    <span class="keyword">const</span> QuantizationInfo first_quantization_info = tensor_info_1-&gt;quantization_info();</div><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;    <span class="keywordflow">if</span>(!<a class="code" href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">is_data_type_quantized_asymmetric</a>(first_data_type))</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;    {</div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</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="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;    <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensorInfo *, 1 + <span class="keyword">sizeof</span>...(Ts) &gt; tensor_infos_array{ { tensor_info_2, std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensor_infos_array.begin(), tensor_infos_array.end(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info)</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;    {</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;        <span class="keywordflow">return</span> tensor_info-&gt;data_type() != first_data_type;</div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;    }),</div><div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different asymmetric quantized data types&quot;</span>);</div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensor_infos_array.begin(), tensor_infos_array.end(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info)</div><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;    {</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;        <span class="keywordflow">return</span> tensor_info-&gt;quantization_info() != first_quantization_info;</div><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="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different quantization information&quot;</span>);</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;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a14f46283f316e7f0fad301d5c1507e9f"><div class="ttname"><a href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">arm_compute::is_data_type_quantized_asymmetric</a></div><div class="ttdeci">bool is_data_type_quantized_asymmetric(DataType dt)</div><div class="ttdoc">Check if a given data type is of asymmetric quantized type. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00992">Utils.h:992</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00072">Types.h:72</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a14f46283f316e7f0fad301d5c1507e9f"><div class="ttname"><a href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">arm_compute::is_data_type_quantized_asymmetric</a></div><div class="ttdeci">bool is_data_type_quantized_asymmetric(DataType dt)</div><div class="ttdoc">Check if a given data type is of asymmetric quantized type. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00996">Utils.h:996</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00074">Types.h:74</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5be375b525bba68610a75da0a043df3a"></a>
+<a id="a3ba911901c6a47649cba6884e0f43a18"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ba911901c6a47649cba6884e0f43a18">&#9670;&nbsp;</a></span>error_on_mismatching_quantization_info() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -11170,16 +12717,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00601">601</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00601">601</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00562">error_on_mismatching_quantization_info()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;{</div><div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#af4c3199d58278db542e1cdfb72a41901">arm_compute::error_on_mismatching_quantization_info</a>(<span class="keyword">function</span>, file, line, tensor_1-&gt;info(), tensor_2-&gt;info(),</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;                                                                                      detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_af4c3199d58278db542e1cdfb72a41901"><div class="ttname"><a href="namespacearm__compute.xhtml#af4c3199d58278db542e1cdfb72a41901">arm_compute::error_on_mismatching_quantization_info</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_quantization_info(const char *function, const char *file, const int line, const ITensorInfo *tensor_info_1, const ITensorInfo *tensor_info_2, Ts...tensor_infos)</div><div class="ttdoc">Return an error if the passed tensor infos have different asymmetric quantized data types or differen...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00562">Validate.h:562</a></div></div>
-<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00562">error_on_mismatching_quantization_info()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;{</div><div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a49e1fb8719a6e3b4db298796bdeac758">arm_compute::error_on_mismatching_quantization_info</a>(<span class="keyword">function</span>, file, line, tensor_1-&gt;info(), tensor_2-&gt;info(),</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;                                                                                      detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a49e1fb8719a6e3b4db298796bdeac758"><div class="ttname"><a href="namespacearm__compute.xhtml#a49e1fb8719a6e3b4db298796bdeac758">arm_compute::error_on_mismatching_quantization_info</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_quantization_info(const char *function, const char *file, const int line, const ITensorInfo *tensor_info_1, const ITensorInfo *tensor_info_2, Ts... tensor_infos)</div><div class="ttdoc">Return an error if the passed tensor infos have different asymmetric quantized data types or differen...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00562">Validate.h:562</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aea117e0cebca5f4642ed3f269217a09e"></a>
+<a id="a900072ec18ac254db40901425e2b35b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a900072ec18ac254db40901425e2b35b2">&#9670;&nbsp;</a></span>error_on_mismatching_shapes() <span class="overload">[1/4]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -11249,16 +12798,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00368">368</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00368">368</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>.</p>
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>.</p>
 
-<p>Referenced by <a class="el" href="_validate_8h_source.xhtml#l00385">error_on_mismatching_shapes()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;{</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#afa04b5bdea84e0effab066e3b1324ec5">error_on_mismatching_shapes</a>(<span class="keyword">function</span>, file, line, 0U, tensor_info_1, tensor_info_2, std::forward&lt;Ts&gt;(tensor_infos)...);</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_afa04b5bdea84e0effab066e3b1324ec5"><div class="ttname"><a href="namespacearm__compute.xhtml#afa04b5bdea84e0effab066e3b1324ec5">arm_compute::error_on_mismatching_shapes</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_shapes(const char *function, const char *file, const int line, unsigned int upper_dim, const ITensor *tensor_1, const ITensor *tensor_2, Ts...tensors)</div><div class="ttdoc">Return an error if the passed two tensors have different shapes from the given dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00431">Validate.h:431</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00385">error_on_mismatching_shapes()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;{</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a7a314d37a14fb002f52a148122238499">error_on_mismatching_shapes</a>(<span class="keyword">function</span>, file, line, 0U, tensor_info_1, tensor_info_2, std::forward&lt;Ts&gt;(tensor_infos)...);</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a7a314d37a14fb002f52a148122238499"><div class="ttname"><a href="namespacearm__compute.xhtml#a7a314d37a14fb002f52a148122238499">arm_compute::error_on_mismatching_shapes</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_shapes(const char *function, const char *file, const int line, unsigned int upper_dim, const ITensor *tensor_1, const ITensor *tensor_2, Ts... tensors)</div><div class="ttdoc">Return an error if the passed two tensors have different shapes from the given dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00431">Validate.h:431</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a41328dd4b943d34c1cc61410571fd6fa"></a>
+<a id="a196a1a4faf1a8893963fd89d7efaf5d9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a196a1a4faf1a8893963fd89d7efaf5d9">&#9670;&nbsp;</a></span>error_on_mismatching_shapes() <span class="overload">[2/4]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -11328,14 +12879,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00385">385</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00385">385</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_validate_8h_source.xhtml#l00368">error_on_mismatching_shapes()</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>.</p>
-<div class="fragment"><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;{</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#afa04b5bdea84e0effab066e3b1324ec5">error_on_mismatching_shapes</a>(<span class="keyword">function</span>, file, line, 0U, tensor_1, tensor_2, std::forward&lt;Ts&gt;(tensors)...);</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_afa04b5bdea84e0effab066e3b1324ec5"><div class="ttname"><a href="namespacearm__compute.xhtml#afa04b5bdea84e0effab066e3b1324ec5">arm_compute::error_on_mismatching_shapes</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_shapes(const char *function, const char *file, const int line, unsigned int upper_dim, const ITensor *tensor_1, const ITensor *tensor_2, Ts...tensors)</div><div class="ttdoc">Return an error if the passed two tensors have different shapes from the given dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00431">Validate.h:431</a></div></div>
+<p class="reference">References <a class="el" href="_validate_8h_source.xhtml#l00368">error_on_mismatching_shapes()</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>.</p>
+<div class="fragment"><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;{</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a7a314d37a14fb002f52a148122238499">error_on_mismatching_shapes</a>(<span class="keyword">function</span>, file, line, 0U, tensor_1, tensor_2, std::forward&lt;Ts&gt;(tensors)...);</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a7a314d37a14fb002f52a148122238499"><div class="ttname"><a href="namespacearm__compute.xhtml#a7a314d37a14fb002f52a148122238499">arm_compute::error_on_mismatching_shapes</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_shapes(const char *function, const char *file, const int line, unsigned int upper_dim, const ITensor *tensor_1, const ITensor *tensor_2, Ts... tensors)</div><div class="ttdoc">Return an error if the passed two tensors have different shapes from the given dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00431">Validate.h:431</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aac6150cce1c9c666600e4b320a0066e9"></a>
+<a id="a8f08e05970c101f7a9c852dc036f5ffb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8f08e05970c101f7a9c852dc036f5ffb">&#9670;&nbsp;</a></span>error_on_mismatching_shapes() <span class="overload">[3/4]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -11412,19 +12965,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00403">403</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00403">403</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00051">arm_compute::detail::have_different_dimensions()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;{</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info_1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info_2 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensor_infos)...));</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;    <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensorInfo *, 2 + <span class="keyword">sizeof</span>...(Ts) &gt; tensors_info_array{ { tensor_info_1, tensor_info_2, std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(std::next(tensors_info_array.cbegin()), tensors_info_array.cend(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info)</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;    {</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">detail::have_different_dimensions</a>((*tensors_info_array.cbegin())-&gt;tensor_shape(), tensor_info-&gt;tensor_shape(), upper_dim);</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;    }),</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different shapes&quot;</span>);</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_af4587cd36ddbf2e4dde217d1a1007940"><div class="ttname"><a href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;...pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00051">arm_compute::detail::have_different_dimensions()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;{</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info_1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info_2 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensor_infos)...));</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;    <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensorInfo *, 2 + <span class="keyword">sizeof</span>...(Ts) &gt; tensors_info_array{ { tensor_info_1, tensor_info_2, std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(std::next(tensors_info_array.cbegin()), tensors_info_array.cend(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info)</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;    {</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">detail::have_different_dimensions</a>((*tensors_info_array.cbegin())-&gt;tensor_shape(), tensor_info-&gt;tensor_shape(), upper_dim);</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;    }),</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different shapes&quot;</span>);</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1detail_xhtml_a45d610a8bc262f7007c934293361e888"><div class="ttname"><a href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">arm_compute::detail::have_different_dimensions</a></div><div class="ttdeci">bool have_different_dimensions(const Dimensions&lt; T &gt; &amp;dim1, const Dimensions&lt; T &gt; &amp;dim2, unsigned int upper_dim)</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00051">Validate.h:51</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afa04b5bdea84e0effab066e3b1324ec5"></a>
+<a id="a7a314d37a14fb002f52a148122238499"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a314d37a14fb002f52a148122238499">&#9670;&nbsp;</a></span>error_on_mismatching_shapes() <span class="overload">[4/4]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -11501,23 +13056,25 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00431">431</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00431">431</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00368">error_on_mismatching_shapes()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;{</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_2 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#aea117e0cebca5f4642ed3f269217a09e">arm_compute::error_on_mismatching_shapes</a>(<span class="keyword">function</span>, file, line, upper_dim, tensor_1-&gt;info(), tensor_2-&gt;info(),</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;                                                                           detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_af4587cd36ddbf2e4dde217d1a1007940"><div class="ttname"><a href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;...pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
-<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_aea117e0cebca5f4642ed3f269217a09e"><div class="ttname"><a href="namespacearm__compute.xhtml#aea117e0cebca5f4642ed3f269217a09e">arm_compute::error_on_mismatching_shapes</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_shapes(const char *function, const char *file, const int line, const ITensorInfo *tensor_info_1, const ITensorInfo *tensor_info_2, Ts...tensor_infos)</div><div class="ttdoc">Return an error if the passed two tensor infos have different shapes from the given dimension...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00368">Validate.h:368</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00368">error_on_mismatching_shapes()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;{</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_2 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a900072ec18ac254db40901425e2b35b2">arm_compute::error_on_mismatching_shapes</a>(<span class="keyword">function</span>, file, line, upper_dim, tensor_1-&gt;info(), tensor_2-&gt;info(),</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;                                                                           detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a900072ec18ac254db40901425e2b35b2"><div class="ttname"><a href="namespacearm__compute.xhtml#a900072ec18ac254db40901425e2b35b2">arm_compute::error_on_mismatching_shapes</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_shapes(const char *function, const char *file, const int line, const ITensorInfo *tensor_info_1, const ITensorInfo *tensor_info_2, Ts... tensor_infos)</div><div class="ttdoc">Return an error if the passed two tensor infos have different shapes from the given dimension...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00368">Validate.h:368</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a75738bb24f735248ab9584cd24544234"></a>
+<a id="ad7f5b38e9d5391afc4a5ce5702e7379b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7f5b38e9d5391afc4a5ce5702e7379b">&#9670;&nbsp;</a></span>error_on_mismatching_windows()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_windows </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_mismatching_windows </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -11572,9 +13129,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00026">26</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;{</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    full.validate();</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    win.validate();</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 0; i &lt; <a class="code" href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Coordinates::num_max_dimensions</a>; ++i)</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    {</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].start() != win[i].start(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].end() != win[i].end(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].step() != win[i].step(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    }</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a1b67d5b720119d50faa286c774579ecc"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Dimensions&lt; int &gt;::num_max_dimensions</a></div><div class="ttdeci">static constexpr size_t num_max_dimensions</div><div class="ttdoc">Number of dimensions the tensor has. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00045">Dimensions.h:45</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="af4587cd36ddbf2e4dde217d1a1007940"></a>
+<a id="a069d7a20d1a7d62042f23039b356113b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a069d7a20d1a7d62042f23039b356113b">&#9670;&nbsp;</a></span>error_on_nullptr()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -11630,22 +13196,24 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00151">151</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00151">151</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>.</p>
 
-<p>Referenced by <a class="el" href="_validate_8h_source.xhtml#l00457">error_on_mismatching_data_layouts()</a>, <a class="el" href="_validate_8h_source.xhtml#l00508">error_on_mismatching_data_types()</a>, <a class="el" href="_validate_8h_source.xhtml#l00403">error_on_mismatching_shapes()</a>, <a class="el" href="_validate_8h_source.xhtml#l00303">error_on_tensors_not_even()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00336">error_on_tensors_not_subsampled()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00457">error_on_mismatching_data_layouts()</a>, <a class="el" href="_validate_8h_source.xhtml#l00508">error_on_mismatching_data_types()</a>, <a class="el" href="_validate_8h_source.xhtml#l00403">error_on_mismatching_shapes()</a>, <a class="el" href="_validate_8h_source.xhtml#l00303">error_on_tensors_not_even()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00336">error_on_tensors_not_subsampled()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;{</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;    <span class="keyword">const</span> std::array&lt;<span class="keyword">const</span> <span class="keywordtype">void</span> *, <span class="keyword">sizeof</span>...(Ts)&gt; pointers_array{ { std::forward&lt;Ts&gt;(pointers)... } };</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    <span class="keywordtype">bool</span> has_nullptr = std::any_of(pointers_array.begin(), pointers_array.end(), [&amp;](<span class="keyword">const</span> <span class="keywordtype">void</span> *ptr)</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;    {</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        <span class="keywordflow">return</span> (ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    });</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(has_nullptr, <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Nullptr object!&quot;</span>);</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9f37a1ead28d12ce216e27209dae2a81"></a>
+<a id="a398f32595ee55b858853d5bcdcacfef5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a398f32595ee55b858853d5bcdcacfef5">&#9670;&nbsp;</a></span>error_on_tensor_not_2d() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_tensor_not_2d </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_tensor_not_2d </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -11688,16 +13256,25 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Referenced by <a class="el" href="_validate_8h_source.xhtml#l00771">error_on_unsupported_fp16()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00092">92</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a1f4e725b8e1ea36b30e09dc08ae6961d">ITensorInfo::num_dimensions()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00823">error_on_unsupported_fp16()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;{</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor-&gt;info() == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor-&gt;info()-&gt;num_dimensions() != 2,</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                                        <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                                        <span class="stringliteral">&quot;Only 2D Tensors are supported by this kernel (%d passed)&quot;</span>, tensor-&gt;info()-&gt;num_dimensions());</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
+<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a6aca7957ee1166144ae3999c7cf42d29"></a>
+<a id="aa394a6ffa74616f886c889f04883663d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa394a6ffa74616f886c889f04883663d">&#9670;&nbsp;</a></span>error_on_tensor_not_2d() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_tensor_not_2d </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_tensor_not_2d </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -11740,9 +13317,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00103">103</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a1f4e725b8e1ea36b30e09dc08ae6961d">ITensorInfo::num_dimensions()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;{</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor-&gt;num_dimensions() != 2,</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                                        <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                                        <span class="stringliteral">&quot;Only 2D Tensors are supported by this kernel (%d passed)&quot;</span>, tensor-&gt;num_dimensions());</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
+<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5bee409f8a6904df028626835b3a19be"></a>
+<a id="aa8bcb895249c9b0207df5d6512433aab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa8bcb895249c9b0207df5d6512433aab">&#9670;&nbsp;</a></span>error_on_tensors_not_even()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -11804,20 +13390,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00303">303</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00303">303</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00646">adjust_odd_shape()</a>, <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00051">arm_compute::detail::have_different_dimensions()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;{</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensor *, 1 + <span class="keyword">sizeof</span>...(Ts) &gt; tensors_info_array{ { tensor1, std::forward&lt;Ts&gt;(tensors)... } };</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_info_array.cbegin(), tensors_info_array.cend(), [&amp;](<span class="keyword">const</span> ITensor * tensor)</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;    {</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;        <span class="keyword">const</span> TensorShape correct_shape = <a class="code" href="namespacearm__compute.xhtml#add7f7487c235331a6518dd16ad1e3b38">adjust_odd_shape</a>(tensor-&gt;info()-&gt;tensor_shape(), format);</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">detail::have_different_dimensions</a>(tensor-&gt;info()-&gt;tensor_shape(), correct_shape, 2);</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    }),</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensor shape has odd dimensions&quot;</span>);</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_af4587cd36ddbf2e4dde217d1a1007940"><div class="ttname"><a href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;...pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00647">adjust_odd_shape()</a>, <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00051">arm_compute::detail::have_different_dimensions()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;{</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensor *, 1 + <span class="keyword">sizeof</span>...(Ts) &gt; tensors_info_array{ { tensor1, std::forward&lt;Ts&gt;(tensors)... } };</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_info_array.cbegin(), tensors_info_array.cend(), [&amp;](<span class="keyword">const</span> ITensor * tensor)</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;    {</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;        <span class="keyword">const</span> TensorShape correct_shape = <a class="code" href="namespacearm__compute.xhtml#add7f7487c235331a6518dd16ad1e3b38">adjust_odd_shape</a>(tensor-&gt;info()-&gt;tensor_shape(), format);</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">detail::have_different_dimensions</a>(tensor-&gt;info()-&gt;tensor_shape(), correct_shape, 2);</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    }),</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensor shape has odd dimensions&quot;</span>);</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1detail_xhtml_a45d610a8bc262f7007c934293361e888"><div class="ttname"><a href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">arm_compute::detail::have_different_dimensions</a></div><div class="ttdeci">bool have_different_dimensions(const Dimensions&lt; T &gt; &amp;dim1, const Dimensions&lt; T &gt; &amp;dim2, unsigned int upper_dim)</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00051">Validate.h:51</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_add7f7487c235331a6518dd16ad1e3b38"><div class="ttname"><a href="namespacearm__compute.xhtml#add7f7487c235331a6518dd16ad1e3b38">arm_compute::adjust_odd_shape</a></div><div class="ttdeci">TensorShape adjust_odd_shape(const TensorShape &amp;shape, Format format)</div><div class="ttdoc">Adjust tensor shape size if width or height are odd for a given multi-planar format. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00646">Utils.h:646</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_add7f7487c235331a6518dd16ad1e3b38"><div class="ttname"><a href="namespacearm__compute.xhtml#add7f7487c235331a6518dd16ad1e3b38">arm_compute::adjust_odd_shape</a></div><div class="ttdeci">TensorShape adjust_odd_shape(const TensorShape &amp;shape, Format format)</div><div class="ttdoc">Adjust tensor shape size if width or height are odd for a given multi-planar format. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00647">Utils.h:647</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ade35257cf58582ca7c3f6c7d1ceff5f2"></a>
+<a id="a5865def3a35885dda73dd5f4d555d11c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5865def3a35885dda73dd5f4d555d11c">&#9670;&nbsp;</a></span>error_on_tensors_not_subsampled()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -11886,26 +13474,28 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00336">336</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00336">336</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00673">calculate_subsampled_shape()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00051">arm_compute::detail::have_different_dimensions()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;{</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;    <span class="keyword">const</span> TensorShape sub2_shape = <a class="code" href="namespacearm__compute.xhtml#a9d714e1b7d9d7818309138b7d830ebcb">calculate_subsampled_shape</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>, format);</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;    <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensor *, 1 + <span class="keyword">sizeof</span>...(Ts) &gt; tensors_info_array{ { tensor1, std::forward&lt;Ts&gt;(tensors)... } };</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_info_array.cbegin(), tensors_info_array.cend(), [&amp;](<span class="keyword">const</span> ITensor * tensor)</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;    {</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">detail::have_different_dimensions</a>(tensor-&gt;info()-&gt;tensor_shape(), sub2_shape, 2);</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    }),</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensor shape has mismatch dimensions for sub-sampling&quot;</span>);</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00674">calculate_subsampled_shape()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00051">arm_compute::detail::have_different_dimensions()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;{</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;    <span class="keyword">const</span> TensorShape sub2_shape = <a class="code" href="namespacearm__compute.xhtml#a9d714e1b7d9d7818309138b7d830ebcb">calculate_subsampled_shape</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>, format);</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;    <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensor *, 1 + <span class="keyword">sizeof</span>...(Ts) &gt; tensors_info_array{ { tensor1, std::forward&lt;Ts&gt;(tensors)... } };</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_info_array.cbegin(), tensors_info_array.cend(), [&amp;](<span class="keyword">const</span> ITensor * tensor)</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;    {</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">detail::have_different_dimensions</a>(tensor-&gt;info()-&gt;tensor_shape(), sub2_shape, 2);</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    }),</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;    <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensor shape has mismatch dimensions for sub-sampling&quot;</span>);</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a9d714e1b7d9d7818309138b7d830ebcb"><div class="ttname"><a href="namespacearm__compute.xhtml#a9d714e1b7d9d7818309138b7d830ebcb">arm_compute::calculate_subsampled_shape</a></div><div class="ttdeci">TensorShape calculate_subsampled_shape(const TensorShape &amp;shape, Format format, Channel channel=Channel::UNKNOWN)</div><div class="ttdoc">Calculate subsampled shape for a given format and channel. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00673">Utils.h:673</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_af4587cd36ddbf2e4dde217d1a1007940"><div class="ttname"><a href="namespacearm__compute.xhtml#af4587cd36ddbf2e4dde217d1a1007940">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;...pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a9d714e1b7d9d7818309138b7d830ebcb"><div class="ttname"><a href="namespacearm__compute.xhtml#a9d714e1b7d9d7818309138b7d830ebcb">arm_compute::calculate_subsampled_shape</a></div><div class="ttdeci">TensorShape calculate_subsampled_shape(const TensorShape &amp;shape, Format format, Channel channel=Channel::UNKNOWN)</div><div class="ttdoc">Calculate subsampled shape for a given format and channel. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00674">Utils.h:674</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr. </div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1detail_xhtml_a45d610a8bc262f7007c934293361e888"><div class="ttname"><a href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">arm_compute::detail::have_different_dimensions</a></div><div class="ttdeci">bool have_different_dimensions(const Dimensions&lt; T &gt; &amp;dim1, const Dimensions&lt; T &gt; &amp;dim2, unsigned int upper_dim)</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00051">Validate.h:51</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a33278ff3c7798e50c453599576f58bd8"></a>
+<a id="acd11fc94aa2828fee0715de0297eb306"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acd11fc94aa2828fee0715de0297eb306">&#9670;&nbsp;</a></span>error_on_unconfigured_kernel()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_unconfigured_kernel </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_unconfigured_kernel </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -11948,9 +13538,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00166">166</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_i_kernel_8cpp_source.xhtml#l00028">IKernel::window()</a>, and <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;{</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(kernel == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>((kernel-&gt;window().x().start() == kernel-&gt;window().x().end()) &amp;&amp; (kernel-&gt;window().x().end() == 0) &amp;&amp; (kernel-&gt;window().x().step() == 0),</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;                                        <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;                                        <span class="stringliteral">&quot;This kernel hasn&#39;t been configured.&quot;</span>);</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
+<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a8e79316e933e15539e39cace39ba0e35"></a>
+<a id="a8e79316e933e15539e39cace39ba0e35"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8e79316e933e15539e39cace39ba0e35">&#9670;&nbsp;</a></span>error_on_unsupported_cpu_fp16() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12006,18 +13605,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00040">40</a> of file <a class="el" href="_c_p_p_2_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00040">40</a> of file <a class="el" href="_c_p_p_2_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>.</p>
 
-<p>Referenced by <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00060">error_on_unsupported_cpu_fp16()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00060">error_on_unsupported_cpu_fp16()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;{</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#ifndef __ARM_FEATURE_FP16_VECTOR_ARITHMETIC</span></div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor_info-&gt;data_type() == DataType::F16,</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                                        <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;This CPU architecture does not support F16 data type, you need v8.2 or above&quot;</span>);</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* __ARM_FEATURE_FP16_VECTOR_ARITHMETIC */</span><span class="preprocessor"></span></div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> {};</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="af2619085e2d6192b99df91fd805d8d30"></a>
+<a id="af2619085e2d6192b99df91fd805d8d30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af2619085e2d6192b99df91fd805d8d30">&#9670;&nbsp;</a></span>error_on_unsupported_cpu_fp16() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12073,9 +13674,9 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00060">60</a> of file <a class="el" href="_c_p_p_2_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00060">60</a> of file <a class="el" href="_c_p_p_2_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00040">error_on_unsupported_cpu_fp16()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00040">error_on_unsupported_cpu_fp16()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;{</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a8e79316e933e15539e39cace39ba0e35">arm_compute::error_on_unsupported_cpu_fp16</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info()));</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
@@ -12083,7 +13684,9 @@
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a76433394f276fbc92390850a15bd2cae"></a>
+<a id="a76433394f276fbc92390850a15bd2cae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a76433394f276fbc92390850a15bd2cae">&#9670;&nbsp;</a></span>error_on_unsupported_fp16() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12146,18 +13749,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00752">752</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00804">804</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>.</p>
 
-<p>Referenced by <a class="el" href="_validate_8h_source.xhtml#l00771">error_on_unsupported_fp16()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;{</div><div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>((tensor_info-&gt;data_type() == DataType::F16 &amp;&amp; !is_fp16_supported),</div><div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;                                        <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;FP16 not supported by the device&quot;</span>);</div><div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00823">error_on_unsupported_fp16()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;{</div><div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;    <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>((tensor_info-&gt;data_type() == DataType::F16 &amp;&amp; !is_fp16_supported),</div><div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;                                        <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;FP16 not supported by the device&quot;</span>);</div><div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aea2b331c31943c1f726c9f552348c89c"></a>
+<a id="aea2b331c31943c1f726c9f552348c89c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aea2b331c31943c1f726c9f552348c89c">&#9670;&nbsp;</a></span>error_on_unsupported_fp16() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12220,17 +13825,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_validate_8h_source.xhtml#l00771">771</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00823">823</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a9f37a1ead28d12ce216e27209dae2a81">error_on_tensor_not_2d()</a>, <a class="el" href="_validate_8h_source.xhtml#l00752">error_on_unsupported_fp16()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;{</div><div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a76433394f276fbc92390850a15bd2cae">arm_compute::error_on_unsupported_fp16</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), is_fp16_supported));</div><div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8cpp_source.xhtml#l00092">error_on_tensor_not_2d()</a>, <a class="el" href="_validate_8h_source.xhtml#l00804">error_on_unsupported_fp16()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160;{</div><div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;    <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a76433394f276fbc92390850a15bd2cae">arm_compute::error_on_unsupported_fp16</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), is_fp16_supported));</div><div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a76433394f276fbc92390850a15bd2cae"><div class="ttname"><a href="namespacearm__compute.xhtml#a76433394f276fbc92390850a15bd2cae">arm_compute::error_on_unsupported_fp16</a></div><div class="ttdeci">arm_compute::Status error_on_unsupported_fp16(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, bool is_fp16_supported)</div><div class="ttdoc">Return an error if the data type of the passed tensor info is FP16 and FP16 extension is not supporte...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00752">Validate.h:752</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a76433394f276fbc92390850a15bd2cae"><div class="ttname"><a href="namespacearm__compute.xhtml#a76433394f276fbc92390850a15bd2cae">arm_compute::error_on_unsupported_fp16</a></div><div class="ttdeci">arm_compute::Status error_on_unsupported_fp16(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, bool is_fp16_supported)</div><div class="ttdoc">Return an error if the data type of the passed tensor info is FP16 and FP16 extension is not supporte...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00804">Validate.h:804</a></div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5c8dc3902d1a2de5b20aa249fb483eea"></a>
+<a id="a5c8dc3902d1a2de5b20aa249fb483eea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c8dc3902d1a2de5b20aa249fb483eea">&#9670;&nbsp;</a></span>error_on_unsupported_int64_base_atomics()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12279,21 +13886,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
-<p>Definition at line <a class="el" href="_c_l_validate_8h_source.xhtml#l00045">45</a> of file <a class="el" href="_c_l_validate_8h_source.xhtml">CLValidate.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_validate_8h_source.xhtml#l00045">45</a> of file <a class="el" href="_c_l_validate_8h_source.xhtml">CLValidate.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00177">ARM_COMPUTE_CREATE_ERROR_LOC</a>, <a class="el" href="classarm__compute_1_1_c_l_kernel_library.xhtml#aebe2d25607545d31f2b1ace6d60a81da">CLKernelLibrary::get()</a>, and <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">UNSUPPORTED_EXTENSION_USE</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00177">ARM_COMPUTE_CREATE_ERROR_LOC</a>, <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00889">CLKernelLibrary::get()</a>, and <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">UNSUPPORTED_EXTENSION_USE</a>.</p>
 <div class="fragment"><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;{</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <span class="keywordflow">if</span>(!CLKernelLibrary::get().int64_base_atomics_supported())</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    {</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="_error_8h.xhtml#ac00c754f27b1201dd72c74b73239ff47">ARM_COMPUTE_CREATE_ERROR_LOC</a>(<a class="code" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">arm_compute::ErrorCode::UNSUPPORTED_EXTENSION_USE</a>, <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Atomic functions are not supported&quot;</span>);</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    }</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7"><div class="ttname"><a href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">arm_compute::ErrorCode::UNSUPPORTED_EXTENSION_USE</a></div><div class="ttdoc">Unsupported extension used. </div></div>
 <div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
 <div class="ttc" id="_error_8h_xhtml_ac00c754f27b1201dd72c74b73239ff47"><div class="ttname"><a href="_error_8h.xhtml#ac00c754f27b1201dd72c74b73239ff47">ARM_COMPUTE_CREATE_ERROR_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_CREATE_ERROR_LOC(error_code, func, file, line,...)</div><div class="ttdoc">Creates an error on location with a given message. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00177">Error.h:177</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1b1ebe735a15f66be7ebe8dccdbcee15"></a>
+<a id="a7d65985a30fc1229047b7db32caaab43"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d65985a30fc1229047b7db32caaab43">&#9670;&nbsp;</a></span>error_on_window_dimensions_gte()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_window_dimensions_gte </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_window_dimensions_gte </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -12344,14 +13953,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00080">80</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>.</p>
+<div class="fragment"><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;{</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = max_dim; i &lt; <a class="code" href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Coordinates::num_max_dimensions</a>; ++i)</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    {</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>((win[i].start() != 0) || (win[i].end() != win[i].step()),</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                                            <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                                            <span class="stringliteral">&quot;Maximum number of dimensions expected %u but dimension %u is not empty&quot;</span>, max_dim, i);</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    }</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a1b67d5b720119d50faa286c774579ecc"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Dimensions&lt; int &gt;::num_max_dimensions</a></div><div class="ttdeci">static constexpr size_t num_max_dimensions</div><div class="ttdoc">Number of dimensions the tensor has. </div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00045">Dimensions.h:45</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a220627e9e23de1058191022aea58e1cf"></a>
+<a id="a4f63a617a4897663b386ba5e1f5cb675"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4f63a617a4897663b386ba5e1f5cb675">&#9670;&nbsp;</a></span>error_on_window_not_collapsable_at_dimension()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_window_not_collapsable_at_dimension </td>
+          <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_window_not_collapsable_at_dimension </td>
           <td>(</td>
           <td class="paramtype">const char *&#160;</td>
           <td class="paramname"><em>function</em>, </td>
@@ -12409,9 +14027,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class. ">Status</a> </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00057">57</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;{</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    full.validate();</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    window.validate();</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(window[dim].start() != 0, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(window[dim].start() != full[dim].start(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[dim].end() != window[dim].end(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a6c0dcc38187027dcb89cd9724bc5a823"></a>
+<a id="a5002bf7ec46d52971f9526e94172cfee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5002bf7ec46d52971f9526e94172cfee">&#9670;&nbsp;</a></span>execute_window_loop()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12460,16 +14086,18 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00122">122</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00122">122</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
 
-<p>Referenced by <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00601">colorconvert_iyuv_to_nv12()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00482">colorconvert_iyuv_to_rgb()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00816">colorconvert_iyuv_to_yuv4()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00649">colorconvert_nv12_to_iyuv()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00419">colorconvert_nv12_to_rgb()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00758">colorconvert_nv12_to_yuv4()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00918">colorconvert_rgb_to_iyuv()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00875">colorconvert_rgb_to_nv12()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00312">colorconvert_rgb_to_rgbx()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00962">colorconvert_rgb_to_yuv4()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00343">colorconvert_rgbx_to_rgb()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00698">colorconvert_yuyv_to_iyuv()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00546">colorconvert_yuyv_to_nv12()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00374">colorconvert_yuyv_to_rgb()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00740">arm_compute::utils::compare_tensor()</a>, <a class="el" href="_assets_library_8h_source.xhtml#l00424">AssetsLibrary::fill_borders_with_garbage()</a>, <a class="el" href="_image_loader_8h_source.xhtml#l00177">IImageLoader::fill_image()</a>, <a class="el" href="_assets_library_8h_source.xhtml#l00735">AssetsLibrary::fill_layer_data()</a>, <a class="el" href="_image_loader_8h_source.xhtml#l00257">IImageLoader::fill_planar_tensor()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00686">arm_compute::utils::fill_random_tensor()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00357">NPYLoader::fill_tensor()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00639">arm_compute::utils::load_trained_data()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00083">CaffePreproccessor::preprocess()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00060">TFPreproccessor::preprocess()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00494">RandomAccessor::RandomAccessor()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00576">arm_compute::utils::save_to_npy()</a>, and <a class="el" href="utils_2_utils_8h_source.xhtml#l00495">arm_compute::utils::save_to_ppm()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00665">colorconvert_iyuv_to_nv12()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00547">colorconvert_iyuv_to_rgb()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00880">colorconvert_iyuv_to_yuv4()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00713">colorconvert_nv12_to_iyuv()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00485">colorconvert_nv12_to_rgb()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00822">colorconvert_nv12_to_yuv4()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00982">colorconvert_rgb_to_iyuv()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00939">colorconvert_rgb_to_nv12()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00351">colorconvert_rgb_to_rgbx()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00382">colorconvert_rgb_to_u8()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l01026">colorconvert_rgb_to_yuv4()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00410">colorconvert_rgbx_to_rgb()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00762">colorconvert_yuyv_to_iyuv()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00610">colorconvert_yuyv_to_nv12()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00441">colorconvert_yuyv_to_rgb()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00793">arm_compute::utils::compare_tensor()</a>, <a class="el" href="_n_e_warp_kernel_8cpp_source.xhtml#l00067">INEWarpKernel::configure()</a>, <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l00335">NEPoolingLayerKernel::configure()</a>, <a class="el" href="_n_e_derivative_kernel_8cpp_source.xhtml#l00054">NEDerivativeKernel::configure()</a>, <a class="el" href="_n_e_normalization_layer_kernel_8cpp_source.xhtml#l00115">NENormalizationLayerKernel::configure()</a>, <a class="el" href="_n_e_remap_kernel_8cpp_source.xhtml#l00076">NERemapKernel::configure()</a>, <a class="el" href="_n_e_non_linear_filter_kernel_8cpp_source.xhtml#l00353">NENonLinearFilterKernel::configure()</a>, <a class="el" href="_n_e_threshold_kernel_8cpp_source.xhtml#l00045">NEThresholdKernel::configure()</a>, <a class="el" href="_n_e_magnitude_phase_kernel_8cpp_source.xhtml#l00250">NEMagnitudePhaseKernel&lt; mag_type, phase_type &gt;::configure()</a>, <a class="el" href="_n_e_scale_kernel_8cpp_source.xhtml#l00285">NEScaleKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00324">NEConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_i_tensor_8cpp_source.xhtml#l00035">ITensor::copy_from()</a>, <a class="el" href="_assets_library_8h_source.xhtml#l00424">AssetsLibrary::fill_borders_with_garbage()</a>, <a class="el" href="_image_loader_8h_source.xhtml#l00176">IImageLoader::fill_image()</a>, <a class="el" href="_assets_library_8h_source.xhtml#l00735">AssetsLibrary::fill_layer_data()</a>, <a class="el" href="_image_loader_8h_source.xhtml#l00256">IImageLoader::fill_planar_tensor()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00727">arm_compute::utils::fill_random_tensor()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00396">NPYLoader::fill_tensor()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel_8cpp_source.xhtml#l00109">finalize_quantization()</a>, <a class="el" href="_c_p_p_flip_weights_kernel_8cpp_source.xhtml#l00045">CPPFlipWeightsKernel::flip_weights()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00680">arm_compute::utils::load_trained_data()</a>, <a class="el" href="_n_e_histogram_kernel_8cpp_source.xhtml#l00064">NEHistogramKernel::NEHistogramKernel()</a>, <a class="el" href="_n_e_prior_box_layer_kernel_8cpp_source.xhtml#l00108">NEPriorBoxLayerKernel::NEPriorBoxLayerKernel()</a>, <a class="el" href="_n_e_table_lookup_kernel_8cpp_source.xhtml#l00046">NETableLookupKernel::NETableLookupKernel()</a>, <a class="el" href="_n_e_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00098">NEYOLOLayerKernel::NEYOLOLayerKernel()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00089">CaffePreproccessor::preprocess()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00064">TFPreproccessor::preprocess()</a>, <a class="el" href="_c_l_min_max_layer_kernel_8cpp_source.xhtml#l00119">CLMinMaxLayerKernel::reset()</a>, <a class="el" href="_n_e_min_max_layer_kernel_8cpp_source.xhtml#l00192">NEMinMaxLayerKernel::reset()</a>, <a class="el" href="_n_e_box3x3_kernel_8cpp_source.xhtml#l00148">NEBox3x3Kernel::run()</a>, <a class="el" href="_n_e_integral_image_kernel_8cpp_source.xhtml#l00074">NEIntegralImageKernel::run()</a>, <a class="el" href="_n_e_dilate_kernel_8cpp_source.xhtml#l00070">NEDilateKernel::run()</a>, <a class="el" href="_n_e_erode_kernel_8cpp_source.xhtml#l00070">NEErodeKernel::run()</a>, <a class="el" href="_n_e_median3x3_kernel_8cpp_source.xhtml#l00077">NEMedian3x3Kernel::run()</a>, <a class="el" href="_n_e_gaussian3x3_kernel_8cpp_source.xhtml#l00067">NEGaussian3x3Kernel::run()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00076">NEGaussian5x5HorKernel::run()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00266">NEAccumulateKernel::run()</a>, <a class="el" href="_n_e_floor_kernel_8cpp_source.xhtml#l00101">NEFloorKernel::run()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00108">NEGaussianPyramidHorKernel::run()</a>, <a class="el" href="_n_e_bitwise_not_kernel_8cpp_source.xhtml#l00084">NEBitwiseNotKernel::run()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00096">NEBitwiseOrKernel::run()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00092">NEBitwiseXorKernel::run()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00100">NEBitwiseAndKernel::run()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00678">NEHOGOrientationBinningKernel::run()</a>, <a class="el" href="_n_e_fast_corners_kernel_8cpp_source.xhtml#l00391">NEFastCornersKernel::run()</a>, <a class="el" href="_c_p_p_upsample_kernel_8cpp_source.xhtml#l00069">CPPUpsampleKernel::run()</a>, <a class="el" href="_n_e_fill_array_kernel_8cpp_source.xhtml#l00065">NEFillArrayKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00108">NEGEMMMatrixAccumulateBiasesKernel::run()</a>, <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00498">NENonMaximaSuppression3x3Kernel::run()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00093">NESobel5x5HorKernel::run()</a>, <a class="el" href="_n_e_copy_kernel_8cpp_source.xhtml#l00058">NECopyKernel::run()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00196">NESobel7x7HorKernel::run()</a>, <a class="el" href="_n_e_fill_inner_border_kernel_8cpp_source.xhtml#l00064">NEFillInnerBorderKernel::run()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00942">NEGradientKernel::run()</a>, <a class="el" href="_n_e_fill_border_kernel_8cpp_source.xhtml#l00128">NEFillBorderKernel::run()</a>, <a class="el" href="_n_e_h_o_g_detector_kernel_8cpp_source.xhtml#l00095">NEHOGDetectorKernel::run()</a>, <a class="el" href="_c_p_p_corner_candidates_kernel_8cpp_source.xhtml#l00096">CPPCornerCandidatesKernel::run()</a>, <a class="el" href="_n_e_flatten_layer_kernel_8cpp_source.xhtml#l00102">NEFlattenLayerKernel::run()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00180">NEChannelExtractKernel::run()</a>, <a class="el" href="_n_e_sobel3x3_kernel_8cpp_source.xhtml#l00091">NESobel3x3Kernel::run()</a>, <a class="el" href="_n_e_scharr3x3_kernel_8cpp_source.xhtml#l00138">NEScharr3x3Kernel::run()</a>, <a class="el" href="_n_e_width_concatenate_layer_kernel_8cpp_source.xhtml#l00103">NEWidthConcatenateLayerKernel::run()</a>, <a class="el" href="_n_e_dequantization_layer_kernel_8cpp_source.xhtml#l00107">NEDequantizationLayerKernel::run()</a>, <a class="el" href="_n_e_quantization_layer_kernel_8cpp_source.xhtml#l00107">NEQuantizationLayerKernel::run()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00144">NEGaussian5x5VertKernel::run()</a>, <a class="el" href="_n_e_channel_combine_kernel_8cpp_source.xhtml#l00272">NEChannelCombineKernel::run()</a>, <a class="el" href="_n_e_depth_convert_layer_kernel_8cpp_source.xhtml#l00124">NEDepthConvertLayerKernel::run()</a>, <a class="el" href="_n_e_min_max_layer_kernel_8cpp_source.xhtml#l00117">NEMinMaxLayerKernel::run()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00305">NEAccumulateWeightedKernel::run()</a>, <a class="el" href="_n_e_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00550">NEPixelWiseMultiplicationKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00126">NEGEMMTranspose1xWKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00131">NEGEMMLowpMatrixAReductionKernel::run()</a>, <a class="el" href="_n_e_harris_corners_kernel_8cpp_source.xhtml#l00709">NEHarrisScoreKernel&lt; block_size &gt;::run()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00208">NEGaussianPyramidVertKernel::run()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00265">NESobel5x5VertKernel::run()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00355">NESobel7x7VertKernel::run()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00699">NESeparableConvolutionHorKernel&lt; matrix_size &gt;::run()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00772">NEHOGBlockNormalizationKernel::run()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01024">NEEdgeNonMaxSuppressionKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00279">NEGEMMLowpMatrixBReductionKernel::run()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00348">NEAccumulateSquaredKernel::run()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01137">NESeparableConvolutionVertKernel&lt; matrix_size &gt;::run()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01105">NEEdgeTraceKernel::run()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01471">NEConvolutionRectangleKernel::run()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00617">arm_compute::utils::save_to_npy()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00537">arm_compute::utils::save_to_ppm()</a>, <a class="el" href="_slice_operations_8cpp_source.xhtml#l00037">arm_compute::test::validation::reference::slice()</a>, <a class="el" href="_slice_operations_8cpp_source.xhtml#l00082">arm_compute::test::validation::reference::strided_slice()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>, <a class="el" href="_n_e_upsample_layer_kernel_8cpp_source.xhtml#l00089">NEUpsampleLayerKernel::validate()</a>, and <a class="el" href="_n_e_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00066">NEConvertFullyConnectedWeightsKernel::validate()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    w.validate();</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; Coordinates::num_max_dimensions; ++i)</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    {</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(w[i].step() == 0);</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    }</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    Coordinates id;</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    ForEachDimension&lt;Coordinates::num_max_dimensions&gt;::unroll(w, <span class="keywordtype">id</span>, std::forward&lt;L&gt;(lambda_function), std::forward&lt;Ts&gt;(iterators)...);</div><div class="line"><a name="l00133"></a><span class="lineno">  133</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#l00337">Error.h:337</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a695a8105065167f7e4596d31f23a3573"></a>
+<a id="a695a8105065167f7e4596d31f23a3573"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a695a8105065167f7e4596d31f23a3573">&#9670;&nbsp;</a></span>finalize_quantization() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -12537,14 +14165,81 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Quantized values </dd></dl>
 
-<p>Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00074">74</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00074">74</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
 
-<p>References <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00026">rounding_divide_by_pow2()</a>.</p>
+<p class="reference">References <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00026">rounding_divide_by_pow2()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="keyword">const</span> <span class="keyword">static</span> int32x4_t zero_s32 = vdupq_n_s32(0);</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="comment">// Fixed point multiplication with vector saturating rounding doubling multiply high with scalar</span></div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    in_s32.val[0] = vqrdmulhq_n_s32(in_s32.val[0], result_fixedpoint_multiplier);</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    in_s32.val[1] = vqrdmulhq_n_s32(in_s32.val[1], result_fixedpoint_multiplier);</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    in_s32.val[2] = vqrdmulhq_n_s32(in_s32.val[2], result_fixedpoint_multiplier);</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    in_s32.val[3] = vqrdmulhq_n_s32(in_s32.val[3], result_fixedpoint_multiplier);</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    <span class="comment">// Round to the nearest division by a power-of-two using result_shift_s32</span></div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    in_s32.val[0] = <a class="code" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a>(in_s32.val[0], result_shift);</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    in_s32.val[1] = <a class="code" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a>(in_s32.val[1], result_shift);</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    in_s32.val[2] = <a class="code" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a>(in_s32.val[2], result_shift);</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    in_s32.val[3] = <a class="code" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a>(in_s32.val[3], result_shift);</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    <span class="comment">// Add the offset terms</span></div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;    in_s32.val[0] = vaddq_s32(in_s32.val[0], result_offset_after_shift_s32);</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    in_s32.val[1] = vaddq_s32(in_s32.val[1], result_offset_after_shift_s32);</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;    in_s32.val[2] = vaddq_s32(in_s32.val[2], result_offset_after_shift_s32);</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    in_s32.val[3] = vaddq_s32(in_s32.val[3], result_offset_after_shift_s32);</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <span class="comment">// Saturate negative values</span></div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    in_s32.val[0] = vmaxq_s32(in_s32.val[0], zero_s32);</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    in_s32.val[1] = vmaxq_s32(in_s32.val[1], zero_s32);</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    in_s32.val[2] = vmaxq_s32(in_s32.val[2], zero_s32);</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    in_s32.val[3] = vmaxq_s32(in_s32.val[3], zero_s32);</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <span class="comment">// Convert S32 to S16</span></div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <span class="keyword">const</span> int16x8x2_t in_s16 =</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    {</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        {</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;            vcombine_s16(vqmovn_s32(in_s32.val[0]), vqmovn_s32(in_s32.val[1])),</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;            vcombine_s16(vqmovn_s32(in_s32.val[2]), vqmovn_s32(in_s32.val[3]))</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        }</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    };</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    <span class="comment">// Convert S16 to U8</span></div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    uint8x16_t out_u8 = vcombine_u8(vqmovun_s16(in_s16.val[0]), vqmovun_s16(in_s16.val[1]));</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <span class="keywordflow">if</span>(is_bounded_relu)</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    {</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        out_u8 = vmaxq_u8(out_u8, min_u8);</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        out_u8 = vminq_u8(out_u8, max_u8);</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    }</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    <span class="keywordflow">return</span> out_u8;</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a5e28a3911204ac952601f512c82b48f1"><div class="ttname"><a href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">arm_compute::rounding_divide_by_pow2</a></div><div class="ttdeci">int32x4_t rounding_divide_by_pow2(int32x4_t x, int exponent)</div><div class="ttdoc">Round to the nearest division by a power-of-two using exponent. </div><div class="ttdef"><b>Definition:</b> <a href="_n_e_asymm_8inl_source.xhtml#l00026">NEAsymm.inl:26</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9cd394c15b73f79ca1d98f5328064be2"></a>
+<a id="aff311815b306f7885265c103dc0344b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aff311815b306f7885265c103dc0344b9">&#9670;&nbsp;</a></span>finalize_quantization() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint8_t arm_compute::finalize_quantization </td>
+          <td>(</td>
+          <td class="paramtype">int32x4_t&#160;</td>
+          <td class="paramname"><em>in_s32</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>result_fixedpoint_multiplier</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int32_t&#160;</td>
+          <td class="paramname"><em>result_shift</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int32x4_t&#160;</td>
+          <td class="paramname"><em>result_offset_after_shift_s32</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>min_u8</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>max_u8</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 class="definition">Definition at line <a class="el" href="_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel_8cpp_source.xhtml#l00109">109</a> of file <a class="el" href="_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel_8cpp_source.xhtml">NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="_window_8inl_source.xhtml#l00047">Window::collapse_if_possible()</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00047">Window::DimZ</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00266">arm_compute::test::validation::out</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00026">rounding_divide_by_pow2()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel_8cpp_source.xhtml#l00293">NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::run()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, and <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;{</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    <span class="keyword">const</span> <span class="keyword">static</span> int32x4_t zero_s32      = vdupq_n_s32(0);</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    <span class="keyword">const</span> <span class="keyword">static</span> int32x4_t sat_value_s32 = vdupq_n_s32(255);</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="comment">// Fixed point multiplication with vector saturating rounding doubling multiply high with scalar</span></div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    in_s32 = vqrdmulhq_n_s32(in_s32, result_fixedpoint_multiplier);</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    <span class="comment">// Round to the nearest division by a power-of-two using result_shift_s32</span></div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    in_s32 = <a class="code" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a>(in_s32, result_shift);</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    <span class="comment">// Add the offset terms</span></div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    in_s32 = vaddq_s32(in_s32, result_offset_after_shift_s32);</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <span class="comment">// Saturate negative values</span></div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    in_s32 = vmaxq_s32(in_s32, zero_s32);</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    in_s32 = vminq_s32(in_s32, sat_value_s32);</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    <span class="keyword">auto</span> out_u8 = <span class="keyword">static_cast&lt;</span>uint8_t<span class="keyword">&gt;</span>(vgetq_lane_s32(in_s32, 0));</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    <span class="keywordflow">if</span>(is_bounded_relu)</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    {</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        out_u8 = std::max(out_u8, min_u8);</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        out_u8 = std::min(out_u8, max_u8);</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    }</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    <span class="keywordflow">return</span> out_u8;</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a5e28a3911204ac952601f512c82b48f1"><div class="ttname"><a href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">arm_compute::rounding_divide_by_pow2</a></div><div class="ttdeci">int32x4_t rounding_divide_by_pow2(int32x4_t x, int exponent)</div><div class="ttdoc">Round to the nearest division by a power-of-two using exponent. </div><div class="ttdef"><b>Definition:</b> <a href="_n_e_asymm_8inl_source.xhtml#l00026">NEAsymm.inl:26</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a9cd394c15b73f79ca1d98f5328064be2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9cd394c15b73f79ca1d98f5328064be2">&#9670;&nbsp;</a></span>float_to_string_with_full_precision()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12575,11 +14270,45 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>String with the floating point value. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01009">1009</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;{</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;    std::stringstream ss;</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;    ss.precision(std::numeric_limits&lt;float&gt;::digits10 + 1);</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;    ss &lt;&lt; val;</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160;    <span class="keywordflow">return</span> ss.str();</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01013">1013</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00141">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00108">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00067">CLComputeAllAnchorsKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_g_c_normalization_layer_kernel_8cpp_source.xhtml#l00049">GCNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00069">CLBoundingBoxTransformKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_g_c_batch_normalization_layer_kernel_8cpp_source.xhtml#l00139">GCBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00221">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00092">CLROIAlignLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00185">GCGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float_kernel_8cpp_source.xhtml#l00123">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::configure()</a>, and <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00219">CLLogits1DMaxShiftExpSumKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160;{</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;    std::stringstream ss;</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;    ss.precision(std::numeric_limits&lt;float&gt;::digits10 + 1);</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;    ss &lt;&lt; val;</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;    <span class="keywordflow">if</span>(val != static_cast&lt;int&gt;(val))</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;    {</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;        ss &lt;&lt; <span class="stringliteral">&quot;f&quot;</span>;</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160;    }</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160;    <span class="keywordflow">return</span> ss.str();</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a6959e681668a37a9242d2aae4e8b4375"></a>
+<a id="ad1e1cc57e3e2ae0ea65d607f6d6312f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad1e1cc57e3e2ae0ea65d607f6d6312f8">&#9670;&nbsp;</a></span>FloatFlip()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">int32_t arm_compute::FloatFlip </td>
+          <td>(</td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00037">37</a> of file <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml">CLMinMaxLocationKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;{</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    static_assert(<span class="keyword">sizeof</span>(<span class="keywordtype">float</span>) == <span class="keyword">sizeof</span>(int32_t), <span class="stringliteral">&quot;Float must be same size as int32_t&quot;</span>);</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    int32_t int_val = 0;</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    memcpy(&amp;int_val, &amp;val, <span class="keyword">sizeof</span>(<span class="keywordtype">float</span>));</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    int_val = (int_val &gt;= 0) ? int_val : int_val ^ 0x7FFFFFFF;</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="keywordflow">return</span> int_val;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a23062881efd3855d61bae58f330c97db"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a23062881efd3855d61bae58f330c97db">&#9670;&nbsp;</a></span>floor_to_multiple()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12622,19 +14351,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the result. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00078">78</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00079">79</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="namespacearm__compute.xhtml#a64c17a5a42d2499a1626222ff9753b4d">build_information()</a>, and <a class="el" href="namespacearm__compute.xhtml#aefa4a4d3136d77b85cccfce344f9f37f">read_file()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;{</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(value &lt; 0 || divisor &lt;= 0);</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="keywordflow">return</span> (value / divisor) * divisor;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</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#l00337">Error.h:337</a></div></div>
+<p class="reference">Referenced by <a class="el" href="_n_e_h_o_g_detector_kernel_8cpp_source.xhtml#l00042">NEHOGDetectorKernel::configure()</a>, and <a class="el" href="_c_l_h_o_g_detector_kernel_8cpp_source.xhtml#l00044">CLHOGDetectorKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(value &lt; 0 || divisor &lt;= 0);</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <span class="keywordflow">return</span> (value / divisor) * divisor;</div><div class="line"><a name="l00083"></a><span class="lineno">   83</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#l00337">Error.h:337</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa5e9f3429ae4136235c87f98ecb46c9d"></a>
+<a id="a2ad3c9492d4158b574a89ab798d74e16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ad3c9492d4158b574a89ab798d74e16">&#9670;&nbsp;</a></span>fp16_supported()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">bool arm_compute::fp16_supported </td>
+          <td class="memname">bool fp16_supported </td>
           <td>(</td>
           <td class="paramtype">const cl::Device &amp;&#160;</td>
           <td class="paramname"><em>device</em></td><td>)</td>
@@ -12652,16 +14383,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the extension is supported </dd></dl>
 
-<p>Referenced by <a class="el" href="_c_l_kernel_library_8h_source.xhtml#l00326">CLKernelLibrary::get_built_programs()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00140">140</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00183">device_supports_extension()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00895">CLKernelLibrary::create_kernel()</a>, <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00974">CLKernelLibrary::fp16_supported()</a>, and <a class="el" href="_c_l_kernel_library_8h_source.xhtml#l00326">CLKernelLibrary::get_built_programs()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;{</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">device_supports_extension</a>(device, <span class="stringliteral">&quot;cl_khr_fp16&quot;</span>);</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a6c4a5ca34ebb51d4e2e119a110e4c8f0"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">arm_compute::device_supports_extension</a></div><div class="ttdeci">bool device_supports_extension(const cl::Device &amp;device, const char *extension_name)</div><div class="ttdoc">Helper function to check whether a given extension is supported. </div><div class="ttdef"><b>Definition:</b> <a href="_c_l_helpers_8cpp_source.xhtml#l00183">CLHelpers.cpp:183</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a4a351d5c39dec88af98a671da1c43fd6"></a>
+<a id="a2355c2bf5d1950088937416baea24fe6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2355c2bf5d1950088937416baea24fe6">&#9670;&nbsp;</a></span>get_arch_from_target()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> arm_compute::get_arch_from_target </td>
+          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> get_arch_from_target </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td>
           <td class="paramname"><em>target</em></td><td>)</td>
@@ -12679,16 +14417,56 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the GPU target which shows the arch </dd></dl>
 
-<p>Referenced by <a class="el" href="_tuners_8h_source.xhtml#l00040">TunerFactory::create_tuner()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00160">160</a> of file <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml">GPUTarget.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82">GPU_ARCH_MASK</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00220">CLGEMMLowpMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00221">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00185">GCGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_8cpp_source.xhtml#l00090">CLGEMM::configure()</a>, <a class="el" href="_tuners_8h_source.xhtml#l00040">TunerFactory::create_tuner()</a>, and <a class="el" href="_c_l_g_e_m_m_8cpp_source.xhtml#l00180">CLGEMM::validate()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;{</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    <span class="keywordflow">return</span> (target &amp; GPUTarget::GPU_ARCH_MASK);</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab04905b0c6c0e4091160561eae870101"></a>
+<a id="a70d221fbff7bff840ef4d3fdc701cf53"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70d221fbff7bff840ef4d3fdc701cf53">&#9670;&nbsp;</a></span>get_cl_select_type_from_data_type()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">std::string arm_compute::get_cl_type_from_data_type </td>
+          <td class="memname">std::string get_cl_select_type_from_data_type </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&#160;</td>
+          <td class="paramname"><em>dt</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Translates a tensor data type to the appropriate OpenCL select type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> to be translated to OpenCL select type.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The string specifying the OpenCL select type to be used. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00067">67</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, and <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;{</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    {</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;uchar&quot;</span>;</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;char&quot;</span>;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;uchar&quot;</span>;</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;ushort&quot;</span>;</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;short&quot;</span>;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;uint&quot;</span>;</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;int&quot;</span>;</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;ulong&quot;</span>;</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;long&quot;</span>;</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported input data type.&quot;</span>);</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    }</div><div class="line"><a name="l00095"></a><span class="lineno">   95</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#l00261">Error.h:261</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a545eeda2eaa3f5a54345ce8169e21184"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a545eeda2eaa3f5a54345ce8169e21184">&#9670;&nbsp;</a></span>get_cl_type_from_data_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string get_cl_type_from_data_type </td>
           <td>(</td>
           <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&#160;</td>
           <td class="paramname"><em>dt</em></td><td>)</td>
@@ -12706,14 +14484,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string specifying the OpenCL type to be used. </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00035">35</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_warp_perspective_kernel_8cpp_source.xhtml#l00061">CLWarpPerspectiveKernel::configure()</a>, <a class="el" href="_c_l_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00044">CLNonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00141">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00079">CLGEMMMatrixAccumulateBiasesKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00083">CLGEMMMatrixVectorMultiplyKernel::configure()</a>, <a class="el" href="_c_l_copy_kernel_8cpp_source.xhtml#l00138">CLCopyKernel::configure()</a>, <a class="el" href="_c_l_flatten_layer_kernel_8cpp_source.xhtml#l00085">CLFlattenLayerKernel::configure()</a>, <a class="el" href="_c_l_floor_kernel_8cpp_source.xhtml#l00079">CLFloorKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00108">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_reshape_layer_kernel_8cpp_source.xhtml#l00067">CLReshapeLayerKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00040">CLGradientKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00067">CLComputeAllAnchorsKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_permute_kernel_8cpp_source.xhtml#l00076">CLPermuteKernel::configure()</a>, <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00042">CLMemsetKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00083">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00062">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00071">CLDeconvolutionLayerUpsampleKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_depthwise_weights_reshape_kernel_8cpp_source.xhtml#l00069">CLDepthwiseWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00097">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_depth_convert_layer_kernel_8cpp_source.xhtml#l00095">CLDepthConvertLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00184">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_arithmetic_division_kernel_8cpp_source.xhtml#l00102">CLArithmeticDivisionKernel::configure()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00069">CLBoundingBoxTransformKernel::configure()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00120">CLPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_prior_box_layer_kernel_8cpp_source.xhtml#l00122">CLPriorBoxLayerKernel::configure()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00063">CLDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00047">CLAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_c_l_reduction_operation_kernel_8cpp_source.xhtml#l00125">CLReductionOperationKernel::configure()</a>, <a class="el" href="_c_l_l2_normalize_layer_kernel_8cpp_source.xhtml#l00093">CLL2NormalizeLayerKernel::configure()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00046">CLMagnitudePhaseKernel::configure()</a>, <a class="el" href="_c_l_arithmetic_addition_kernel_8cpp_source.xhtml#l00120">CLArithmeticAdditionKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00064">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_c_l_arithmetic_subtraction_kernel_8cpp_source.xhtml#l00128">CLArithmeticSubtractionKernel::configure()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00040">CLConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00049">CLROIPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00092">CLROIAlignLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00221">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00102">CLWinogradFilterTransformKernel::configure()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00104">CLStridedSliceKernel::configure()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00054">CLHarrisScoreKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00136">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_c_l_col2_im_kernel_8cpp_source.xhtml#l00090">CLCol2ImKernel::configure()</a>, <a class="el" href="_c_l_weights_reshape_kernel_8cpp_source.xhtml#l00078">CLWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00111">CLEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00169">CLMinMaxLocationKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00127">CLSeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00219">CLLogits1DMaxShiftExpSumKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00180">CLSeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00173">CLEdgeTraceKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00246">CLConvolutionRectangleKernel::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00335">CLLogits1DNormKernel::configure()</a>, and <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00122">get_underlying_cl_type_from_data_type()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;{</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    {</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;uchar&quot;</span>;</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;char&quot;</span>;</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;uchar&quot;</span>;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;ushort&quot;</span>;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;short&quot;</span>;</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;uint&quot;</span>;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;int&quot;</span>;</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;ulong&quot;</span>;</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;long&quot;</span>;</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;half&quot;</span>;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;float&quot;</span>;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported input data type.&quot;</span>);</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    }</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;}</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#l00261">Error.h:261</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a54c9b94a266f8065b64f001c47815b68"></a>
+<a id="a0e62ce01a7a7af6c3d059bb8534cad45"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0e62ce01a7a7af6c3d059bb8534cad45">&#9670;&nbsp;</a></span>get_cl_version()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52e">CLVersion</a> arm_compute::get_cl_version </td>
+          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52e">CLVersion</a> get_cl_version </td>
           <td>(</td>
           <td class="paramtype">const cl::Device &amp;&#160;</td>
           <td class="paramname"><em>device</em></td><td>)</td>
@@ -12731,14 +14518,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the highest OpenCL version supported </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00160">160</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a">CL10</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea80e95ed62d0c47e4d8c0696d467d4db3">CL11</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675">CL12</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab">CL20</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00895">CLKernelLibrary::create_kernel()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;{</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    std::string version_str = device.getInfo&lt;CL_DEVICE_VERSION&gt;();</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    <span class="keywordflow">if</span>(version_str.find(<span class="stringliteral">&quot;OpenCL 2&quot;</span>) != std::string::npos)</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;    {</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        <span class="keywordflow">return</span> CLVersion::CL20;</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;    }</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span>(version_str.find(<span class="stringliteral">&quot;OpenCL 1.2&quot;</span>) != std::string::npos)</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    {</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        <span class="keywordflow">return</span> CLVersion::CL12;</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    }</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span>(version_str.find(<span class="stringliteral">&quot;OpenCL 1.1&quot;</span>) != std::string::npos)</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;    {</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        <span class="keywordflow">return</span> CLVersion::CL11;</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;    }</div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span>(version_str.find(<span class="stringliteral">&quot;OpenCL 1.0&quot;</span>) != std::string::npos)</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;    {</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;        <span class="keywordflow">return</span> CLVersion::CL10;</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    }</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;    <span class="keywordflow">return</span> CLVersion::UNKNOWN;</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aba90ba1790209a7ec569f3ce897be586"></a>
+<a id="a92d01d03db1530581737484c1290ca16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a92d01d03db1530581737484c1290ca16">&#9670;&nbsp;</a></span>get_cpu_configuration()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">void arm_compute::get_cpu_configuration </td>
+          <td class="memname">void get_cpu_configuration </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="classarm__compute_1_1_c_p_u_info.xhtml">CPUInfo</a> &amp;&#160;</td>
           <td class="paramname"><em>cpuinfo</em></td><td>)</td>
@@ -12755,9 +14550,25 @@
   </dd>
 </dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_p_u_utils_8cpp_source.xhtml#l00304">304</a> of file <a class="el" href="_c_p_u_utils_8cpp_source.xhtml">CPUUtils.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>, <a class="el" href="_c_p_u_utils_8cpp_source.xhtml#l00064">HWCAP_ASIMDDP</a>, <a class="el" href="_c_p_u_utils_8cpp_source.xhtml#l00056">HWCAP_ASIMDHP</a>, <a class="el" href="_c_p_u_utils_8cpp_source.xhtml#l00060">HWCAP_CPUID</a>, <a class="el" href="_c_p_p_types_8cpp_source.xhtml#l00045">CPUInfo::set_cpu_model()</a>, <a class="el" href="_c_p_p_types_8cpp_source.xhtml#l00097">CPUInfo::set_cpu_num()</a>, <a class="el" href="_c_p_p_types_8cpp_source.xhtml#l00040">CPUInfo::set_dotprod()</a>, and <a class="el" href="_c_p_p_types_8cpp_source.xhtml#l00035">CPUInfo::set_fp16()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_i_scheduler_8cpp_source.xhtml#l00031">IScheduler::IScheduler()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;{</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="preprocessor">#if !defined(BARE_METAL) &amp;&amp; (defined(__arm__) || defined(__aarch64__))</span></div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;    <span class="keywordtype">bool</span> cpuid               = <span class="keyword">false</span>;</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    <span class="keywordtype">bool</span> hwcaps_fp16_support = <span class="keyword">false</span>;</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    <span class="keywordtype">bool</span> hwcaps_dot_support  = <span class="keyword">false</span>;</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    <span class="keyword">const</span> uint32_t hwcaps = getauxval(AT_HWCAP);</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    <span class="keywordflow">if</span>((hwcaps &amp; <a class="code" href="_c_p_u_utils_8cpp.xhtml#a81886f53bcc05e6aa40366dcee3c80cc">HWCAP_CPUID</a>) != 0)</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    {</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;        cpuid = <span class="keyword">true</span>;</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    }</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;    <span class="keywordflow">if</span>((hwcaps &amp; <a class="code" href="_c_p_u_utils_8cpp.xhtml#a3adcaa91ed4b68e8939a5175133460d5">HWCAP_ASIMDHP</a>) != 0)</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;    {</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;        hwcaps_fp16_support = <span class="keyword">true</span>;</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    }</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;<span class="preprocessor">#if defined(__aarch64__)</span></div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    <span class="keywordflow">if</span>((hwcaps &amp; <a class="code" href="_c_p_u_utils_8cpp.xhtml#af2e3430d5d0940d0a78029eb50f69234">HWCAP_ASIMDDP</a>) != 0)</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    {</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;        hwcaps_dot_support = <span class="keyword">true</span>;</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    }</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* defined(__aarch64__) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> max_cpus = get_max_cpus();</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;    cpuinfo.<a class="code" href="classarm__compute_1_1_c_p_u_info.xhtml#aba3b726afdf36bdcd7496e1bfb523e71">set_cpu_num</a>(max_cpus);</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    std::vector&lt;CPUModel&gt; percpu(max_cpus, CPUModel::GENERIC);</div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    <span class="keywordflow">if</span>(cpuid)</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;    {</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;        populate_models_cpuid(percpu);</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;    }</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    {</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;        populate_models_cpuinfo(percpu);</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;    }</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;    <span class="keywordtype">int</span> j(0);</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;    <span class="comment">// Update dot product and FP16 support if one of the CPUs support these features</span></div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    <span class="comment">// We assume that the system does not have mixed architectures</span></div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;    <span class="keywordtype">bool</span> one_supports_dot  = <span class="keyword">false</span>;</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;    <span class="keywordtype">bool</span> one_supports_fp16 = <span class="keyword">false</span>;</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">const</span> <span class="keyword">auto</span> &amp;v : percpu)</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;    {</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;        one_supports_dot  = one_supports_dot || model_supports_dot(v);</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;        one_supports_fp16 = one_supports_fp16 || model_supports_fp16(v);</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;        cpuinfo.<a class="code" href="classarm__compute_1_1_c_p_u_info.xhtml#acb24f7c57aaeee1da27db2b4b52434ee">set_cpu_model</a>(j++, v);</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;    }</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    cpuinfo.<a class="code" href="classarm__compute_1_1_c_p_u_info.xhtml#a6d2db590ac4d869e8feb648beb80fcea">set_dotprod</a>(one_supports_dot || hwcaps_dot_support);</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;    cpuinfo.<a class="code" href="classarm__compute_1_1_c_p_u_info.xhtml#a6dfc7d658828318e6c54988913c22ec7">set_fp16</a>(one_supports_fp16 || hwcaps_fp16_support);</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="preprocessor">#else  </span><span class="comment">/* !defined(BARE_METAL) &amp;&amp; (defined(__arm__) || defined(__aarch64__)) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;    <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(cpuinfo);</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* !defined(BARE_METAL) &amp;&amp; (defined(__arm__) || defined(__aarch64__)) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;}</div><div class="ttc" id="_c_p_u_utils_8cpp_xhtml_af2e3430d5d0940d0a78029eb50f69234"><div class="ttname"><a href="_c_p_u_utils_8cpp.xhtml#af2e3430d5d0940d0a78029eb50f69234">HWCAP_ASIMDDP</a></div><div class="ttdeci">#define HWCAP_ASIMDDP</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_u_utils_8cpp_source.xhtml#l00064">CPUUtils.cpp:64</a></div></div>
+<div class="ttc" id="_c_p_u_utils_8cpp_xhtml_a81886f53bcc05e6aa40366dcee3c80cc"><div class="ttname"><a href="_c_p_u_utils_8cpp.xhtml#a81886f53bcc05e6aa40366dcee3c80cc">HWCAP_CPUID</a></div><div class="ttdeci">#define HWCAP_CPUID</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_u_utils_8cpp_source.xhtml#l00060">CPUUtils.cpp:60</a></div></div>
+<div class="ttc" id="_error_8h_xhtml_a6dc630a6ae9cc063b3924bcea8dee9d6"><div class="ttname"><a href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a></div><div class="ttdeci">#define ARM_COMPUTE_UNUSED(...)</div><div class="ttdoc">To avoid unused variables warnings. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00160">Error.h:160</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_c_p_u_info_xhtml_acb24f7c57aaeee1da27db2b4b52434ee"><div class="ttname"><a href="classarm__compute_1_1_c_p_u_info.xhtml#acb24f7c57aaeee1da27db2b4b52434ee">arm_compute::CPUInfo::set_cpu_model</a></div><div class="ttdeci">void set_cpu_model(unsigned int cpuid, CPUModel model)</div><div class="ttdoc">Set the cpumodel for a given cpu core. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_types_8cpp_source.xhtml#l00045">CPPTypes.cpp:45</a></div></div>
+<div class="ttc" id="_c_p_u_utils_8cpp_xhtml_a3adcaa91ed4b68e8939a5175133460d5"><div class="ttname"><a href="_c_p_u_utils_8cpp.xhtml#a3adcaa91ed4b68e8939a5175133460d5">HWCAP_ASIMDHP</a></div><div class="ttdeci">#define HWCAP_ASIMDHP</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_u_utils_8cpp_source.xhtml#l00056">CPUUtils.cpp:56</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_c_p_u_info_xhtml_a6d2db590ac4d869e8feb648beb80fcea"><div class="ttname"><a href="classarm__compute_1_1_c_p_u_info.xhtml#a6d2db590ac4d869e8feb648beb80fcea">arm_compute::CPUInfo::set_dotprod</a></div><div class="ttdeci">void set_dotprod(const bool dotprod)</div><div class="ttdoc">Set dot product support. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_types_8cpp_source.xhtml#l00040">CPPTypes.cpp:40</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_c_p_u_info_xhtml_a6dfc7d658828318e6c54988913c22ec7"><div class="ttname"><a href="classarm__compute_1_1_c_p_u_info.xhtml#a6dfc7d658828318e6c54988913c22ec7">arm_compute::CPUInfo::set_fp16</a></div><div class="ttdeci">void set_fp16(const bool fp16)</div><div class="ttdoc">Set fp16 support. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_types_8cpp_source.xhtml#l00035">CPPTypes.cpp:35</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_c_p_u_info_xhtml_aba3b726afdf36bdcd7496e1bfb523e71"><div class="ttname"><a href="classarm__compute_1_1_c_p_u_info.xhtml#aba3b726afdf36bdcd7496e1bfb523e71">arm_compute::CPUInfo::set_cpu_num</a></div><div class="ttdeci">void set_cpu_num(unsigned int cpu_count)</div><div class="ttdoc">Set max number of cpus. </div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_types_8cpp_source.xhtml#l00097">CPPTypes.cpp:97</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a46e938020a3ac8c926d0590b7fe957db"></a>
+<a id="a46e938020a3ac8c926d0590b7fe957db"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a46e938020a3ac8c926d0590b7fe957db">&#9670;&nbsp;</a></span>get_data_layout_dimension_index()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12799,23 +14610,25 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The int conversion of the requested data layout index. </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00326">326</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00326">326</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
 
-<p>Referenced by <a class="el" href="_shape_calculator_8h_source.xhtml#l00341">arm_compute::misc::shape_calculator::compute_deep_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00169">arm_compute::misc::shape_calculator::compute_depthwise_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00202">arm_compute::misc::shape_calculator::compute_im2col_conv_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00376">arm_compute::misc::shape_calculator::compute_pool_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00039">arm_compute::misc::shape_calculator::compute_vector_to_tensor_output_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00272">arm_compute::misc::shape_calculator::compute_winograd_filter_transform_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00287">arm_compute::misc::shape_calculator::compute_winograd_input_transform_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00315">arm_compute::misc::shape_calculator::compute_winograd_output_transform_shape()</a>, <a class="el" href="reference_2_convert_fully_connected_weights_8cpp_source.xhtml#l00035">arm_compute::test::validation::reference::convert_fully_connected_weights()</a>, <a class="el" href="validation_2_n_e_o_n_2_scale_8cpp_source.xhtml#l00128">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_sub_tensor_info_8h_source.xhtml#l00124">SubTensorInfo::dimension()</a>, <a class="el" href="_tensor_info_8h_source.xhtml#l00227">TensorInfo::dimension()</a>, <a class="el" href="_image_loader_8h_source.xhtml#l00257">IImageLoader::fill_planar_tensor()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00683">get_normalization_dimension_index()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00083">CaffePreproccessor::preprocess()</a>, and <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00401">arm_compute::test::validation::reference::winograd_output_transform()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00184">calculate_valid_region_scale()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00041">CLDepthwiseIm2ColKernel::CLDepthwiseIm2ColKernel()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00592">arm_compute::misc::shape_calculator::compute_batch_to_space_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00181">arm_compute::misc::shape_calculator::compute_col2im_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00265">arm_compute::misc::shape_calculator::compute_deconvolution_output_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00240">arm_compute::misc::shape_calculator::compute_deconvolution_upsampled_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00460">arm_compute::misc::shape_calculator::compute_deep_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00216">arm_compute::misc::shape_calculator::compute_depthwise_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00283">arm_compute::misc::shape_calculator::compute_im2col_conv_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00496">arm_compute::misc::shape_calculator::compute_pool_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00650">arm_compute::misc::shape_calculator::compute_prior_box_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00062">arm_compute::misc::shape_calculator::compute_reorg_output_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00634">arm_compute::misc::shape_calculator::compute_space_to_batch_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00674">arm_compute::misc::shape_calculator::compute_upsample_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00041">arm_compute::misc::shape_calculator::compute_vector_to_tensor_output_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00388">arm_compute::misc::shape_calculator::compute_winograd_filter_transform_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00404">arm_compute::misc::shape_calculator::compute_winograd_input_transform_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00433">arm_compute::misc::shape_calculator::compute_winograd_output_transform_shape()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_r_n_n_layer_8cpp_source.xhtml#l00069">CLRNNLayer::configure()</a>, <a class="el" href="_n_e_im2_col_8cpp_source.xhtml#l00037">NEIm2Col::configure()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00094">CLChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00083">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_n_e_scale_8cpp_source.xhtml#l00099">NEScale::configure()</a>, <a class="el" href="_c_l_depthwise_weights_reshape_kernel_8cpp_source.xhtml#l00069">CLDepthwiseWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00097">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00184">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_n_e_concatenate_layer_8cpp_source.xhtml#l00042">NEConcatenateLayer::configure()</a>, <a class="el" href="_c_l_prior_box_layer_kernel_8cpp_source.xhtml#l00122">CLPriorBoxLayerKernel::configure()</a>, <a class="el" href="_c_l_concatenate_layer_8cpp_source.xhtml#l00042">CLConcatenateLayer::configure()</a>, <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l00335">NEPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00064">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00040">CLConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_n_e_r_n_n_layer_8cpp_source.xhtml#l00067">NERNNLayer::configure()</a>, <a class="el" href="_n_e_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00036">NEConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_n_e_direct_convolution_layer_kernel_8cpp_source.xhtml#l01155">NEDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_n_e_scale_kernel_8cpp_source.xhtml#l00285">NEScaleKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_n_e_winograd_convolution_layer_8cpp_source.xhtml#l00244">NEWinogradConvolutionLayer::configure()</a>, <a class="el" href="_c_l_winograd_convolution_layer_8cpp_source.xhtml#l00092">CLWinogradConvolutionLayer::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00288">CLIm2ColKernel::configure()</a>, <a class="el" href="_n_e_im2_col_kernel_8cpp_source.xhtml#l00333">NEIm2ColKernel::configure()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00110">CLDeconvolutionLayer::configure()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00173">NEGEMMConvolutionLayer::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00098">CLDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00164">CLGEMMConvolutionLayer::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00268">NEDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_r_o_i_align_layer_node_8cpp_source.xhtml#l00060">ROIAlignLayerNode::configure_output()</a>, <a class="el" href="reference_2_convert_fully_connected_weights_8cpp_source.xhtml#l00035">arm_compute::test::validation::reference::convert_fully_connected_weights()</a>, <a class="el" href="validation_2_n_e_o_n_2_scale_8cpp_source.xhtml#l00128">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_sub_tensor_info_8h_source.xhtml#l00124">SubTensorInfo::dimension()</a>, <a class="el" href="_tensor_info_8h_source.xhtml#l00227">TensorInfo::dimension()</a>, <a class="el" href="_image_loader_8h_source.xhtml#l00256">IImageLoader::fill_planar_tensor()</a>, <a class="el" href="_c_p_p_flip_weights_kernel_8cpp_source.xhtml#l00045">CPPFlipWeightsKernel::flip_weights()</a>, <a class="el" href="_c_l_convolution_layer_8cpp_source.xhtml#l00122">CLConvolutionLayer::get_convolution_method()</a>, <a class="el" href="_n_e_convolution_layer_8cpp_source.xhtml#l00108">NEConvolutionLayer::get_convolution_method()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00683">get_normalization_dimension_index()</a>, <a class="el" href="_n_e_prior_box_layer_kernel_8cpp_source.xhtml#l00108">NEPriorBoxLayerKernel::NEPriorBoxLayerKernel()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00089">CaffePreproccessor::preprocess()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00099">CLDeconvolutionLayerUpsampleKernel::run()</a>, <a class="el" href="_c_l_depthwise_weights_reshape_kernel_8cpp_source.xhtml#l00107">CLDepthwiseWeightsReshapeKernel::run()</a>, <a class="el" href="_n_e_direct_convolution_layer_kernel_8cpp_source.xhtml#l01209">NEDirectConvolutionLayerKernel::run()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00227">CLWinogradInputTransformKernel::run()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00503">CLDirectConvolutionLayerKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00571">NEGEMMConvolutionLayer::run()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00043">CLUpsampleLayerKernel::validate()</a>, <a class="el" href="_c_l_r_n_n_layer_8cpp_source.xhtml#l00044">CLRNNLayer::validate()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00041">CLDeconvolutionLayerUpsampleKernel::validate()</a>, <a class="el" href="_n_e_scale_8cpp_source.xhtml#l00173">NEScale::validate()</a>, <a class="el" href="_n_e_upsample_layer_kernel_8cpp_source.xhtml#l00089">NEUpsampleLayerKernel::validate()</a>, <a class="el" href="_c_l_concatenate_layer_8cpp_source.xhtml#l00067">CLConcatenateLayer::validate()</a>, <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l02030">NEPoolingLayerKernel::validate()</a>, <a class="el" href="_n_e_concatenate_layer_8cpp_source.xhtml#l00067">NEConcatenateLayer::validate()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00062">NEConvolutionLayerReshapeWeights::validate()</a>, <a class="el" href="_n_e_r_n_n_layer_8cpp_source.xhtml#l00042">NERNNLayer::validate()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00063">CLConvolutionLayerReshapeWeights::validate()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00174">NEDepthwiseConvolutionLayer3x3::validate()</a>, <a class="el" href="_n_e_winograd_convolution_layer_8cpp_source.xhtml#l00545">NEWinogradConvolutionLayer::validate()</a>, <a class="el" href="_c_l_winograd_convolution_layer_8cpp_source.xhtml#l00150">CLWinogradConvolutionLayer::validate()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00051">CLDeconvolutionLayer::validate()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00377">NEGEMMConvolutionLayer::validate()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00202">CLDepthwiseConvolutionLayer::validate()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00346">CLGEMMConvolutionLayer::validate()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00401">NEDepthwiseConvolutionLayer::validate()</a>, <a class="el" href="_n_e_winograd_convolution_layer_kernel_8cpp_source.xhtml#l00215">INEWinogradLayerTransformWeightsKernel&lt; T &gt;::validate()</a>, and <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00437">arm_compute::test::validation::reference::winograd_output_transform()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;{</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a> == DataLayout::UNKNOWN, <span class="stringliteral">&quot;Cannot retrieve the dimension index for an unknown layout!&quot;</span>);</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    <span class="comment">/* Return the index based on the data layout</span></div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="comment">     * [N C H W]</span></div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="comment">     * [3 2 1 0]</span></div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;<span class="comment">     * [N H W C]</span></div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="comment">    */</span></div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    <span class="keywordflow">switch</span>(data_layout_dimension)</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;    {</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;        <span class="keywordflow">case</span> DataLayoutDimension::CHANNEL:</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;            <span class="keywordflow">return</span> (<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a> == DataLayout::NCHW) ? 2 : 0;</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;        <span class="keywordflow">case</span> DataLayoutDimension::HEIGHT:</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;            <span class="keywordflow">return</span> (<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a> == DataLayout::NCHW) ? 1 : 2;</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;        <span class="keywordflow">case</span> DataLayoutDimension::WIDTH:</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;            <span class="keywordflow">return</span> (<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a> == DataLayout::NCHW) ? 0 : 1;</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;        <span class="keywordflow">case</span> DataLayoutDimension::BATCHES:</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;            <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Data layout index not supported!&quot;</span>);</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    }</div><div class="line"><a name="l00353"></a><span class="lineno">  353</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#l00261">Error.h:261</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00227">Winograd.cpp:227</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00251">Winograd.cpp:251</a></div></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#l00328">Error.h:328</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ae5f4dd9f672832f7dce02fc14487f544"></a>
+<a id="ab631f49c436b1f18beff3248c4b1a19e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab631f49c436b1f18beff3248c4b1a19e">&#9670;&nbsp;</a></span>get_data_size_from_data_type()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">std::string arm_compute::get_data_size_from_data_type </td>
+          <td class="memname">std::string get_data_size_from_data_type </td>
           <td>(</td>
           <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&#160;</td>
           <td class="paramname"><em>dt</em></td><td>)</td>
@@ -12833,9 +14646,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Number of bits in the data type specified. </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00097">97</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00049">CLROIPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00092">CLROIAlignLayerKernel::configure()</a>, and <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;{</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    {</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;8&quot;</span>;</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;16&quot;</span>;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;32&quot;</span>;</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;64&quot;</span>;</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported input data type.&quot;</span>);</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;            <span class="keywordflow">return</span> <span class="stringliteral">&quot;0&quot;</span>;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    }</div><div class="line"><a name="l00120"></a><span class="lineno">  120</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#l00261">Error.h:261</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ae76431f34048289454a9cb6dc66d7c6b"></a>
+<a id="ae76431f34048289454a9cb6dc66d7c6b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae76431f34048289454a9cb6dc66d7c6b">&#9670;&nbsp;</a></span>get_normalization_dimension_index()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12877,15 +14699,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Normalization dimension index </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00683">683</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00683">683</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00326">get_data_layout_dimension_index()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00947">NormalizationLayerInfo::is_in_map()</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00326">get_data_layout_dimension_index()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01391">NormalizationLayerInfo::is_in_map()</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00108">CLNormalizationLayerKernel::configure()</a>, and <a class="el" href="_n_e_normalization_layer_kernel_8cpp_source.xhtml#l00115">NENormalizationLayerKernel::configure()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;{</div><div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> width_idx   = <a class="code" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">get_data_layout_dimension_index</a>(layout, DataLayoutDimension::WIDTH);</div><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel_idx = <a class="code" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">get_data_layout_dimension_index</a>(layout, DataLayoutDimension::CHANNEL);</div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;</div><div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.is_in_map() ? width_idx : channel_idx;</div><div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_a46e938020a3ac8c926d0590b7fe957db"><div class="ttname"><a href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">arm_compute::get_data_layout_dimension_index</a></div><div class="ttdeci">size_t get_data_layout_dimension_index(const DataLayout data_layout, const DataLayoutDimension data_layout_dimension)</div><div class="ttdoc">Get the index of the given dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00326">Helpers.inl:326</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5e4254e9c71fffafb79b99d972df8f81"></a>
+<a id="a5e4254e9c71fffafb79b99d972df8f81"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e4254e9c71fffafb79b99d972df8f81">&#9670;&nbsp;</a></span>get_promoted_data_type()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -12917,19 +14743,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Promoted data type </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00511">511</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00512">512</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
-<div class="fragment"><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;{</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;    {</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;            <span class="keywordflow">return</span> DataType::U16;</div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;            <span class="keywordflow">return</span> DataType::S16;</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;            <span class="keywordflow">return</span> DataType::U32;</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;            <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported data type promotions!&quot;</span>);</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined data type!&quot;</span>);</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;    }</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;    <span class="keywordflow">return</span> DataType::UNKNOWN;</div><div class="line"><a name="l00533"></a><span class="lineno">  533</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</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">switch</span>(dt)</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;    {</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;            <span class="keywordflow">return</span> DataType::U16;</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;            <span class="keywordflow">return</span> DataType::S16;</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;            <span class="keywordflow">return</span> DataType::U32;</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;            <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported data type promotions!&quot;</span>);</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined data type!&quot;</span>);</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;    }</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;    <span class="keywordflow">return</span> DataType::UNKNOWN;</div><div class="line"><a name="l00534"></a><span class="lineno">  534</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ac2b27a559f3ff7deecfcd13e1e24194b"></a>
+<a id="a786b9d823a527bb1e30d38f4dbe52d4b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a786b9d823a527bb1e30d38f4dbe52d4b">&#9670;&nbsp;</a></span>get_target_from_device() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> arm_compute::get_target_from_device </td>
+          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> get_target_from_device </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td></td>
@@ -12940,14 +14768,22 @@
 <p>Helper function to get the GPU target from GLES using GL_RENDERER enum. </p>
 <dl class="section return"><dt>Returns</dt><dd>the GPU target </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_g_c_helpers_8cpp_source.xhtml#l00028">28</a> of file <a class="el" href="_g_c_helpers_8cpp_source.xhtml">GCHelpers.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">get_target_from_name()</a>, and <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00672">glGetString()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;{</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <span class="keyword">const</span> std::string device_name = <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span><span class="keywordtype">char</span> *<span class="keyword">&gt;</span>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#a2ee378c6363791b2a733b2ba4ec6e846">glGetString</a>(GL_RENDERER));</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">get_target_from_name</a>(device_name);</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a0dc6fb54ac0bbc7bf512fe0ca7414076"><div class="ttname"><a href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">arm_compute::get_target_from_name</a></div><div class="ttdeci">GPUTarget get_target_from_name(const std::string &amp;device_name)</div><div class="ttdoc">Helper function to get the GPU target from a device name. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">GPUTarget.cpp:127</a></div></div>
+<div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_a2ee378c6363791b2a733b2ba4ec6e846"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#a2ee378c6363791b2a733b2ba4ec6e846">glGetString</a></div><div class="ttdeci">const GLubyte *GL_APIENTRY glGetString(GLenum name)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00672">OpenGLES.cpp:672</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a22bd4d0de8eb9d2989a9fe61b1003e70"></a>
+<a id="a281384aa081efe5819eedd6a7c2a429b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a281384aa081efe5819eedd6a7c2a429b">&#9670;&nbsp;</a></span>get_target_from_device() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> arm_compute::get_target_from_device </td>
+          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> get_target_from_device </td>
           <td>(</td>
           <td class="paramtype">const cl::Device &amp;&#160;</td>
           <td class="paramname"><em>device</em></td><td>)</td>
@@ -12965,16 +14801,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the GPU target </dd></dl>
 
-<p>Referenced by <a class="el" href="_c_l_scheduler_8h_source.xhtml#l00077">CLScheduler::init()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00127">127</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">get_target_from_name()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l01070">CLKernelLibrary::default_ndrange()</a>, <a class="el" href="_g_c_scheduler_8cpp_source.xhtml#l00055">GCScheduler::init()</a>, <a class="el" href="_c_l_scheduler_8h_source.xhtml#l00077">CLScheduler::init()</a>, and <a class="el" href="_i_c_l_kernel_8cpp_source.xhtml#l00120">ICLKernel::set_target()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;{</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    <span class="comment">// Query device name size</span></div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    std::string device_name = device.getInfo&lt;CL_DEVICE_NAME&gt;();</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">get_target_from_name</a>(device_name);</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a0dc6fb54ac0bbc7bf512fe0ca7414076"><div class="ttname"><a href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">arm_compute::get_target_from_name</a></div><div class="ttdeci">GPUTarget get_target_from_name(const std::string &amp;device_name)</div><div class="ttdoc">Helper function to get the GPU target from a device name. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">GPUTarget.cpp:127</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ade888194135e9dcce690e9e71a40620a"></a>
+<a id="a0dc6fb54ac0bbc7bf512fe0ca7414076"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0dc6fb54ac0bbc7bf512fe0ca7414076">&#9670;&nbsp;</a></span>get_target_from_name()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> arm_compute::get_target_from_name </td>
+          <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> get_target_from_name </td>
           <td>(</td>
           <td class="paramtype">const std::string &amp;&#160;</td>
           <td class="paramname"><em>device_name</em></td><td>)</td>
@@ -12992,16 +14835,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the GPU target </dd></dl>
 
-<p>Referenced by <a class="el" href="_g_p_u_target_8cpp_source.xhtml#l00040">arm_compute::test::validation::TEST_CASE()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">127</a> of file <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml">GPUTarget.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_log_8h_source.xhtml#l00083">ARM_COMPUTE_LOG_INFO_MSG_CORE</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a>, and <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00145">dot8_supported()</a>, <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00127">get_target_from_device()</a>, and <a class="el" href="tests_2validation_2_u_n_i_t_2_g_p_u_target_8cpp_source.xhtml#l00040">arm_compute::test::validation::TEST_CASE()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;{</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    std::regex  mali_regex(R<span class="stringliteral">&quot;(Mali-(.*))&quot;);</span></div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="stringliteral">    std::smatch name_parts;</span></div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="stringliteral">    </span><span class="keyword">const</span> <span class="keywordtype">bool</span>  found_mali = std::regex_search(device_name, name_parts, mali_regex);</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    <span class="keywordflow">if</span>(!found_mali)</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    {</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        <a class="code" href="_log_8h.xhtml#a14f4c3a00d20ad742642767c9449993e">ARM_COMPUTE_LOG_INFO_MSG_CORE</a>(<span class="stringliteral">&quot;Can&#39;t find valid Mali GPU. Target is set to default.&quot;</span>);</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        <span class="keywordflow">return</span> GPUTarget::MIDGARD;</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    }</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>         target  = name_parts.str(1)[0];</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    <span class="keyword">const</span> std::string &amp;version = name_parts.str(1);</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    std::regex future_regex(R<span class="stringliteral">&quot;(.*X)&quot;);</span></div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="stringliteral">    </span><span class="keyword">const</span> <span class="keywordtype">bool</span> is_future_bifrost = std::regex_search(version, future_regex);</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    <span class="keywordflow">if</span>(target == <span class="charliteral">&#39;G&#39;</span> || is_future_bifrost)</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    {</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        <span class="keywordflow">return</span> get_bifrost_target(version);</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    }</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span>(target == <span class="charliteral">&#39;T&#39;</span>)</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    {</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        <span class="keywordflow">return</span> get_midgard_target(version);</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    }</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    {</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <a class="code" href="_log_8h.xhtml#a14f4c3a00d20ad742642767c9449993e">ARM_COMPUTE_LOG_INFO_MSG_CORE</a>(<span class="stringliteral">&quot;Mali GPU unknown. Target is set to the default one. (BIFROST)&quot;</span>);</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        <span class="keywordflow">return</span> GPUTarget::BIFROST;</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    }</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;}</div><div class="ttc" id="_log_8h_xhtml_a14f4c3a00d20ad742642767c9449993e"><div class="ttname"><a href="_log_8h.xhtml#a14f4c3a00d20ad742642767c9449993e">ARM_COMPUTE_LOG_INFO_MSG_CORE</a></div><div class="ttdeci">#define ARM_COMPUTE_LOG_INFO_MSG_CORE(msg)</div><div class="ttdoc">Log information level message to the core system logger. </div><div class="ttdef"><b>Definition:</b> <a href="_log_8h_source.xhtml#l00083">Log.h:83</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a075f941d6e53f1513d8964043a3d809b"></a>
+<a id="a9a9fa44b29bc17746a0b486626a76e0a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a9fa44b29bc17746a0b486626a76e0a">&#9670;&nbsp;</a></span>get_threads_hint()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">unsigned int arm_compute::get_threads_hint </td>
+          <td class="memname">unsigned int get_threads_hint </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td></td>
@@ -13013,14 +14863,23 @@
 <p>To maximize performance the library attempts to process workloads concurrently using as many threads as big cores are available on the system.</p>
 <dl class="section return"><dt>Returns</dt><dd>The minumum number of common cores. </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_p_u_utils_8cpp_source.xhtml#l00359">359</a> of file <a class="el" href="_c_p_u_utils_8cpp_source.xhtml">CPUUtils.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_i_scheduler_8cpp_source.xhtml#l00031">IScheduler::IScheduler()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;{</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> num_threads_hint = 1;</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="preprocessor">#ifndef BARE_METAL</span></div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;    std::map&lt;std::string, unsigned int&gt; cpu_part_occurrence_map;</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;    <span class="comment">// CPU part regex</span></div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    std::regex  cpu_part_rgx(R<span class="stringliteral">&quot;(.*CPU part.+?(?=:).+?(?=\w+)(\w+).*)&quot;);</span></div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="stringliteral">    std::smatch cpu_part_match;</span></div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="stringliteral"></span></div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="stringliteral">    </span><span class="comment">// Read cpuinfo and get occurrence of each core</span></div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;    std::ifstream cpuinfo;</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;    cpuinfo.open(<span class="stringliteral">&quot;/proc/cpuinfo&quot;</span>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">std::ios::in</a>);</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;    <span class="keywordflow">if</span>(cpuinfo.is_open())</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    {</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;        std::string line;</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;        <span class="keywordflow">while</span>(<span class="keywordtype">bool</span>(getline(cpuinfo, line)))</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;        {</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;            <span class="keywordflow">if</span>(std::regex_search(line.cbegin(), line.cend(), cpu_part_match, cpu_part_rgx))</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;            {</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;                std::string cpu_part = cpu_part_match[1];</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;                <span class="keywordflow">if</span>(cpu_part_occurrence_map.find(cpu_part) != cpu_part_occurrence_map.end())</div><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;                    cpu_part_occurrence_map[cpu_part]++;</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">else</span></div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;                {</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;                    cpu_part_occurrence_map[cpu_part] = 1;</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;                }</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;            }</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;        }</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 class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;    <span class="comment">// Get min number of threads</span></div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;    <span class="keyword">auto</span> min_common_cores = std::min_element(cpu_part_occurrence_map.begin(), cpu_part_occurrence_map.end(),</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;                                             [](<span class="keyword">const</span> std::pair&lt;std::string, unsigned int&gt; &amp;p1, <span class="keyword">const</span> std::pair&lt;std::string, unsigned int&gt; &amp;p2)</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;    {</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;        <span class="keywordflow">return</span> p1.second &lt; p2.second;</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;    });</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;    <span class="comment">// Set thread hint</span></div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;    num_threads_hint = cpu_part_occurrence_map.empty() ? std::thread::hardware_concurrency() : min_common_cores-&gt;second;</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* BARE_METAL */</span><span class="preprocessor"></span></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">return</span> num_threads_hint;</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afc95473636a442507fda7ad48f3414c0"></a>
+<a id="aa9ed41c417478e5b1e346de1899137b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9ed41c417478e5b1e346de1899137b1">&#9670;&nbsp;</a></span>get_underlying_cl_type_from_data_type()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">std::string arm_compute::get_underlying_cl_type_from_data_type </td>
+          <td class="memname">std::string get_underlying_cl_type_from_data_type </td>
           <td>(</td>
           <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&#160;</td>
           <td class="paramname"><em>dt</em></td><td>)</td>
@@ -13038,9 +14897,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string specifying the underlying OpenCL type to be used. </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00122">122</a> of file <a class="el" href="_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_c_l_helpers_8cpp_source.xhtml#l00035">get_cl_type_from_data_type()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_fill_border_kernel_8cpp_source.xhtml#l00062">CLFillBorderKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00095">CLWidthConcatenate2TensorsKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate_layer_kernel_8cpp_source.xhtml#l00092">CLWidthConcatenateLayerKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00101">CLWidthConcatenate4TensorsKernel::configure()</a>, and <a class="el" href="_c_l_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00101">CLDepthConcatenateLayerKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a545eeda2eaa3f5a54345ce8169e21184">get_cl_type_from_data_type</a>(dt);</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a545eeda2eaa3f5a54345ce8169e21184"><div class="ttname"><a href="namespacearm__compute.xhtml#a545eeda2eaa3f5a54345ce8169e21184">arm_compute::get_cl_type_from_data_type</a></div><div class="ttdeci">std::string get_cl_type_from_data_type(const DataType &amp;dt)</div><div class="ttdoc">Translates a tensor data type to the appropriate OpenCL type. </div><div class="ttdef"><b>Definition:</b> <a href="_c_l_helpers_8cpp_source.xhtml#l00035">CLHelpers.cpp:35</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a0e3b0d9b90f6c97d5fe97b7d17c7ee25"></a>
+<a id="a1da498e9b2c2d24883087f62c6bbe75d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1da498e9b2c2d24883087f62c6bbe75d">&#9670;&nbsp;</a></span>gpu_target_is_in() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -13081,14 +14949,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the target is equal with at least one of the targets. </dd></dl>
 
-<p>Definition at line <a class="el" href="_g_p_u_target_8h_source.xhtml#l00092">92</a> of file <a class="el" href="_g_p_u_target_8h_source.xhtml">GPUTarget.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_g_p_u_target_8h_source.xhtml#l00094">94</a> of file <a class="el" href="_g_p_u_target_8h_source.xhtml">GPUTarget.h</a>.</p>
 
-<p>Referenced by <a class="el" href="_g_p_u_target_8cpp_source.xhtml#l00056">arm_compute::test::validation::TEST_CASE()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;{</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    <span class="keywordflow">return</span> (target_to_check == target) | <a class="code" href="namespacearm__compute.xhtml#aab39ce9a593f7e12a4bf4cb47272b917">gpu_target_is_in</a>(target_to_check, targets...);</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_aab39ce9a593f7e12a4bf4cb47272b917"><div class="ttname"><a href="namespacearm__compute.xhtml#aab39ce9a593f7e12a4bf4cb47272b917">arm_compute::gpu_target_is_in</a></div><div class="ttdeci">bool gpu_target_is_in(GPUTarget target_to_check, GPUTarget target)</div><div class="ttdoc">Variant of gpu_target_is_in for comparing two targets. </div><div class="ttdef"><b>Definition:</b> <a href="_g_p_u_target_8h_source.xhtml#l00098">GPUTarget.h:98</a></div></div>
+<p class="reference">Referenced by <a class="el" href="tests_2validation_2_u_n_i_t_2_g_p_u_target_8cpp_source.xhtml#l00058">arm_compute::test::validation::TEST_CASE()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;{</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;    <span class="keywordflow">return</span> (target_to_check == target) | <a class="code" href="namespacearm__compute.xhtml#aab39ce9a593f7e12a4bf4cb47272b917">gpu_target_is_in</a>(target_to_check, targets...);</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_aab39ce9a593f7e12a4bf4cb47272b917"><div class="ttname"><a href="namespacearm__compute.xhtml#aab39ce9a593f7e12a4bf4cb47272b917">arm_compute::gpu_target_is_in</a></div><div class="ttdeci">bool gpu_target_is_in(GPUTarget target_to_check, GPUTarget target)</div><div class="ttdoc">Variant of gpu_target_is_in for comparing two targets. </div><div class="ttdef"><b>Definition:</b> <a href="_g_p_u_target_8h_source.xhtml#l00100">GPUTarget.h:100</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aab39ce9a593f7e12a4bf4cb47272b917"></a>
+<a id="aab39ce9a593f7e12a4bf4cb47272b917"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab39ce9a593f7e12a4bf4cb47272b917">&#9670;&nbsp;</a></span>gpu_target_is_in() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13122,11 +14992,13 @@
 
 <p>Variant of gpu_target_is_in for comparing two targets. </p>
 
-<p>Definition at line <a class="el" href="_g_p_u_target_8h_source.xhtml#l00098">98</a> of file <a class="el" href="_g_p_u_target_8h_source.xhtml">GPUTarget.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;{</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <span class="keywordflow">return</span> target_to_check == target;</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="_g_p_u_target_8h_source.xhtml#l00100">100</a> of file <a class="el" href="_g_p_u_target_8h_source.xhtml">GPUTarget.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;{</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    <span class="keywordflow">return</span> target_to_check == target;</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa2f22cc01532e0236e438324310fdb94"></a>
+<a id="aa2f22cc01532e0236e438324310fdb94"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa2f22cc01532e0236e438324310fdb94">&#9670;&nbsp;</a></span>has_format_horizontal_subsampling()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13157,15 +15029,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the format can be subsampled horizontaly. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00541">541</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00542">542</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00646">adjust_odd_shape()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00673">calculate_subsampled_shape()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;{</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;    <span class="keywordflow">return</span> (format == Format::YUYV422 || format == Format::UYVY422 || format == Format::NV12 || format == Format::NV21 || format == Format::IYUV || format == Format::UV88) ? <span class="keyword">true</span> : <span class="keyword">false</span>;</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00647">adjust_odd_shape()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00674">calculate_subsampled_shape()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;{</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;    <span class="keywordflow">return</span> (format == Format::YUYV422 || format == Format::UYVY422 || format == Format::NV12 || format == Format::NV21 || format == Format::IYUV || format == Format::UV88) ? true : <span class="keyword">false</span>;</div><div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a95358b677c5c17f5cc1e369e4a27e2c2"></a>
+<a id="a95358b677c5c17f5cc1e369e4a27e2c2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95358b677c5c17f5cc1e369e4a27e2c2">&#9670;&nbsp;</a></span>has_format_vertical_subsampling()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13196,15 +15070,47 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the format can be subsampled verticaly. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00552">552</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00553">553</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>.</p>
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00646">adjust_odd_shape()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00673">calculate_subsampled_shape()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;{</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;    <span class="keywordflow">return</span> (format == Format::NV12 || format == Format::NV21 || format == Format::IYUV || format == Format::UV88) ? <span class="keyword">true</span> : <span class="keyword">false</span>;</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00647">adjust_odd_shape()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00674">calculate_subsampled_shape()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;{</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;    <span class="keywordflow">return</span> (format == Format::NV12 || format == Format::NV21 || format == Format::IYUV || format == Format::UV88) ? true : <span class="keyword">false</span>;</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a053a24bb37402fa4b4d8d5963976ba17"></a>
+<a id="a69c96727fe92b1ad1b07da3117c73c76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a69c96727fe92b1ad1b07da3117c73c76">&#9670;&nbsp;</a></span>IFloatFlip()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">float arm_compute::IFloatFlip </td>
+          <td>(</td>
+          <td class="paramtype">int32_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00047">47</a> of file <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml">CLMinMaxLocationKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00124">CLMinMaxKernel::run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;{</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    static_assert(<span class="keyword">sizeof</span>(<span class="keywordtype">float</span>) == <span class="keyword">sizeof</span>(int32_t), <span class="stringliteral">&quot;Float must be same size as int32_t&quot;</span>);</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="keywordtype">float</span> flt_val = 0.f;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    val = (val &gt;= 0) ? val : val ^ 0x7FFFFFFF;</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    memcpy(&amp;flt_val, &amp;val, <span class="keyword">sizeof</span>(<span class="keywordtype">float</span>));</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <span class="keywordflow">return</span> flt_val;</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a053a24bb37402fa4b4d8d5963976ba17"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a053a24bb37402fa4b4d8d5963976ba17">&#9670;&nbsp;</a></span>ignore_unused()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13240,11 +15146,13 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="_error_8h_source.xhtml#l00039">39</a> of file <a class="el" href="_error_8h_source.xhtml">Error.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_error_8h_source.xhtml#l00039">39</a> of file <a class="el" href="_error_8h_source.xhtml">Error.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;{</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad34f2150f1c9f8a3ecb7298162124e5d"></a>
+<a id="ad34f2150f1c9f8a3ecb7298162124e5d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad34f2150f1c9f8a3ecb7298162124e5d">&#9670;&nbsp;</a></span>index2coords()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13286,17 +15194,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>n-dimensional coordinates. </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00289">289</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00289">289</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
 
-<p>Referenced by <a class="el" href="reference_2_convert_fully_connected_weights_8cpp_source.xhtml#l00035">arm_compute::test::validation::reference::convert_fully_connected_weights()</a>, <a class="el" href="_window_iterator_8cpp_source.xhtml#l00064">DATA_TEST_CASE()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="reference_2_convert_fully_connected_weights_8cpp_source.xhtml#l00035">arm_compute::test::validation::reference::convert_fully_connected_weights()</a>, <a class="el" href="_window_iterator_8cpp_source.xhtml#l00064">DATA_TEST_CASE()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>, and <a class="el" href="_n_e_g_e_m_m_interleaved_wrapper_8cpp_source.xhtml#l00050">NEGEMMInterleavedWrapper::prepare()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;{</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;    <span class="keywordtype">int</span> num_elements = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.total_size();</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno">  293</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="l00294"></a><span class="lineno">  294</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="l00295"></a><span class="lineno">  295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;    Coordinates coord{ 0 };</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> d = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.num_dimensions() - 1; d &gt;= 0; --d)</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;    {</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;        num_elements /= <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[d];</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;        coord.set(d, index / num_elements);</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        index %= num_elements;</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;    }</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;    <span class="keywordflow">return</span> coord;</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></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#l00328">Error.h:328</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a133621090cfb0f151340c6e04bd7bcc8"></a>
+<a id="aa7510e92de273e0457ce12218f712ad4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa7510e92de273e0457ce12218f712ad4">&#9670;&nbsp;</a></span>intersect_valid_regions()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -13319,14 +15229,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Intersection of all regions. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00469">469</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00469">469</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00276">ValidRegion::anchor</a>, <a class="el" href="_utility_8h_source.xhtml#l00113">arm_compute::utility::foldl()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00277">ValidRegion::shape</a>.</p>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00281">ValidRegion::anchor</a>, <a class="el" href="_utility_8h_source.xhtml#l00113">arm_compute::utility::foldl()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00282">ValidRegion::shape</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_bitwise_and_kernel_8cpp_source.xhtml#l00040">CLBitwiseAndKernel::configure()</a>, <a class="el" href="_c_l_bitwise_xor_kernel_8cpp_source.xhtml#l00041">CLBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_bitwise_or_kernel_8cpp_source.xhtml#l00041">CLBitwiseOrKernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00047">CLAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_g_c_absolute_difference_kernel_8cpp_source.xhtml#l00047">GCAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00057">NEBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00046">CLMagnitudePhaseKernel::configure()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00061">NEBitwiseAndKernel::configure()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00057">NEBitwiseOrKernel::configure()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00049">CLChannelCombineKernel::configure()</a>, <a class="el" href="_n_e_absolute_difference_kernel_8cpp_source.xhtml#l00133">NEAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_magnitude_phase_kernel_8cpp_source.xhtml#l00250">NEMagnitudePhaseKernel&lt; mag_type, phase_type &gt;::configure()</a>, <a class="el" href="_n_e_channel_combine_kernel_8cpp_source.xhtml#l00052">NEChannelCombineKernel::configure()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00054">CLHarrisScoreKernel::configure()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00130">CLColorConvertKernel::configure()</a>, <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00145">NEColorConvertKernel::configure()</a>, <a class="el" href="_n_e_harris_corners_kernel_8cpp_source.xhtml#l00736">NEHarrisScoreKernel&lt; block_size &gt;::configure()</a>, and <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00123">CLLKTrackerStage0Kernel::configure()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;{</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;    <span class="keyword">auto</span> intersect = [](<span class="keyword">const</span> ValidRegion &amp; r1, <span class="keyword">const</span> ValidRegion &amp; r2) -&gt; ValidRegion</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;    {</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;        ValidRegion region;</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> d = 0; d &lt; std::min(r1.anchor.num_dimensions(), r2.anchor.num_dimensions()); ++d)</div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;        {</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;            region.anchor.set(d, std::max(r1.anchor[d], r2.anchor[d]));</div><div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;        }</div><div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;</div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> d = 0; d &lt; std::min(r1.shape.num_dimensions(), r2.shape.num_dimensions()); ++d)</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;        {</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;            region.shape.set(d, std::min(r1.shape[d], r2.shape[d]));</div><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;        }</div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;        <span class="keywordflow">return</span> region;</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;    };</div><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> <a class="code" href="namespacearm__compute_1_1utility.xhtml#a043270c1f50c73bf9f91fcc4570ccf0c">utility::foldl</a>(intersect, regions...);</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utility_xhtml_a043270c1f50c73bf9f91fcc4570ccf0c"><div class="ttname"><a href="namespacearm__compute_1_1utility.xhtml#a043270c1f50c73bf9f91fcc4570ccf0c">arm_compute::utility::foldl</a></div><div class="ttdeci">T &amp;&amp; foldl(F &amp;&amp;, T &amp;&amp;value)</div><div class="ttdoc">Base case of foldl. </div><div class="ttdef"><b>Definition:</b> <a href="_utility_8h_source.xhtml#l00113">Utility.h:113</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="af5982a092e9eb743fce2d6392bdd8897"></a>
+<a id="af5982a092e9eb743fce2d6392bdd8897"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af5982a092e9eb743fce2d6392bdd8897">&#9670;&nbsp;</a></span>is_data_type_float()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13357,13 +15271,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if data type is of floating point type, else false. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00955">955</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00959">959</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>.</p>
-<div class="fragment"><div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;{</div><div class="line"><a name="l00957"></a><span class="lineno">  957</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00958"></a><span class="lineno">  958</span>&#160;    {</div><div class="line"><a name="l00959"></a><span class="lineno">  959</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00960"></a><span class="lineno">  960</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;    }</div><div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_depth_convert_layer_kernel_8cpp_source.xhtml#l00095">CLDepthConvertLayerKernel::configure()</a>, <a class="el" href="_c_l_fill_border_kernel_8cpp_source.xhtml#l00062">CLFillBorderKernel::configure()</a>, <a class="el" href="_c_l_mean_std_dev_8cpp_source.xhtml#l00067">CLMeanStdDev::configure()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00120">CLPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_arithmetic_addition_kernel_8cpp_source.xhtml#l00120">CLArithmeticAdditionKernel::configure()</a>, <a class="el" href="_c_l_arithmetic_subtraction_kernel_8cpp_source.xhtml#l00128">CLArithmeticSubtractionKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00221">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00219">CLLogits1DMaxShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00317">NEDepthwiseConvolutionLayer3x3Kernel::is_optimized_execution_possible()</a>, <a class="el" href="_i_tensor_8cpp_source.xhtml#l00074">ITensor::print()</a>, and <a class="el" href="_c_l_mean_std_dev_8cpp_source.xhtml#l00049">CLMeanStdDev::validate()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00960"></a><span class="lineno">  960</span>&#160;{</div><div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160;    {</div><div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00966"></a><span class="lineno">  966</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;    }</div><div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a0bee325b210f81bb89fe1f9e15badf9c"></a>
+<a id="a0bee325b210f81bb89fe1f9e15badf9c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0bee325b210f81bb89fe1f9e15badf9c">&#9670;&nbsp;</a></span>is_data_type_quantized()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13395,13 +15313,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if data type is of quantized type, else false. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00975">975</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00979">979</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>.</p>
-<div class="fragment"><div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;{</div><div class="line"><a name="l00977"></a><span class="lineno">  977</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00978"></a><span class="lineno">  978</span>&#160;    {</div><div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00981"></a><span class="lineno">  981</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00982"></a><span class="lineno">  982</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;    }</div><div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00097">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_reduction_operation_kernel_8cpp_source.xhtml#l00125">CLReductionOperationKernel::configure()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00120">CLPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_reduction_operation_8cpp_source.xhtml#l00121">CLReductionOperation::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00317">NEDepthwiseConvolutionLayer3x3Kernel::is_optimized_execution_possible()</a>, <a class="el" href="_c_l_reduction_operation_kernel_8cpp_source.xhtml#l00222">CLReductionOperationKernel::run()</a>, and <a class="el" href="_c_l_reduction_operation_8cpp_source.xhtml#l00063">CLReductionOperation::validate()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;{</div><div class="line"><a name="l00981"></a><span class="lineno">  981</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00982"></a><span class="lineno">  982</span>&#160;    {</div><div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00985"></a><span class="lineno">  985</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;    }</div><div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a14f46283f316e7f0fad301d5c1507e9f"></a>
+<a id="a14f46283f316e7f0fad301d5c1507e9f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14f46283f316e7f0fad301d5c1507e9f">&#9670;&nbsp;</a></span>is_data_type_quantized_asymmetric()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13432,20 +15354,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if data type is of symmetric quantized type, else false. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00992">992</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00996">996</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>.</p>
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>.</p>
 
-<p>Referenced by <a class="el" href="_function_helpers_8h_source.xhtml#l00252">arm_compute::graph::backends::detail::create_convolution_layer()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00373">arm_compute::graph::backends::detail::create_depthwise_convolution_layer()</a>, <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00159">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_validate_8h_source.xhtml#l00562">error_on_mismatching_quantization_info()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00039">arm_compute::test::validation::reference::im2col_nchw()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00093">arm_compute::test::validation::reference::im2col_nhwc()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00139">arm_compute::test::validation::reference::im2col_nhwc_channel_first()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00278">set_quantization_info_if_empty()</a>, and <a class="el" href="_validate_helpers_8h_source.xhtml#l00090">arm_compute::graph::backends::detail::validate_convolution_layer()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00993"></a><span class="lineno">  993</span>&#160;{</div><div class="line"><a name="l00994"></a><span class="lineno">  994</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00995"></a><span class="lineno">  995</span>&#160;    {</div><div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00998"></a><span class="lineno">  998</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00999"></a><span class="lineno">  999</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;    }</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">Referenced by <a class="el" href="_graph_builder_8cpp_source.xhtml#l00190">GraphBuilder::add_convolution_node()</a>, <a class="el" href="_graph_builder_8cpp_source.xhtml#l00246">GraphBuilder::add_deconvolution_node()</a>, <a class="el" href="_graph_builder_8cpp_source.xhtml#l00313">GraphBuilder::add_depthwise_convolution_node()</a>, <a class="el" href="_graph_builder_8cpp_source.xhtml#l00391">GraphBuilder::add_fully_connected_layer()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00041">CLDepthwiseIm2ColKernel::CLDepthwiseIm2ColKernel()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_8cpp_source.xhtml#l00033">CLPoolingLayer::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00141">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00083">CLGEMMMatrixVectorMultiplyKernel::configure()</a>, <a class="el" href="_n_e_pooling_layer_8cpp_source.xhtml#l00038">NEPoolingLayer::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_8cpp_source.xhtml#l00040">CLDirectConvolutionLayer::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00184">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00120">CLPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_g_c_convolution_layer_8cpp_source.xhtml#l00044">GCConvolutionLayerReshapeWeights::configure()</a>, <a class="el" href="_c_l_arithmetic_addition_kernel_8cpp_source.xhtml#l00120">CLArithmeticAdditionKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00064">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_c_l_arithmetic_subtraction_kernel_8cpp_source.xhtml#l00128">CLArithmeticSubtractionKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00046">NEConvolutionLayerReshapeWeights::configure()</a>, <a class="el" href="_c_l_softmax_layer_8cpp_source.xhtml#l00073">CLSoftmaxLayer::configure()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00046">CLConvolutionLayerReshapeWeights::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00045">NEDepthwiseConvolutionLayer3x3::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00044">CLDepthwiseConvolutionLayer3x3::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_n_e_fully_connected_layer_8cpp_source.xhtml#l00139">NEFullyConnectedLayer::configure()</a>, <a class="el" href="_c_l_fully_connected_layer_8cpp_source.xhtml#l00137">CLFullyConnectedLayer::configure()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00173">NEGEMMConvolutionLayer::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00219">CLLogits1DMaxShiftExpSumKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00098">CLDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00164">CLGEMMConvolutionLayer::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00268">NEDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00296">arm_compute::graph::backends::detail::create_convolution_layer()</a>, <a class="el" href="_g_c_functions_factory_8cpp_source.xhtml#l00109">arm_compute::graph::backends::detail::create_convolution_layer&lt; GCConvolutionLayerFunctions, GCTargetInfo &gt;()</a>, <a class="el" href="_n_e_function_factory_8cpp_source.xhtml#l00082">arm_compute::graph::backends::detail::create_convolution_layer&lt; NEConvolutionLayerFunctions, NETargetInfo &gt;()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00431">arm_compute::graph::backends::detail::create_depthwise_convolution_layer()</a>, <a class="el" href="_g_c_functions_factory_8cpp_source.xhtml#l00162">arm_compute::graph::backends::detail::create_depthwise_convolution_layer&lt; GCDepthwiseConvolutionLayerFunctions, GCTargetInfo &gt;()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00602">arm_compute::graph::backends::detail::create_fully_connected_layer()</a>, <a class="el" href="tests_2validation_2_c_l_2_fully_connected_layer_8cpp_source.xhtml#l00068">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_validate_8h_source.xhtml#l00562">error_on_mismatching_quantization_info()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00039">arm_compute::test::validation::reference::im2col_nchw()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00093">arm_compute::test::validation::reference::im2col_nhwc()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_8cpp_source.xhtml#l00057">CLDeconvolutionLayerUpsample::run()</a>, <a class="el" href="_c_l_space_to_batch_layer_8cpp_source.xhtml#l00077">CLSpaceToBatchLayer::run()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00278">set_quantization_info_if_empty()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00062">NEConvolutionLayerReshapeWeights::validate()</a>, <a class="el" href="_c_l_softmax_layer_8cpp_source.xhtml#l00148">CLSoftmaxLayer::validate()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00063">CLConvolutionLayerReshapeWeights::validate()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00174">NEDepthwiseConvolutionLayer3x3::validate()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00051">CLDeconvolutionLayer::validate()</a>, <a class="el" href="_n_e_fully_connected_layer_8cpp_source.xhtml#l00240">NEFullyConnectedLayer::validate()</a>, <a class="el" href="_c_l_fully_connected_layer_8cpp_source.xhtml#l00241">CLFullyConnectedLayer::validate()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00377">NEGEMMConvolutionLayer::validate()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00202">CLDepthwiseConvolutionLayer::validate()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00346">CLGEMMConvolutionLayer::validate()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00401">NEDepthwiseConvolutionLayer::validate()</a>, and <a class="el" href="_validate_helpers_8h_source.xhtml#l00114">arm_compute::graph::backends::detail::validate_convolution_layer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;{</div><div class="line"><a name="l00998"></a><span class="lineno">  998</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00999"></a><span class="lineno">  999</span>&#160;    {</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;    }</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a532fb45c0261724a4c2e755cfd3a44e6"></a>
+<a id="a0a7bb17a0a0414a7162f635776a02eb5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a7bb17a0a0414a7162f635776a02eb5">&#9670;&nbsp;</a></span>lower_string()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">std::string arm_compute::lower_string </td>
+          <td class="memname">std::string lower_string </td>
           <td>(</td>
           <td class="paramtype">const std::string &amp;&#160;</td>
           <td class="paramname"><em>val</em></td><td>)</td>
@@ -13463,16 +15387,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The lowered string </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>, and <a class="el" href="_graph_utils_8h_source.xhtml#l00394">arm_compute::graph_utils::get_input_accessor()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00317">317</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_utility_8h_source.xhtml#l00202">arm_compute::utility::tolower()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00141">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_flatten_layer_kernel_8cpp_source.xhtml#l00085">CLFlattenLayerKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00108">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00094">CLChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_locally_connected_matrix_multiply_kernel_8cpp_source.xhtml#l00084">CLLocallyConnectedMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00083">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00062">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_fill_border_kernel_8cpp_source.xhtml#l00060">GCFillBorderKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00097">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00184">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_fill_border_kernel_8cpp_source.xhtml#l00062">CLFillBorderKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00095">CLWidthConcatenate2TensorsKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00079">CLGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_arithmetic_addition_kernel_8cpp_source.xhtml#l00120">CLArithmeticAdditionKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00101">CLWidthConcatenate4TensorsKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00220">CLGEMMLowpMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00221">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00102">CLWinogradFilterTransformKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00136">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00104">CLStridedSliceKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00118">CLGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_c_l_col2_im_kernel_8cpp_source.xhtml#l00090">CLCol2ImKernel::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00288">CLIm2ColKernel::configure()</a>, and <a class="el" href="_graph_utils_8h_source.xhtml#l00408">arm_compute::graph_utils::get_input_accessor()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;{</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;    std::string res = val;</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;    std::transform(res.begin(), res.end(), res.begin(), <a class="code" href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">::tolower</a>);</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utility_xhtml_abb96ad5c7071ec3a47ea5f07e817a636"><div class="ttname"><a href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">arm_compute::utility::tolower</a></div><div class="ttdeci">std::string tolower(std::string string)</div><div class="ttdoc">Convert string to lower case. </div><div class="ttdef"><b>Definition:</b> <a href="_utility_8h_source.xhtml#l00202">Utility.h:202</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ac3f2de3a35ff8d9a47b5b793637784e7"></a>
+<a id="adfbf24db2a651269a83f7e49e2b86850"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adfbf24db2a651269a83f7e49e2b86850">&#9670;&nbsp;</a></span>max_consecutive_elements_display_width()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">int arm_compute::max_consecutive_elements_display_width </td>
+          <td class="memname">int max_consecutive_elements_display_width </td>
           <td>(</td>
           <td class="paramtype">std::ostream &amp;&#160;</td>
           <td class="paramname"><em>s</em>, </td>
@@ -13515,11 +15446,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The maximum width of the elements. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01059">max_consecutive_elements_display_width_impl()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00428">428</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_i_tensor_8cpp_source.xhtml#l00074">ITensor::print()</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">switch</span>(dt)</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;    {</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;            <span class="keywordflow">return</span> max_consecutive_elements_display_width_impl&lt;uint8_t&gt;(s, ptr, n);</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;            <span class="keywordflow">return</span> max_consecutive_elements_display_width_impl&lt;int8_t&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>int8_t *<span class="keyword">&gt;</span>(ptr), n);</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;            <span class="keywordflow">return</span> max_consecutive_elements_display_width_impl&lt;uint16_t&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>uint16_t *<span class="keyword">&gt;</span>(ptr), n);</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;            <span class="keywordflow">return</span> max_consecutive_elements_display_width_impl&lt;int16_t&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>int16_t *<span class="keyword">&gt;</span>(ptr), n);</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;            <span class="keywordflow">return</span> max_consecutive_elements_display_width_impl&lt;uint32_t&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>uint32_t *<span class="keyword">&gt;</span>(ptr), n);</div><div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;            <span class="keywordflow">return</span> max_consecutive_elements_display_width_impl&lt;int32_t&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>int32_t *<span class="keyword">&gt;</span>(ptr), n);</div><div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;            <span class="keywordflow">return</span> max_consecutive_elements_display_width_impl&lt;float&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span><span class="keywordtype">float</span> *<span class="keyword">&gt;</span>(ptr), n);</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;            <span class="keywordflow">return</span> max_consecutive_elements_display_width_impl&lt;half&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a> *<span class="keyword">&gt;</span>(ptr), n);</div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined element size for given data type&quot;</span>);</div><div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;    }</div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00453"></a><span class="lineno">  453</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a73e2825fd61d349c5ca2f5313e3c8ea1"><div class="ttname"><a href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">arm_compute::half</a></div><div class="ttdeci">half_float::half half</div><div class="ttdoc">16-bit floating point type </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00044">Types.h:44</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aaecee617b967dd96f27d2f36732fb68e"></a>
+<a id="aaecee617b967dd96f27d2f36732fb68e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaecee617b967dd96f27d2f36732fb68e">&#9670;&nbsp;</a></span>max_consecutive_elements_display_width_impl()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -13560,14 +15499,14 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The maximum width of the elements. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01059">1059</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
-
-<p>References <a class="el" href="namespacearm__compute.xhtml#ac3f2de3a35ff8d9a47b5b793637784e7">max_consecutive_elements_display_width()</a>, and <a class="el" href="namespacearm__compute.xhtml#a51a0d2ae440bc8cab3fbbe84bfea8b1d">print_consecutive_elements()</a>.</p>
-<div class="fragment"><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;{</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;    <span class="keyword">using</span> print_type = <span class="keyword">typename</span> std::conditional&lt;std::is_floating_point&lt;T&gt;::value, T, <span class="keywordtype">int</span>&gt;::type;</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;    <span class="keywordtype">int</span> max_width = -1;</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; n; ++i)</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160;    {</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;        std::stringstream ss;</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;        ss.copyfmt(s);</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;        <span class="keywordflow">if</span>(std::is_same&lt;<span class="keyword">typename</span> std::decay&lt;T&gt;::type, <a class="code" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a>&gt;::value)</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160;        {</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160;            <span class="comment">// We use T instead of print_type here is because the std::is_floating_point&lt;half&gt; returns false and then the print_type becomes int.</span></div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160;            ss &lt;&lt; static_cast&lt;T&gt;(ptr[i]);</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;        }</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;        {</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;            ss &lt;&lt; static_cast&lt;print_type&gt;(ptr[i]);</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;        }</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;        max_width = std::max&lt;int&gt;(max_width, ss.str().size());</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;    }</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;    <span class="keywordflow">return</span> max_width;</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a73e2825fd61d349c5ca2f5313e3c8ea1"><div class="ttname"><a href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">arm_compute::half</a></div><div class="ttdeci">half_float::half half</div><div class="ttdoc">16-bit floating point type </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00044">Types.h:44</a></div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01069">1069</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160;{</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160;    <span class="keyword">using</span> print_type = <span class="keyword">typename</span> std::conditional&lt;std::is_floating_point&lt;T&gt;::value, T, <span class="keywordtype">int</span>&gt;::type;</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160;</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;    <span class="keywordtype">int</span> max_width = -1;</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; n; ++i)</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;    {</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;        std::stringstream ss;</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;        ss.copyfmt(s);</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;        <span class="keywordflow">if</span>(std::is_same&lt;<span class="keyword">typename</span> std::decay&lt;T&gt;::type, <a class="code" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a>&gt;::value)</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;        {</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;            <span class="comment">// We use T instead of print_type here is because the std::is_floating_point&lt;half&gt; returns false and then the print_type becomes int.</span></div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;            ss &lt;&lt; static_cast&lt;T&gt;(ptr[i]);</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;        }</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;        {</div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160;            ss &lt;&lt; static_cast&lt;print_type&gt;(ptr[i]);</div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160;        }</div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160;</div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160;        max_width = std::max&lt;int&gt;(max_width, ss.str().size());</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;    }</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;    <span class="keywordflow">return</span> max_width;</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a73e2825fd61d349c5ca2f5313e3c8ea1"><div class="ttname"><a href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">arm_compute::half</a></div><div class="ttdeci">half_float::half half</div><div class="ttdoc">16-bit floating point type </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00044">Types.h:44</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab14153fb809c18823af3c9c8bc4286cb"></a>
+<a id="ab14153fb809c18823af3c9c8bc4286cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab14153fb809c18823af3c9c8bc4286cb">&#9670;&nbsp;</a></span>num_channels_from_format()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13598,13 +15537,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The number of channels for a given image format. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00470">470</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00471">471</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
-<div class="fragment"><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;{</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;    {</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;            <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;        <span class="comment">// Because the U and V channels are subsampled</span></div><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;        <span class="comment">// these formats appear like having only 2 channels:</span></div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;        <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;            <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;            <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;        <span class="comment">//Doesn&#39;t make sense for planar formats:</span></div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;            <span class="keywordflow">return</span> 0;</div><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;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00104">TensorInfo::init()</a>, <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00173">TensorInfo::init_auto_padding()</a>, and <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00325">TensorInfo::set_format()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;{</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;    {</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;            <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;        <span class="comment">// Because the U and V channels are subsampled</span></div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;        <span class="comment">// these formats appear like having only 2 channels:</span></div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;        <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;            <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;            <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;        <span class="comment">//Doesn&#39;t make sense for planar formats:</span></div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;    }</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a2a71659def659c8b1c164023a99a25a9"></a>
+<a id="a2a71659def659c8b1c164023a99a25a9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a71659def659c8b1c164023a99a25a9">&#9670;&nbsp;</a></span>num_planes_from_format()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13635,19 +15578,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The number of planes for a given image format. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00436">436</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00437">437</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
-<div class="fragment"><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;{</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    {</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;            <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;            <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported format&quot;</span>);</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;    }</div><div class="line"><a name="l00462"></a><span class="lineno">  462</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00238">CLChannelCombineKernel::run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;{</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;    {</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;            <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;            <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported format&quot;</span>);</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;    }</div><div class="line"><a name="l00463"></a><span class="lineno">  463</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa4f4d7a58287017588fc338965873f14"></a>
+<a id="a5f49decb4b0a74d5361686ab45db8961"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f49decb4b0a74d5361686ab45db8961">&#9670;&nbsp;</a></span>opencl_is_available()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">bool arm_compute::opencl_is_available </td>
+          <td class="memname">bool opencl_is_available </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td></td>
@@ -13658,16 +15605,22 @@
 <p>Check if OpenCL is available. </p>
 <dl class="section return"><dt>Returns</dt><dd>True if OpenCL is available. </dd></dl>
 
-<p>Referenced by <a class="el" href="main_8cpp_source.xhtml#l00087">main()</a>, <a class="el" href="_framework_8cpp_source.xhtml#l00508">Framework::run()</a>, and <a class="el" href="tests_2_utils_8h_source.xhtml#l00819">arm_compute::test::sync_if_necessary()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_open_c_l_8cpp_source.xhtml#l00133">133</a> of file <a class="el" href="_open_c_l_8cpp_source.xhtml">OpenCL.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_open_c_l_8h_source.xhtml#l00092">CLSymbols::clBuildProgram_ptr</a>, <a class="el" href="_open_c_l_8cpp_source.xhtml#l00032">CLSymbols::get()</a>, and <a class="el" href="_open_c_l_8cpp_source.xhtml#l00038">CLSymbols::load_default()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_scheduler_8cpp_source.xhtml#l00049">CLScheduler::get()</a>, <a class="el" href="_c_l_device_backend_8cpp_source.xhtml#l00136">CLDeviceBackend::is_backend_supported()</a>, <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00138">Kernel::Kernel()</a>, <a class="el" href="main_8cpp_source.xhtml#l00087">main()</a>, <a class="el" href="_framework_8cpp_source.xhtml#l00528">Framework::run()</a>, and <a class="el" href="tests_2_utils_8h_source.xhtml#l00819">arm_compute::test::sync_if_necessary()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;{</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    CLSymbols::get().load_default();</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    <span class="keywordflow">return</span> CLSymbols::get().clBuildProgram_ptr != <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a19c7b9bc5f36935ba40314907ffe54ce"></a>
+<a id="ad8ec10f67d9849be264c23c5329d9324"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8ec10f67d9849be264c23c5329d9324">&#9670;&nbsp;</a></span>opengles31_is_available()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">bool arm_compute::opengles31_is_available </td>
+          <td class="memname">bool opengles31_is_available </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td></td>
@@ -13678,11 +15631,15 @@
 <p>Check if the OpenGL ES 3.1 API is available at runtime. </p>
 <dl class="section return"><dt>Returns</dt><dd>true if the OpenGL ES 3.1 API is available. </dd></dl>
 
-<p>Referenced by <a class="el" href="_open_g_l_e_s_8h_source.xhtml#l00148">NDRange::get()</a>, and <a class="el" href="tests_2_utils_8h_source.xhtml#l00836">arm_compute::test::sync_tensor_if_necessary()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00160">160</a> of file <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml">OpenGLES.cpp</a>.</p>
 
+<p class="reference">Referenced by <a class="el" href="_g_c_scheduler_8cpp_source.xhtml#l00062">GCScheduler::get()</a>, <a class="el" href="_open_g_l_e_s_8h_source.xhtml#l00148">NDRange::get()</a>, <a class="el" href="_g_c_device_backend_8cpp_source.xhtml#l00095">GCDeviceBackend::is_backend_supported()</a>, and <a class="el" href="tests_2_utils_8h_source.xhtml#l00836">arm_compute::test::sync_tensor_if_necessary()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;{</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    <span class="keywordflow">return</span> GLESSymbols::get().glDispatchCompute != <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a4e3ff85e1f6c648dfbe264f54c147451"></a>
+<a id="a4e3ff85e1f6c648dfbe264f54c147451"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4e3ff85e1f6c648dfbe264f54c147451">&#9670;&nbsp;</a></span>operator!=()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -13724,11 +15681,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the given dimensions are not equal. </dd></dl>
 
-<p>Definition at line <a class="el" href="_dimensions_8h_source.xhtml#l00246">246</a> of file <a class="el" href="_dimensions_8h_source.xhtml">Dimensions.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_dimensions_8h_source.xhtml#l00246">246</a> of file <a class="el" href="_dimensions_8h_source.xhtml">Dimensions.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;{</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    <span class="keywordflow">return</span> !(lhs == rhs);</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="af3985189d478b45014e7dead9d002e2a"></a>
+<a id="af3985189d478b45014e7dead9d002e2a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af3985189d478b45014e7dead9d002e2a">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[1/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -13762,14 +15721,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="tests_2_type_printer_8h_source.xhtml#l00038">38</a> of file <a class="el" href="tests_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="tests_2_type_printer_8h_source.xhtml#l00038">38</a> of file <a class="el" href="tests_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, and <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc">GRAD_XY</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, and <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc">GRAD_XY</a>.</p>
 <div class="fragment"><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;{</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <span class="keywordflow">switch</span>(dim)</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    {</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <span class="keywordflow">case</span> GradientDimension::GRAD_X:</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GRAD_X&quot;</span>;</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        <span class="keywordflow">case</span> GradientDimension::GRAD_Y:</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GRAD_Y&quot;</span>;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keywordflow">case</span> GradientDimension::GRAD_XY:</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GRAD_XY&quot;</span>;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00052"></a><span class="lineno">   52</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="l00053"></a><span class="lineno">   53</span>&#160;    }</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00056"></a><span class="lineno">   56</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a18d43401e8f84ed020429b41ec4e99f5"></a>
+<a id="a18d43401e8f84ed020429b41ec4e99f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18d43401e8f84ed020429b41ec4e99f5">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[2/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -13803,11 +15764,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00070">70</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00070">70</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;{</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="keywordflow">if</span>(dimensions.num_dimensions() &gt; 0)</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    {</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        os &lt;&lt; dimensions[0];</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> d = 1; d &lt; dimensions.num_dimensions(); ++d)</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        {</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; dimensions[d];</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        }</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    }</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ae8c2a3451bcf739a75aa7438e7a78d45"></a>
+<a id="ae8c2a3451bcf739a75aa7438e7a78d45"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8c2a3451bcf739a75aa7438e7a78d45">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[3/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -13841,14 +15804,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00092">92</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00092">92</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>, <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">MEDIAN</a>, and <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653">MIN</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>, <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">MEDIAN</a>, and <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653">MIN</a>.</p>
 <div class="fragment"><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;{</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    <span class="keywordflow">switch</span>(<span class="keyword">function</span>)</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    {</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        <span class="keywordflow">case</span> NonLinearFilterFunction::MAX:</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;MAX&quot;</span>;</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        <span class="keywordflow">case</span> NonLinearFilterFunction::MEDIAN:</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;MEDIAN&quot;</span>;</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;        <span class="keywordflow">case</span> NonLinearFilterFunction::MIN:</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;MIN&quot;</span>;</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00106"></a><span class="lineno">  106</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="l00107"></a><span class="lineno">  107</span>&#160;    }</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00110"></a><span class="lineno">  110</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="acec416ec5af175a7aad47a518fefb770"></a>
+<a id="acec416ec5af175a7aad47a518fefb770"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acec416ec5af175a7aad47a518fefb770">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[4/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -13882,14 +15847,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00132">132</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00132">132</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">BOX</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">CROSS</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">DISK</a>, and <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">OTHER</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">BOX</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">CROSS</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">DISK</a>, and <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">OTHER</a>.</p>
 <div class="fragment"><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;{</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    <span class="keywordflow">switch</span>(pattern)</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    {</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        <span class="keywordflow">case</span> MatrixPattern::BOX:</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;BOX&quot;</span>;</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        <span class="keywordflow">case</span> MatrixPattern::CROSS:</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;CROSS&quot;</span>;</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        <span class="keywordflow">case</span> MatrixPattern::DISK:</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;DISK&quot;</span>;</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        <span class="keywordflow">case</span> MatrixPattern::OTHER:</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;OTHER&quot;</span>;</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00149"></a><span class="lineno">  149</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="l00150"></a><span class="lineno">  150</span>&#160;    }</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00153"></a><span class="lineno">  153</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a295edc9f8caf95838db2c5e251153514"></a>
+<a id="a295edc9f8caf95838db2c5e251153514"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a295edc9f8caf95838db2c5e251153514">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[5/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -13923,15 +15890,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00175">175</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00175">175</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150">TO_NEAREST_EVEN</a>, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">TO_NEAREST_UP</a>, and <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06">TO_ZERO</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150">TO_NEAREST_EVEN</a>, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">TO_NEAREST_UP</a>, and <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06">TO_ZERO</a>.</p>
 <div class="fragment"><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;{</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">rounding_policy</a>)</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    {</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        <span class="keywordflow">case</span> RoundingPolicy::TO_ZERO:</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TO_ZERO&quot;</span>;</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;        <span class="keywordflow">case</span> RoundingPolicy::TO_NEAREST_UP:</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TO_NEAREST_UP&quot;</span>;</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;        <span class="keywordflow">case</span> RoundingPolicy::TO_NEAREST_EVEN:</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TO_NEAREST_EVEN&quot;</span>;</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00189"></a><span class="lineno">  189</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="l00190"></a><span class="lineno">  190</span>&#160;    }</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</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#l00261">Error.h:261</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a60ad1078faeaf3f59266d69ad937339f"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">arm_compute::test::validation::rounding_policy</a></div><div class="ttdeci">rounding_policy</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">PixelWiseMultiplication.cpp:168</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5972c7131d378f567af9c2961f088a0b"></a>
+<a id="a5972c7131d378f567af9c2961f088a0b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5972c7131d378f567af9c2961f088a0b">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[6/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -13965,14 +15934,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00202">202</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00202">202</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00998">WeightsInfo::are_reshaped()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01014">WeightsInfo::kernel_size()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01006">WeightsInfo::num_kernels()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;{</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.are_reshaped() &lt;&lt; <span class="stringliteral">&quot;;&quot;</span>;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.num_kernels() &lt;&lt; <span class="stringliteral">&quot;;&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.kernel_size().first &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.kernel_size().second;</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7cb842ebfe255726066039853a4322f0"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">arm_compute::test::validation::weights_info</a></div><div class="ttdeci">weights_info</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00572">Winograd.cpp:572</a></div></div>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01442">WeightsInfo::are_reshaped()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01458">WeightsInfo::kernel_size()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01450">WeightsInfo::num_kernels()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;{</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.are_reshaped() &lt;&lt; <span class="stringliteral">&quot;;&quot;</span>;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.num_kernels() &lt;&lt; <span class="stringliteral">&quot;;&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.kernel_size().first &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.kernel_size().second;</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7cb842ebfe255726066039853a4322f0"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">arm_compute::test::validation::weights_info</a></div><div class="ttdeci">weights_info</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00694">Winograd.cpp:694</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a352b805b77fde4f32f44af271580677b"></a>
+<a id="a352b805b77fde4f32f44af271580677b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a352b805b77fde4f32f44af271580677b">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[7/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14006,13 +15977,141 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00217">217</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00217">217</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00822">ROIPoolingLayerInfo::pooled_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00817">ROIPoolingLayerInfo::pooled_width()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00827">ROIPoolingLayerInfo::spatial_scale()</a>.</p>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01062">ROIPoolingLayerInfo::pooled_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01057">ROIPoolingLayerInfo::pooled_width()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01067">ROIPoolingLayerInfo::spatial_scale()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;{</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;    os &lt;&lt; pool_info.pooled_width() &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; pool_info.pooled_height() &lt;&lt; <span class="stringliteral">&quot;~&quot;</span> &lt;&lt; pool_info.spatial_scale();</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a32a5556a927543fe57c0d7b82c20e9b4"></a>
+<a id="af81bb4f87d418311c7ca43a28c74bf03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af81bb4f87d418311c7ca43a28c74bf03">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[8/49]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">::std::ostream &amp;&#160;</td>
+          <td class="paramname"><em>os</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml">BoundingBoxTransformInfo</a> &amp;&#160;</td>
+          <td class="paramname"><em>bbox_info</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Formatted output of the <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml" title="Bounding Box Transform information class. ">BoundingBoxTransformInfo</a> type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">bbox_info</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00243">243</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01247">BoundingBoxTransformInfo::img_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01252">BoundingBoxTransformInfo::img_width()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01257">BoundingBoxTransformInfo::scale()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01237">BoundingBoxTransformInfo::weights()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;{</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;    <span class="keyword">auto</span> weights = bbox_info.weights();</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;(&quot;</span> &lt;&lt; bbox_info.img_width() &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; bbox_info.img_height() &lt;&lt; <span class="stringliteral">&quot;)~&quot;</span> &lt;&lt; bbox_info.scale() &lt;&lt; <span class="stringliteral">&quot;(weights = {&quot;</span> &lt;&lt; weights[0] &lt;&lt; <span class="stringliteral">&quot;, &quot;</span> &lt;&lt; weights[1] &lt;&lt; <span class="stringliteral">&quot;, &quot;</span> &lt;&lt; weights[2] &lt;&lt; <span class="stringliteral">&quot;, &quot;</span> &lt;&lt; weights[3] &lt;&lt;</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;       <span class="stringliteral">&quot;})&quot;</span>;</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a59ea8b6694897a281eb3105f5c99f28f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59ea8b6694897a281eb3105f5c99f28f">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[9/49]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">::std::ostream &amp;&#160;</td>
+          <td class="paramname"><em>os</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml">ComputeAnchorsInfo</a> &amp;&#160;</td>
+          <td class="paramname"><em>anchors_info</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Formatted output of the <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml" title="ComputeAnchors information class. ">ComputeAnchorsInfo</a> type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">anchors_info</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00271">271</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01185">ComputeAnchorsInfo::feat_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01191">ComputeAnchorsInfo::feat_width()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01197">ComputeAnchorsInfo::spatial_scale()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;{</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;(&quot;</span> &lt;&lt; anchors_info.feat_width() &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; anchors_info.feat_height() &lt;&lt; <span class="stringliteral">&quot;)~&quot;</span> &lt;&lt; anchors_info.spatial_scale();</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a1a54a883f8acc0664accdae9bed93494"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a54a883f8acc0664accdae9bed93494">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[10/49]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">::std::ostream &amp;&#160;</td>
+          <td class="paramname"><em>os</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml">GenerateProposalsInfo</a> &amp;&#160;</td>
+          <td class="paramname"><em>proposals_info</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Formatted output of the <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml" title="Generate Proposals Information class. ">GenerateProposalsInfo</a> type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">proposals_info</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00297">297</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01108">GenerateProposalsInfo::im_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01118">GenerateProposalsInfo::im_scale()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01113">GenerateProposalsInfo::im_width()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;{</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;(&quot;</span> &lt;&lt; proposals_info.im_width() &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; proposals_info.im_height() &lt;&lt; <span class="stringliteral">&quot;)~&quot;</span> &lt;&lt; proposals_info.im_scale();</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a32a5556a927543fe57c0d7b82c20e9b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a32a5556a927543fe57c0d7b82c20e9b4">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[11/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14046,13 +16145,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00230">230</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00323">323</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00166">QuantizationInfo::offset</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00165">QuantizationInfo::scale</a>.</p>
-<div class="fragment"><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;{</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;Scale:&quot;</span> &lt;&lt; quantization_info.scale &lt;&lt; <span class="stringliteral">&quot;~&quot;</span></div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;Offset:&quot;</span> &lt;&lt; quantization_info.offset;</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00171">QuantizationInfo::offset</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00170">QuantizationInfo::scale</a>.</p>
+<div class="fragment"><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;{</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;Scale:&quot;</span> &lt;&lt; quantization_info.scale &lt;&lt; <span class="stringliteral">&quot;~&quot;</span></div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;Offset:&quot;</span> &lt;&lt; quantization_info.offset;</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9d79efe2673aeb3f9a9160b6a78de50c"></a>
+<a id="a9d79efe2673aeb3f9a9160b6a78de50c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d79efe2673aeb3f9a9160b6a78de50c">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[12/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14086,14 +16187,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00257">257</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00350">350</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa7d8a220d2262f9d6c658d549ee12cf2c">ActivationLayerInfo::ABS</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaacc516ab03b98f1c908ddf6ed4a7c45e9">ActivationLayerInfo::BOUNDED_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaac7e80a3de04936f4e423e1b564fdca10">ActivationLayerInfo::LEAKY_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaaaac544aacc3615aada24897a215f5046">ActivationLayerInfo::LINEAR</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa72ee60fba0509af07cbbd91398d8db9d">ActivationLayerInfo::LOGISTIC</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaaab1d4411a9e7f5e82002512cddfdc33a">ActivationLayerInfo::LU_BOUNDED_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaad346bb4679d29be241279f15d7795c1c">ActivationLayerInfo::RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaadcc44a50c791a591c74e00ecdda7c58d">ActivationLayerInfo::SOFT_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa36875f2500a09ee35d0bb7eb8c0b91b0">ActivationLayerInfo::SQRT</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa12dec4e1f7ec620651b2b95c440ffac0">ActivationLayerInfo::SQUARE</a>, and <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa143c8c6f51b9bb893ce71e38702e3cc1">ActivationLayerInfo::TANH</a>.</p>
-<div class="fragment"><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;{</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    <span class="keywordflow">switch</span>(act_function)</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    {</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::ABS:</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;ABS&quot;</span>;</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LINEAR:</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;LINEAR&quot;</span>;</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LOGISTIC:</div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;LOGISTIC&quot;</span>;</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::RELU:</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;RELU&quot;</span>;</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::BOUNDED_RELU:</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;BOUNDED_RELU&quot;</span>;</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LEAKY_RELU:</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;LEAKY_RELU&quot;</span>;</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::SOFT_RELU:</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SOFT_RELU&quot;</span>;</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::SQRT:</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SQRT&quot;</span>;</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LU_BOUNDED_RELU:</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;LU_BOUNDED_RELU&quot;</span>;</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::SQUARE:</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SQUARE&quot;</span>;</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::TANH:</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TANH&quot;</span>;</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00295"></a><span class="lineno">  295</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="l00296"></a><span class="lineno">  296</span>&#160;    }</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00299"></a><span class="lineno">  299</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa7d8a220d2262f9d6c658d549ee12cf2c">ActivationLayerInfo::ABS</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaacc516ab03b98f1c908ddf6ed4a7c45e9">ActivationLayerInfo::BOUNDED_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaac7e80a3de04936f4e423e1b564fdca10">ActivationLayerInfo::LEAKY_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaaaac544aacc3615aada24897a215f5046">ActivationLayerInfo::LINEAR</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa72ee60fba0509af07cbbd91398d8db9d">ActivationLayerInfo::LOGISTIC</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaaab1d4411a9e7f5e82002512cddfdc33a">ActivationLayerInfo::LU_BOUNDED_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaad346bb4679d29be241279f15d7795c1c">ActivationLayerInfo::RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaadcc44a50c791a591c74e00ecdda7c58d">ActivationLayerInfo::SOFT_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa36875f2500a09ee35d0bb7eb8c0b91b0">ActivationLayerInfo::SQRT</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa12dec4e1f7ec620651b2b95c440ffac0">ActivationLayerInfo::SQUARE</a>, and <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa143c8c6f51b9bb893ce71e38702e3cc1">ActivationLayerInfo::TANH</a>.</p>
+<div class="fragment"><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;{</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    <span class="keywordflow">switch</span>(act_function)</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;    {</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::ABS:</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;ABS&quot;</span>;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LINEAR:</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;LINEAR&quot;</span>;</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LOGISTIC:</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;LOGISTIC&quot;</span>;</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::RELU:</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;RELU&quot;</span>;</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::BOUNDED_RELU:</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;BOUNDED_RELU&quot;</span>;</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LEAKY_RELU:</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;LEAKY_RELU&quot;</span>;</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::SOFT_RELU:</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SOFT_RELU&quot;</span>;</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::SQRT:</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SQRT&quot;</span>;</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LU_BOUNDED_RELU:</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;LU_BOUNDED_RELU&quot;</span>;</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::SQUARE:</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SQUARE&quot;</span>;</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;        <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::TANH:</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TANH&quot;</span>;</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00388"></a><span class="lineno">  388</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="l00389"></a><span class="lineno">  389</span>&#160;    }</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00392"></a><span class="lineno">  392</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a2ab7370aab6e5698990c50c8871fa6fb"></a>
+<a id="a2ab7370aab6e5698990c50c8871fa6fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ab7370aab6e5698990c50c8871fa6fb">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[13/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14127,14 +16230,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00337">337</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00430">430</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">CROSS_MAP</a>, <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">IN_MAP_1D</a>, and <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">IN_MAP_2D</a>.</p>
-<div class="fragment"><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;{</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;    <span class="keywordflow">switch</span>(norm_type)</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;    {</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;        <span class="keywordflow">case</span> NormType::CROSS_MAP:</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;CROSS_MAP&quot;</span>;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;        <span class="keywordflow">case</span> NormType::IN_MAP_1D:</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;IN_MAP_1D&quot;</span>;</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;        <span class="keywordflow">case</span> NormType::IN_MAP_2D:</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;IN_MAP_2D&quot;</span>;</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00351"></a><span class="lineno">  351</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="l00352"></a><span class="lineno">  352</span>&#160;    }</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">CROSS_MAP</a>, <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">IN_MAP_1D</a>, and <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">IN_MAP_2D</a>.</p>
+<div class="fragment"><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;{</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;    <span class="keywordflow">switch</span>(norm_type)</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;    {</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;        <span class="keywordflow">case</span> NormType::CROSS_MAP:</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;CROSS_MAP&quot;</span>;</div><div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;        <span class="keywordflow">case</span> NormType::IN_MAP_1D:</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;IN_MAP_1D&quot;</span>;</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;        <span class="keywordflow">case</span> NormType::IN_MAP_2D:</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;IN_MAP_2D&quot;</span>;</div><div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00444"></a><span class="lineno">  444</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="l00445"></a><span class="lineno">  445</span>&#160;    }</div><div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00448"></a><span class="lineno">  448</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a6e422c610c91f611590173cd595c94c5"></a>
+<a id="a6e422c610c91f611590173cd595c94c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e422c610c91f611590173cd595c94c5">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[14/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14168,14 +16273,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00377">377</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00470">470</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00922">NormalizationLayerInfo::norm_size()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00917">NormalizationLayerInfo::type()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;{</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.type() &lt;&lt; <span class="stringliteral">&quot;:NormSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.norm_size();</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01366">NormalizationLayerInfo::norm_size()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01361">NormalizationLayerInfo::type()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;{</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;    os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.type() &lt;&lt; <span class="stringliteral">&quot;:NormSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.norm_size();</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a336cf1e870f467e44c184587a13feeec"></a>
+<a id="a336cf1e870f467e44c184587a13feeec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a336cf1e870f467e44c184587a13feeec">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[15/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14209,14 +16316,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00390">390</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00483">483</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">AVG</a>, <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">L2</a>, and <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>.</p>
-<div class="fragment"><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;    <span class="keywordflow">switch</span>(pool_type)</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;    {</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;        <span class="keywordflow">case</span> PoolingType::AVG:</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;AVG&quot;</span>;</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;        <span class="keywordflow">case</span> PoolingType::MAX:</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;MAX&quot;</span>;</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;        <span class="keywordflow">case</span> PoolingType::L2:</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L2&quot;</span>;</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00404"></a><span class="lineno">  404</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="l00405"></a><span class="lineno">  405</span>&#160;    }</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00408"></a><span class="lineno">  408</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">AVG</a>, <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">L2</a>, and <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>.</p>
+<div class="fragment"><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;{</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;    <span class="keywordflow">switch</span>(pool_type)</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;    {</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;        <span class="keywordflow">case</span> PoolingType::AVG:</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;AVG&quot;</span>;</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;        <span class="keywordflow">case</span> PoolingType::MAX:</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;MAX&quot;</span>;</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;        <span class="keywordflow">case</span> PoolingType::L2:</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L2&quot;</span>;</div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00497"></a><span class="lineno">  497</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="l00498"></a><span class="lineno">  498</span>&#160;    }</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00501"></a><span class="lineno">  501</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ae72a61a2ca5c962ab1d37065e5598060"></a>
+<a id="ae72a61a2ca5c962ab1d37065e5598060"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae72a61a2ca5c962ab1d37065e5598060">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[16/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14250,14 +16359,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00417">417</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00510">510</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00769">PoolingLayerInfo::pool_type()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;{</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;    os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.pool_type();</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01008">PoolingLayerInfo::pool_type()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;{</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;    os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.pool_type();</div><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> os;</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1698cb24508a2bc45962bc887f18a8d0"></a>
+<a id="a1698cb24508a2bc45962bc887f18a8d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1698cb24508a2bc45962bc887f18a8d0">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[17/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14281,7 +16392,8 @@
       </table>
 </div><div class="memdoc">
 
-<p>Formatted output of the DataLayout type. </p>
+<p>[Print DataLayout type] </p>
+<p>Formatted output of the DataLayout type.</p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
@@ -14291,15 +16403,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00444">444</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00538">538</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
-<div class="fragment"><div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;{</div><div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a>)</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;    {</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;        <span class="keywordflow">case</span> DataLayout::UNKNOWN:</div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;        <span class="keywordflow">case</span> DataLayout::NHWC:</div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;NHWC&quot;</span>;</div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;        <span class="keywordflow">case</span> DataLayout::NCHW:</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;NCHW&quot;</span>;</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00458"></a><span class="lineno">  458</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="l00459"></a><span class="lineno">  459</span>&#160;    }</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00462"></a><span class="lineno">  462</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#l00261">Error.h:261</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00227">Winograd.cpp:227</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+<div class="fragment"><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;{</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a>)</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;    {</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;        <span class="keywordflow">case</span> DataLayout::UNKNOWN:</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;        <span class="keywordflow">case</span> DataLayout::NHWC:</div><div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;NHWC&quot;</span>;</div><div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;        <span class="keywordflow">case</span> DataLayout::NCHW:</div><div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;NCHW&quot;</span>;</div><div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00552"></a><span class="lineno">  552</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="l00553"></a><span class="lineno">  553</span>&#160;    }</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00556"></a><span class="lineno">  556</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00251">Winograd.cpp:251</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="adec19acb64bfca26fa53ef76f03b79ef"></a>
+<a id="adec19acb64bfca26fa53ef76f03b79ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adec19acb64bfca26fa53ef76f03b79ef">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[18/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14323,7 +16437,8 @@
       </table>
 </div><div class="memdoc">
 
-<p>Formatted output of the DataLayoutDimension type. </p>
+<p>[Print DataLayout type] </p>
+<p>Formatted output of the DataLayoutDimension type.</p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
@@ -14333,14 +16448,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00484">484</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00579">579</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
-<div class="fragment"><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;{</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;    <span class="keywordflow">switch</span>(data_layout_dim)</div><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">case</span> DataLayoutDimension::WIDTH:</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;WIDTH&quot;</span>;</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;        <span class="keywordflow">case</span> DataLayoutDimension::HEIGHT:</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;HEIGHT&quot;</span>;</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;        <span class="keywordflow">case</span> DataLayoutDimension::CHANNEL:</div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;CHANNEL&quot;</span>;</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;        <span class="keywordflow">case</span> DataLayoutDimension::BATCHES:</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;BATCHES&quot;</span>;</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00501"></a><span class="lineno">  501</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="l00502"></a><span class="lineno">  502</span>&#160;    }</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00504"></a><span class="lineno">  504</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
+<div class="fragment"><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;{</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;    <span class="keywordflow">switch</span>(data_layout_dim)</div><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">case</span> DataLayoutDimension::WIDTH:</div><div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;WIDTH&quot;</span>;</div><div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;        <span class="keywordflow">case</span> DataLayoutDimension::HEIGHT:</div><div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;HEIGHT&quot;</span>;</div><div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;        <span class="keywordflow">case</span> DataLayoutDimension::CHANNEL:</div><div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;CHANNEL&quot;</span>;</div><div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;        <span class="keywordflow">case</span> DataLayoutDimension::BATCHES:</div><div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;BATCHES&quot;</span>;</div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00596"></a><span class="lineno">  596</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="l00597"></a><span class="lineno">  597</span>&#160;    }</div><div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00599"></a><span class="lineno">  599</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a685af15532d70b8682bcc52f06f034f9"></a>
+<a id="a685af15532d70b8682bcc52f06f034f9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a685af15532d70b8682bcc52f06f034f9">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[19/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14374,15 +16491,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00513">513</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00608">608</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
-<div class="fragment"><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;{</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>)</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;    {</div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;        <span class="keywordflow">case</span> DataType::UNKNOWN:</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U8&quot;</span>;</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;QASYMM8&quot;</span>;</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S8&quot;</span>;</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U16&quot;</span>;</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S16&quot;</span>;</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U32&quot;</span>;</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S32&quot;</span>;</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;        <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U64&quot;</span>;</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;        <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S64&quot;</span>;</div><div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;F16&quot;</span>;</div><div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;F32&quot;</span>;</div><div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;        <span class="keywordflow">case</span> DataType::F64:</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;F64&quot;</span>;</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;        <span class="keywordflow">case</span> DataType::SIZET:</div><div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SIZET&quot;</span>;</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="keywordflow">default</span>:</div><div class="line"><a name="l00560"></a><span class="lineno">  560</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="l00561"></a><span class="lineno">  561</span>&#160;    }</div><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;</div><div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00564"></a><span class="lineno">  564</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#l00261">Error.h:261</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00088">GEMM.cpp:88</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+<div class="fragment"><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;{</div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>)</div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;    {</div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;        <span class="keywordflow">case</span> DataType::UNKNOWN:</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U8&quot;</span>;</div><div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;QASYMM8&quot;</span>;</div><div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S8&quot;</span>;</div><div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U16&quot;</span>;</div><div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S16&quot;</span>;</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U32&quot;</span>;</div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S32&quot;</span>;</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;        <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U64&quot;</span>;</div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;        <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S64&quot;</span>;</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;F16&quot;</span>;</div><div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;F32&quot;</span>;</div><div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;        <span class="keywordflow">case</span> DataType::F64:</div><div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;F64&quot;</span>;</div><div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;        <span class="keywordflow">case</span> DataType::SIZET:</div><div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SIZET&quot;</span>;</div><div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00655"></a><span class="lineno">  655</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="l00656"></a><span class="lineno">  656</span>&#160;    }</div><div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;</div><div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00659"></a><span class="lineno">  659</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00174">ArithmeticSubtraction.cpp:174</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a3b22e54b0ac0204c3b89aebcd695fa03"></a>
+<a id="a3b22e54b0ac0204c3b89aebcd695fa03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b22e54b0ac0204c3b89aebcd695fa03">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[20/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14416,14 +16535,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00586">586</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00681">681</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
-<div class="fragment"><div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;{</div><div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;    {</div><div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;        <span class="keywordflow">case</span> Format::UNKNOWN:</div><div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U8&quot;</span>;</div><div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S16&quot;</span>;</div><div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U16&quot;</span>;</div><div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S32&quot;</span>;</div><div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U32&quot;</span>;</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;F16&quot;</span>;</div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;F32&quot;</span>;</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;        <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UV88&quot;</span>;</div><div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;RGB888&quot;</span>;</div><div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;RGBA8888&quot;</span>;</div><div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;YUV444&quot;</span>;</div><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;YUYV422&quot;</span>;</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;NV12&quot;</span>;</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;NV21&quot;</span>;</div><div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;IYUV&quot;</span>;</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UYVY422&quot;</span>;</div><div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00642"></a><span class="lineno">  642</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="l00643"></a><span class="lineno">  643</span>&#160;    }</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="keywordflow">return</span> os;</div><div class="line"><a name="l00646"></a><span class="lineno">  646</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
+<div class="fragment"><div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;{</div><div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;    {</div><div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;        <span class="keywordflow">case</span> Format::UNKNOWN:</div><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U8&quot;</span>;</div><div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S16&quot;</span>;</div><div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U16&quot;</span>;</div><div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;S32&quot;</span>;</div><div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U32&quot;</span>;</div><div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;F16&quot;</span>;</div><div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;F32&quot;</span>;</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;        <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UV88&quot;</span>;</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;RGB888&quot;</span>;</div><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;RGBA8888&quot;</span>;</div><div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;YUV444&quot;</span>;</div><div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;YUYV422&quot;</span>;</div><div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;NV12&quot;</span>;</div><div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;NV21&quot;</span>;</div><div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;IYUV&quot;</span>;</div><div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UYVY422&quot;</span>;</div><div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00737"></a><span class="lineno">  737</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="l00738"></a><span class="lineno">  738</span>&#160;    }</div><div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;</div><div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00741"></a><span class="lineno">  741</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa66be15c012986ebd4c1934b97e08a36"></a>
+<a id="aa66be15c012986ebd4c1934b97e08a36"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa66be15c012986ebd4c1934b97e08a36">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[21/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14457,14 +16578,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00668">668</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00763">763</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53">C0</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">C1</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4">C2</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c">C3</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>.</p>
-<div class="fragment"><div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;{</div><div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;    <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;    {</div><div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;        <span class="keywordflow">case</span> Channel::UNKNOWN:</div><div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;        <span class="keywordflow">case</span> Channel::C0:</div><div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;C0&quot;</span>;</div><div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;        <span class="keywordflow">case</span> Channel::C1:</div><div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;C1&quot;</span>;</div><div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;        <span class="keywordflow">case</span> Channel::C2:</div><div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;C2&quot;</span>;</div><div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;        <span class="keywordflow">case</span> Channel::C3:</div><div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;C3&quot;</span>;</div><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;        <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;R&quot;</span>;</div><div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;        <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G&quot;</span>;</div><div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;        <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;B&quot;</span>;</div><div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;        <span class="keywordflow">case</span> Channel::A:</div><div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;A&quot;</span>;</div><div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;        <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;Y&quot;</span>;</div><div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;        <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U&quot;</span>;</div><div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;        <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;V&quot;</span>;</div><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00709"></a><span class="lineno">  709</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="l00710"></a><span class="lineno">  710</span>&#160;    }</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;</div><div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00713"></a><span class="lineno">  713</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53">C0</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">C1</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4">C2</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c">C3</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>.</p>
+<div class="fragment"><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;{</div><div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;    <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;    {</div><div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;        <span class="keywordflow">case</span> Channel::UNKNOWN:</div><div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;        <span class="keywordflow">case</span> Channel::C0:</div><div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;C0&quot;</span>;</div><div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;        <span class="keywordflow">case</span> Channel::C1:</div><div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;C1&quot;</span>;</div><div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;        <span class="keywordflow">case</span> Channel::C2:</div><div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;C2&quot;</span>;</div><div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;        <span class="keywordflow">case</span> Channel::C3:</div><div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;C3&quot;</span>;</div><div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;        <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;R&quot;</span>;</div><div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;        <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G&quot;</span>;</div><div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;        <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;B&quot;</span>;</div><div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;        <span class="keywordflow">case</span> Channel::A:</div><div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;A&quot;</span>;</div><div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;        <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;Y&quot;</span>;</div><div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;        <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;U&quot;</span>;</div><div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;        <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;V&quot;</span>;</div><div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00804"></a><span class="lineno">  804</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="l00805"></a><span class="lineno">  805</span>&#160;    }</div><div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;</div><div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00808"></a><span class="lineno">  808</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a7929032d41d5f23cd1778a70508d0219"></a>
+<a id="a7929032d41d5f23cd1778a70508d0219"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7929032d41d5f23cd1778a70508d0219">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[22/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14498,14 +16621,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00735">735</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00830">830</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">CONSTANT</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">REPLICATE</a>, and <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>.</p>
-<div class="fragment"><div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;{</div><div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;    <span class="keywordflow">switch</span>(mode)</div><div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;    {</div><div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;        <span class="keywordflow">case</span> BorderMode::UNDEFINED:</div><div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNDEFINED&quot;</span>;</div><div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;        <span class="keywordflow">case</span> BorderMode::CONSTANT:</div><div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;CONSTANT&quot;</span>;</div><div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;        <span class="keywordflow">case</span> BorderMode::REPLICATE:</div><div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;REPLICATE&quot;</span>;</div><div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00749"></a><span class="lineno">  749</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="l00750"></a><span class="lineno">  750</span>&#160;    }</div><div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;</div><div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00753"></a><span class="lineno">  753</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">CONSTANT</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">REPLICATE</a>, and <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>.</p>
+<div class="fragment"><div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;{</div><div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;    <span class="keywordflow">switch</span>(mode)</div><div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;    {</div><div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;        <span class="keywordflow">case</span> BorderMode::UNDEFINED:</div><div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNDEFINED&quot;</span>;</div><div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;        <span class="keywordflow">case</span> BorderMode::CONSTANT:</div><div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;CONSTANT&quot;</span>;</div><div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;        <span class="keywordflow">case</span> BorderMode::REPLICATE:</div><div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;REPLICATE&quot;</span>;</div><div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00844"></a><span class="lineno">  844</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="l00845"></a><span class="lineno">  845</span>&#160;    }</div><div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;</div><div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00848"></a><span class="lineno">  848</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="af32c4c5cdd0efde09774eb803bc8a0bd"></a>
+<a id="af32c4c5cdd0efde09774eb803bc8a0bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af32c4c5cdd0efde09774eb803bc8a0bd">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[23/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14539,13 +16664,56 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00762">762</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00857">857</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00371">BorderSize::bottom</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00372">BorderSize::left</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00370">BorderSize::right</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00369">BorderSize::top</a>.</p>
-<div class="fragment"><div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;{</div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;    os &lt;&lt; border.top &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;       &lt;&lt; border.right &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;       &lt;&lt; border.bottom &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;       &lt;&lt; border.left;</div><div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;</div><div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00376">BorderSize::bottom</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00377">BorderSize::left</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00375">BorderSize::right</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00374">BorderSize::top</a>.</p>
+<div class="fragment"><div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;{</div><div class="line"><a name="l00859"></a><span class="lineno">  859</span>&#160;    os &lt;&lt; border.top &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00860"></a><span class="lineno">  860</span>&#160;       &lt;&lt; border.right &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00861"></a><span class="lineno">  861</span>&#160;       &lt;&lt; border.bottom &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00862"></a><span class="lineno">  862</span>&#160;       &lt;&lt; border.left;</div><div class="line"><a name="l00863"></a><span class="lineno">  863</span>&#160;</div><div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00865"></a><span class="lineno">  865</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a509047aefc691398f1bb60b1f967a98b"></a>
+<a id="af15a06b73e1fde15f0809ce07bf1ab7d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af15a06b73e1fde15f0809ce07bf1ab7d">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[24/49]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">::std::ostream &amp;&#160;</td>
+          <td class="paramname"><em>os</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> &amp;&#160;</td>
+          <td class="paramname"><em>padding</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Formatted output of the PaddingList type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">padding</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00874">874</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00875"></a><span class="lineno">  875</span>&#160;{</div><div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{&quot;</span>;</div><div class="line"><a name="l00877"></a><span class="lineno">  877</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">auto</span> <span class="keyword">const</span> &amp;p : <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a735a025fce26c1ef147b54426df18181">padding</a>)</div><div class="line"><a name="l00878"></a><span class="lineno">  878</span>&#160;    {</div><div class="line"><a name="l00879"></a><span class="lineno">  879</span>&#160;        os &lt;&lt; <span class="stringliteral">&quot;{&quot;</span> &lt;&lt; p.first &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; p.second &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00880"></a><span class="lineno">  880</span>&#160;    }</div><div class="line"><a name="l00881"></a><span class="lineno">  881</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00883"></a><span class="lineno">  883</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a735a025fce26c1ef147b54426df18181"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a735a025fce26c1ef147b54426df18181">arm_compute::test::validation::padding</a></div><div class="ttdeci">const PaddingSize padding</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00111">ArithmeticDivision.cpp:111</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a509047aefc691398f1bb60b1f967a98b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a509047aefc691398f1bb60b1f967a98b">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[25/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14579,14 +16747,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00779">779</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00892">892</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>, and <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>.</p>
-<div class="fragment"><div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;{</div><div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;    <span class="keywordflow">switch</span>(policy)</div><div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;    {</div><div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;        <span class="keywordflow">case</span> InterpolationPolicy::NEAREST_NEIGHBOR:</div><div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;NEAREST_NEIGHBOR&quot;</span>;</div><div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;        <span class="keywordflow">case</span> InterpolationPolicy::BILINEAR:</div><div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;BILINEAR&quot;</span>;</div><div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;        <span class="keywordflow">case</span> InterpolationPolicy::AREA:</div><div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;AREA&quot;</span>;</div><div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00793"></a><span class="lineno">  793</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="l00794"></a><span class="lineno">  794</span>&#160;    }</div><div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;</div><div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00797"></a><span class="lineno">  797</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>, and <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>.</p>
+<div class="fragment"><div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;{</div><div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>)</div><div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;    {</div><div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;        <span class="keywordflow">case</span> InterpolationPolicy::NEAREST_NEIGHBOR:</div><div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;NEAREST_NEIGHBOR&quot;</span>;</div><div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00899"></a><span class="lineno">  899</span>&#160;        <span class="keywordflow">case</span> InterpolationPolicy::BILINEAR:</div><div class="line"><a name="l00900"></a><span class="lineno">  900</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;BILINEAR&quot;</span>;</div><div class="line"><a name="l00901"></a><span class="lineno">  901</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;        <span class="keywordflow">case</span> InterpolationPolicy::AREA:</div><div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;AREA&quot;</span>;</div><div class="line"><a name="l00904"></a><span class="lineno">  904</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00905"></a><span class="lineno">  905</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00906"></a><span class="lineno">  906</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="l00907"></a><span class="lineno">  907</span>&#160;    }</div><div class="line"><a name="l00908"></a><span class="lineno">  908</span>&#160;</div><div class="line"><a name="l00909"></a><span class="lineno">  909</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00910"></a><span class="lineno">  910</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">ArithmeticSubtraction.cpp:175</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aab8eb6dc1ba89bb8a69f1c3845988a2b"></a>
+<a id="aab8eb6dc1ba89bb8a69f1c3845988a2b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab8eb6dc1ba89bb8a69f1c3845988a2b">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[26/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14620,14 +16791,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00806">806</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00919">919</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">CENTER</a>, and <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1">TOP_LEFT</a>.</p>
-<div class="fragment"><div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;{</div><div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;    <span class="keywordflow">switch</span>(policy)</div><div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;    {</div><div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;        <span class="keywordflow">case</span> SamplingPolicy::CENTER:</div><div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;CENTER&quot;</span>;</div><div class="line"><a name="l00812"></a><span class="lineno">  812</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;        <span class="keywordflow">case</span> SamplingPolicy::TOP_LEFT:</div><div class="line"><a name="l00814"></a><span class="lineno">  814</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TOP_LEFT&quot;</span>;</div><div class="line"><a name="l00815"></a><span class="lineno">  815</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00817"></a><span class="lineno">  817</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="l00818"></a><span class="lineno">  818</span>&#160;    }</div><div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;</div><div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00821"></a><span class="lineno">  821</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">CENTER</a>, and <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1">TOP_LEFT</a>.</p>
+<div class="fragment"><div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;{</div><div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>)</div><div class="line"><a name="l00922"></a><span class="lineno">  922</span>&#160;    {</div><div class="line"><a name="l00923"></a><span class="lineno">  923</span>&#160;        <span class="keywordflow">case</span> SamplingPolicy::CENTER:</div><div class="line"><a name="l00924"></a><span class="lineno">  924</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;CENTER&quot;</span>;</div><div class="line"><a name="l00925"></a><span class="lineno">  925</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00926"></a><span class="lineno">  926</span>&#160;        <span class="keywordflow">case</span> SamplingPolicy::TOP_LEFT:</div><div class="line"><a name="l00927"></a><span class="lineno">  927</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TOP_LEFT&quot;</span>;</div><div class="line"><a name="l00928"></a><span class="lineno">  928</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00930"></a><span class="lineno">  930</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="l00931"></a><span class="lineno">  931</span>&#160;    }</div><div class="line"><a name="l00932"></a><span class="lineno">  932</span>&#160;</div><div class="line"><a name="l00933"></a><span class="lineno">  933</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00934"></a><span class="lineno">  934</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">ArithmeticSubtraction.cpp:175</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab398837465010958bfccff032ad1ee51"></a>
+<a id="ab398837465010958bfccff032ad1ee51"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab398837465010958bfccff032ad1ee51">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[27/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14661,14 +16835,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00830">830</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00943">943</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_tensor_info_8h_source.xhtml#l00256">TensorInfo::data_type()</a>, <a class="el" href="_tensor_info_8h_source.xhtml#l00248">TensorInfo::num_channels()</a>, and <a class="el" href="_tensor_info_8h_source.xhtml#l00252">TensorInfo::tensor_shape()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;{</div><div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{Shape=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.tensor_shape() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;Type=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.data_type() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;Channels=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.num_channels() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="_tensor_info_8h_source.xhtml#l00256">TensorInfo::data_type()</a>, <a class="el" href="_tensor_info_8h_source.xhtml#l00248">TensorInfo::num_channels()</a>, and <a class="el" href="_tensor_info_8h_source.xhtml#l00252">TensorInfo::tensor_shape()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00944"></a><span class="lineno">  944</span>&#160;{</div><div class="line"><a name="l00945"></a><span class="lineno">  945</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{Shape=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.tensor_shape() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00946"></a><span class="lineno">  946</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;Type=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.data_type() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00947"></a><span class="lineno">  947</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;Channels=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.num_channels() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00949"></a><span class="lineno">  949</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a0fc75dce8064a37effa5e71344b6a5d2"></a>
+<a id="a0fc75dce8064a37effa5e71344b6a5d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0fc75dce8064a37effa5e71344b6a5d2">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[28/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14702,14 +16878,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00910">910</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01024">1024</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01084">GEMMReshapeInfo::k()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01068">GEMMReshapeInfo::m()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01100">GEMMReshapeInfo::mult_interleave4x4_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01092">GEMMReshapeInfo::mult_transpose1xW_width()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01076">GEMMReshapeInfo::n()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00911"></a><span class="lineno">  911</span>&#160;{</div><div class="line"><a name="l00912"></a><span class="lineno">  912</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{m=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.m() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l00913"></a><span class="lineno">  913</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;n=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.n() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l00914"></a><span class="lineno">  914</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;k=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.k() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l00915"></a><span class="lineno">  915</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;mult_transpose1xW_width=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.mult_transpose1xW_width() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l00916"></a><span class="lineno">  916</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;mult_interleave4x4_height=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.mult_interleave4x4_height();</div><div class="line"><a name="l00917"></a><span class="lineno">  917</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;</div><div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01529">GEMMReshapeInfo::k()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01513">GEMMReshapeInfo::m()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01545">GEMMReshapeInfo::mult_interleave4x4_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01537">GEMMReshapeInfo::mult_transpose1xW_width()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01521">GEMMReshapeInfo::n()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;{</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{m=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.m() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;n=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.n() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;k=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.k() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;mult_transpose1xW_width=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.mult_transpose1xW_width() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;mult_interleave4x4_height=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.mult_interleave4x4_height();</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5fdae5de2d2cf2e7957f0299d17ce5ec"></a>
+<a id="a5fdae5de2d2cf2e7957f0299d17ce5ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5fdae5de2d2cf2e7957f0299d17ce5ec">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[29/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14743,14 +16921,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00929">929</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01043">1043</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01167">GEMMInfo::is_a_reshaped()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01175">GEMMInfo::is_b_reshaped()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01185">GEMMInfo::reshape_b_only_on_first_run()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160;{</div><div class="line"><a name="l00931"></a><span class="lineno">  931</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{is_a_reshaped=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.is_a_reshaped() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l00932"></a><span class="lineno">  932</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;is_b_reshaped=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.is_b_reshaped() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l00933"></a><span class="lineno">  933</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;reshape_b_only_on_first_run=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.reshape_b_only_on_first_run() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l00934"></a><span class="lineno">  934</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00935"></a><span class="lineno">  935</span>&#160;</div><div class="line"><a name="l00936"></a><span class="lineno">  936</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00937"></a><span class="lineno">  937</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01637">GEMMInfo::is_a_reshaped()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01645">GEMMInfo::is_b_reshaped()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01655">GEMMInfo::reshape_b_only_on_first_run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;{</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{is_a_reshaped=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.is_a_reshaped() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;is_b_reshaped=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.is_b_reshaped() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;reshape_b_only_on_first_run=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.reshape_b_only_on_first_run() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a6ed8dc0f587448d14a1a33cbd5fc4f70"></a>
+<a id="a6ed8dc0f587448d14a1a33cbd5fc4f70"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ed8dc0f587448d14a1a33cbd5fc4f70">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[30/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14784,13 +16964,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00946">946</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01060">1060</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, and <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00947"></a><span class="lineno">  947</span>&#160;{</div><div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{start=&quot;</span> &lt;&lt; dim.start() &lt;&lt; <span class="stringliteral">&quot;, end=&quot;</span> &lt;&lt; dim.end() &lt;&lt; <span class="stringliteral">&quot;, step=&quot;</span> &lt;&lt; dim.step() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00949"></a><span class="lineno">  949</span>&#160;</div><div class="line"><a name="l00950"></a><span class="lineno">  950</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00951"></a><span class="lineno">  951</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, and <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;{</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{start=&quot;</span> &lt;&lt; dim.start() &lt;&lt; <span class="stringliteral">&quot;, end=&quot;</span> &lt;&lt; dim.end() &lt;&lt; <span class="stringliteral">&quot;, step=&quot;</span> &lt;&lt; dim.step() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afc6e49991e36423027a467eab1e405b2"></a>
+<a id="afc6e49991e36423027a467eab1e405b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc6e49991e36423027a467eab1e405b2">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[31/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14824,13 +17006,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00959">959</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01073">1073</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>.</p>
-<div class="fragment"><div class="line"><a name="l00960"></a><span class="lineno">  960</span>&#160;{</div><div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{&quot;</span>;</div><div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; Coordinates::num_max_dimensions; i++)</div><div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;    {</div><div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;        <span class="keywordflow">if</span>(i &gt; 0)</div><div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;        {</div><div class="line"><a name="l00966"></a><span class="lineno">  966</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;, &quot;</span>;</div><div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;        }</div><div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;        os &lt;&lt; win[i];</div><div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;    }</div><div class="line"><a name="l00970"></a><span class="lineno">  970</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;</div><div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>.</p>
+<div class="fragment"><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160;{</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{&quot;</span>;</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; Coordinates::num_max_dimensions; i++)</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;    {</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;        <span class="keywordflow">if</span>(i &gt; 0)</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;        {</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;, &quot;</span>;</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;        }</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;        os &lt;&lt; win[i];</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;    }</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;</div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a17881750c427aedd95deba46a4366ace"></a>
+<a id="a17881750c427aedd95deba46a4366ace"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a17881750c427aedd95deba46a4366ace">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[32/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14864,13 +17048,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01046">1046</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01160">1160</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00453">Rectangle::height</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00452">Rectangle::width</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00450">Rectangle::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00451">Rectangle::y</a>.</p>
-<div class="fragment"><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;{</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;    os &lt;&lt; rect.width &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; rect.height;</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;+&quot;</span> &lt;&lt; rect.x &lt;&lt; <span class="stringliteral">&quot;+&quot;</span> &lt;&lt; rect.y;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00458">Rectangle::height</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00457">Rectangle::width</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00455">Rectangle::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00456">Rectangle::y</a>.</p>
+<div class="fragment"><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160;{</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160;    os &lt;&lt; rect.width &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; rect.height;</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;+&quot;</span> &lt;&lt; rect.x &lt;&lt; <span class="stringliteral">&quot;+&quot;</span> &lt;&lt; rect.y;</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160;</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a8af36ae3a3613112c3a95e57f606359a"></a>
+<a id="a8af36ae3a3613112c3a95e57f606359a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8af36ae3a3613112c3a95e57f606359a">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[33/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14904,13 +17090,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01061">1061</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01175">1175</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00658">PadStrideInfo::pad_bottom()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00643">PadStrideInfo::pad_left()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00648">PadStrideInfo::pad_right()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00653">PadStrideInfo::pad_top()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00617">PadStrideInfo::stride()</a>.</p>
-<div class="fragment"><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;{</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;    os &lt;&lt; pad_stride_info.stride().first &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; pad_stride_info.stride().second;</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;;&quot;</span>;</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160;    os &lt;&lt; pad_stride_info.pad_left() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; pad_stride_info.pad_right() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;       &lt;&lt; pad_stride_info.pad_top() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; pad_stride_info.pad_bottom();</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00774">PadStrideInfo::pad_bottom()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00759">PadStrideInfo::pad_left()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00764">PadStrideInfo::pad_right()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00769">PadStrideInfo::pad_top()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00733">PadStrideInfo::stride()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;{</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;    os &lt;&lt; pad_stride_info.stride().first &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; pad_stride_info.stride().second;</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;;&quot;</span>;</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;    os &lt;&lt; pad_stride_info.pad_left() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; pad_stride_info.pad_right() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160;       &lt;&lt; pad_stride_info.pad_top() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; pad_stride_info.pad_bottom();</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a4287c6842a60e5f6bf309e55f8813527"></a>
+<a id="a4287c6842a60e5f6bf309e55f8813527"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4287c6842a60e5f6bf309e55f8813527">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[34/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14944,14 +17132,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01143">1143</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01270">1270</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86">SATURATE</a>, and <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0">WRAP</a>.</p>
-<div class="fragment"><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;{</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160;    <span class="keywordflow">switch</span>(policy)</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160;    {</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;        <span class="keywordflow">case</span> ConvertPolicy::WRAP:</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;WRAP&quot;</span>;</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160;        <span class="keywordflow">case</span> ConvertPolicy::SATURATE:</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SATURATE&quot;</span>;</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</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="l01155"></a><span class="lineno"> 1155</span>&#160;    }</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86">SATURATE</a>, and <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0">WRAP</a>.</p>
+<div class="fragment"><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160;{</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>)</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160;    {</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160;        <span class="keywordflow">case</span> ConvertPolicy::WRAP:</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;WRAP&quot;</span>;</div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160;        <span class="keywordflow">case</span> ConvertPolicy::SATURATE:</div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SATURATE&quot;</span>;</div><div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01281"></a><span class="lineno"> 1281</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="l01282"></a><span class="lineno"> 1282</span>&#160;    }</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">ArithmeticSubtraction.cpp:175</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a292505a0ec686541cfe0dcfd1d651ec5"></a>
+<a id="a292505a0ec686541cfe0dcfd1d651ec5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a292505a0ec686541cfe0dcfd1d651ec5">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[35/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -14985,14 +17176,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01174">1174</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01301">1301</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, and <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">SUM_SQUARE</a>.</p>
-<div class="fragment"><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;{</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;    <span class="keywordflow">switch</span>(op)</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;    {</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160;        <span class="keywordflow">case</span> ReductionOperation::SUM_SQUARE:</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SUM_SQUARE&quot;</span>;</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</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="l01183"></a><span class="lineno"> 1183</span>&#160;    }</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160;</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5">MEAN_SUM</a>, <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a">SUM</a>, and <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">SUM_SQUARE</a>.</p>
+<div class="fragment"><div class="line"><a name="l01302"></a><span class="lineno"> 1302</span>&#160;{</div><div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>&#160;    <span class="keywordflow">switch</span>(op)</div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160;    {</div><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>&#160;        <span class="keywordflow">case</span> ReductionOperation::SUM:</div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SUM&quot;</span>;</div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160;        <span class="keywordflow">case</span> ReductionOperation::SUM_SQUARE:</div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SUM_SQUARE&quot;</span>;</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01311"></a><span class="lineno"> 1311</span>&#160;        <span class="keywordflow">case</span> ReductionOperation::MEAN_SUM:</div><div class="line"><a name="l01312"></a><span class="lineno"> 1312</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;MEAN_SUM&quot;</span>;</div><div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01315"></a><span class="lineno"> 1315</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="l01316"></a><span class="lineno"> 1316</span>&#160;    }</div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160;</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9a2e48a508dc85b7280f955876bb4462"></a>
+<a id="a9a2e48a508dc85b7280f955876bb4462"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a2e48a508dc85b7280f955876bb4462">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[36/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15026,13 +17219,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01255">1255</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01412">1412</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00441">KeyPoint::error</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00439">KeyPoint::orientation</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00438">KeyPoint::scale</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00437">KeyPoint::strength</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00440">KeyPoint::tracking_status</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00435">KeyPoint::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00436">KeyPoint::y</a>.</p>
-<div class="fragment"><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160;{</div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{x=&quot;</span> &lt;&lt; point.x &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;y=&quot;</span> &lt;&lt; point.y &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;strength=&quot;</span> &lt;&lt; point.strength &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;scale=&quot;</span> &lt;&lt; point.scale &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;orientation=&quot;</span> &lt;&lt; point.orientation &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;tracking_status=&quot;</span> &lt;&lt; point.tracking_status &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;error=&quot;</span> &lt;&lt; point.error &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160;</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00446">KeyPoint::error</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00444">KeyPoint::orientation</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00443">KeyPoint::scale</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00442">KeyPoint::strength</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00445">KeyPoint::tracking_status</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00440">KeyPoint::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00441">KeyPoint::y</a>.</p>
+<div class="fragment"><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160;{</div><div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{x=&quot;</span> &lt;&lt; point.x &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;y=&quot;</span> &lt;&lt; point.y &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;strength=&quot;</span> &lt;&lt; point.strength &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;scale=&quot;</span> &lt;&lt; point.scale &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;orientation=&quot;</span> &lt;&lt; point.orientation &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;tracking_status=&quot;</span> &lt;&lt; point.tracking_status &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;error=&quot;</span> &lt;&lt; point.error &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160;</div><div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="abe52a76af2aa88876d54ce8a5969e509"></a>
+<a id="abe52a76af2aa88876d54ce8a5969e509"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe52a76af2aa88876d54ce8a5969e509">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[37/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15066,14 +17261,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01275">1275</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01432">1432</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07">SIGNED</a>, and <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054">UNSIGNED</a>.</p>
-<div class="fragment"><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160;{</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160;    <span class="keywordflow">switch</span>(phase_type)</div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160;    {</div><div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160;        <span class="keywordflow">case</span> PhaseType::SIGNED:</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SIGNED&quot;</span>;</div><div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>&#160;        <span class="keywordflow">case</span> PhaseType::UNSIGNED:</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNSIGNED&quot;</span>;</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</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="l01287"></a><span class="lineno"> 1287</span>&#160;    }</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160;</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07">SIGNED</a>, and <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054">UNSIGNED</a>.</p>
+<div class="fragment"><div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160;{</div><div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160;    <span class="keywordflow">switch</span>(phase_type)</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160;    {</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160;        <span class="keywordflow">case</span> PhaseType::SIGNED:</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;SIGNED&quot;</span>;</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160;        <span class="keywordflow">case</span> PhaseType::UNSIGNED:</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;UNSIGNED&quot;</span>;</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01443"></a><span class="lineno"> 1443</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="l01444"></a><span class="lineno"> 1444</span>&#160;    }</div><div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160;</div><div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01447"></a><span class="lineno"> 1447</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a530d86eec3dbd22cab6336ffdceb0d37"></a>
+<a id="a530d86eec3dbd22cab6336ffdceb0d37"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a530d86eec3dbd22cab6336ffdceb0d37">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[38/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15107,14 +17304,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01312">1312</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01469">1469</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8">L1NORM</a>, and <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131">L2NORM</a>.</p>
-<div class="fragment"><div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>&#160;{</div><div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>&#160;    <span class="keywordflow">switch</span>(magnitude_type)</div><div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>&#160;    {</div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160;        <span class="keywordflow">case</span> MagnitudeType::L1NORM:</div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L1NORM&quot;</span>;</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160;        <span class="keywordflow">case</span> MagnitudeType::L2NORM:</div><div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L2NORM&quot;</span>;</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</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="l01324"></a><span class="lineno"> 1324</span>&#160;    }</div><div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160;</div><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01327"></a><span class="lineno"> 1327</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8">L1NORM</a>, and <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131">L2NORM</a>.</p>
+<div class="fragment"><div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160;{</div><div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>&#160;    <span class="keywordflow">switch</span>(magnitude_type)</div><div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160;    {</div><div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160;        <span class="keywordflow">case</span> MagnitudeType::L1NORM:</div><div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L1NORM&quot;</span>;</div><div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160;        <span class="keywordflow">case</span> MagnitudeType::L2NORM:</div><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L2NORM&quot;</span>;</div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</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="l01481"></a><span class="lineno"> 1481</span>&#160;    }</div><div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160;</div><div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01484"></a><span class="lineno"> 1484</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5e7a61df2b926347b42ecadf8bcc8969"></a>
+<a id="a5e7a61df2b926347b42ecadf8bcc8969"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e7a61df2b926347b42ecadf8bcc8969">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[39/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15148,14 +17347,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01349">1349</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01506">1506</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa">L1_NORM</a>, <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5">L2_NORM</a>, and <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">L2HYS_NORM</a>.</p>
-<div class="fragment"><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160;{</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160;    <span class="keywordflow">switch</span>(norm_type)</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160;    {</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160;        <span class="keywordflow">case</span> HOGNormType::L1_NORM:</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L1_NORM&quot;</span>;</div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160;        <span class="keywordflow">case</span> HOGNormType::L2_NORM:</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L2_NORM&quot;</span>;</div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160;        <span class="keywordflow">case</span> HOGNormType::L2HYS_NORM:</div><div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L2HYS_NORM&quot;</span>;</div><div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01363"></a><span class="lineno"> 1363</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="l01364"></a><span class="lineno"> 1364</span>&#160;    }</div><div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160;</div><div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01367"></a><span class="lineno"> 1367</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa">L1_NORM</a>, <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5">L2_NORM</a>, and <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">L2HYS_NORM</a>.</p>
+<div class="fragment"><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160;{</div><div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160;    <span class="keywordflow">switch</span>(norm_type)</div><div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>&#160;    {</div><div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>&#160;        <span class="keywordflow">case</span> HOGNormType::L1_NORM:</div><div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L1_NORM&quot;</span>;</div><div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160;        <span class="keywordflow">case</span> HOGNormType::L2_NORM:</div><div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L2_NORM&quot;</span>;</div><div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160;        <span class="keywordflow">case</span> HOGNormType::L2HYS_NORM:</div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;L2HYS_NORM&quot;</span>;</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</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="l01521"></a><span class="lineno"> 1521</span>&#160;    }</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160;</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab91d110e020f6ed987e05e82df3e350b"></a>
+<a id="ab91d110e020f6ed987e05e82df3e350b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab91d110e020f6ed987e05e82df3e350b">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[40/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15189,13 +17390,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01389">1389</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01546">1546</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_size2_d_8h_source.xhtml#l00093">Size2D::height</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00092">Size2D::width</a>.</p>
-<div class="fragment"><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160;{</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160;    os &lt;&lt; size.width &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; size.height;</div><div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160;</div><div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="_size2_d_8h_source.xhtml#l00093">Size2D::height</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00092">Size2D::width</a>.</p>
+<div class="fragment"><div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160;{</div><div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>&#160;    os &lt;&lt; size.width &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; size.height;</div><div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>&#160;</div><div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a4228b490e13b79a60737929d9d9e5957"></a>
+<a id="a4228b490e13b79a60737929d9d9e5957"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4228b490e13b79a60737929d9d9e5957">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[41/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15229,13 +17432,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01416">1416</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01573">1573</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml#a13a9a6f5cfa21b3ab15b1e4315311aeb">HOGInfo::block_size()</a>, <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml#aa9a69eade27460f843fcfba5abb7ae52">HOGInfo::block_stride()</a>, <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml#a4b7434680a85c2ac14df737ac7cca91e">HOGInfo::cell_size()</a>, <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml#a0279e383beb758e477ce0673c5db8d57">HOGInfo::detection_window_size()</a>, <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml#a954d05635b1ff48daffdd70d8a1a6443">HOGInfo::l2_hyst_threshold()</a>, <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml#aed90de2ef57929727bb2159b66d04487">HOGInfo::normalization_type()</a>, <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml#ae3664b841732a09d7749953ca5b81373">HOGInfo::num_bins()</a>, and <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml#a96823b4d7dc642aa9f51a0077899d3f9">HOGInfo::phase_type()</a>.</p>
-<div class="fragment"><div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160;{</div><div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{CellSize=&quot;</span> &lt;&lt; hog_info.cell_size() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;BlockSize=&quot;</span> &lt;&lt; hog_info.block_size() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;DetectionWindowSize=&quot;</span> &lt;&lt; hog_info.detection_window_size() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;BlockStride=&quot;</span> &lt;&lt; hog_info.block_stride() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;NumBins=&quot;</span> &lt;&lt; hog_info.num_bins() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;NormType=&quot;</span> &lt;&lt; hog_info.normalization_type() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;L2HystThreshold=&quot;</span> &lt;&lt; hog_info.l2_hyst_threshold() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;PhaseType=&quot;</span> &lt;&lt; hog_info.phase_type() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>&#160;</div><div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>&#160;}</div></div><!-- fragment -->
+<p class="reference">References <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00096">HOGInfo::block_size()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00106">HOGInfo::block_stride()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00091">HOGInfo::cell_size()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00101">HOGInfo::detection_window_size()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00121">HOGInfo::l2_hyst_threshold()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00116">HOGInfo::normalization_type()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00111">HOGInfo::num_bins()</a>, and <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00126">HOGInfo::phase_type()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160;{</div><div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{CellSize=&quot;</span> &lt;&lt; hog_info.cell_size() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;BlockSize=&quot;</span> &lt;&lt; hog_info.block_size() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;DetectionWindowSize=&quot;</span> &lt;&lt; hog_info.detection_window_size() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;BlockStride=&quot;</span> &lt;&lt; hog_info.block_stride() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;NumBins=&quot;</span> &lt;&lt; hog_info.num_bins() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;NormType=&quot;</span> &lt;&lt; hog_info.normalization_type() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;L2HystThreshold=&quot;</span> &lt;&lt; hog_info.l2_hyst_threshold() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01582"></a><span class="lineno"> 1582</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;PhaseType=&quot;</span> &lt;&lt; hog_info.phase_type() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160;</div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="abd35c1c3fb716078b1f4a25981defac4"></a>
+<a id="abd35c1c3fb716078b1f4a25981defac4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd35c1c3fb716078b1f4a25981defac4">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[42/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15269,14 +17474,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01450">1450</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01607">1607</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">DIRECT</a>, <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3">GEMM</a>, and <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8">WINOGRAD</a>.</p>
-<div class="fragment"><div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160;{</div><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160;    <span class="keywordflow">switch</span>(conv_method)</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160;    {</div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160;        <span class="keywordflow">case</span> ConvolutionMethod::GEMM:</div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GEMM&quot;</span>;</div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160;        <span class="keywordflow">case</span> ConvolutionMethod::DIRECT:</div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;DIRECT&quot;</span>;</div><div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160;        <span class="keywordflow">case</span> ConvolutionMethod::WINOGRAD:</div><div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;WINOGRAD&quot;</span>;</div><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01464"></a><span class="lineno"> 1464</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="l01465"></a><span class="lineno"> 1465</span>&#160;    }</div><div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160;</div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01468"></a><span class="lineno"> 1468</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">DIRECT</a>, <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3">GEMM</a>, and <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8">WINOGRAD</a>.</p>
+<div class="fragment"><div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160;{</div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160;    <span class="keywordflow">switch</span>(conv_method)</div><div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>&#160;    {</div><div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160;        <span class="keywordflow">case</span> ConvolutionMethod::GEMM:</div><div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GEMM&quot;</span>;</div><div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160;        <span class="keywordflow">case</span> ConvolutionMethod::DIRECT:</div><div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;DIRECT&quot;</span>;</div><div class="line"><a name="l01616"></a><span class="lineno"> 1616</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160;        <span class="keywordflow">case</span> ConvolutionMethod::WINOGRAD:</div><div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;WINOGRAD&quot;</span>;</div><div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01621"></a><span class="lineno"> 1621</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="l01622"></a><span class="lineno"> 1622</span>&#160;    }</div><div class="line"><a name="l01623"></a><span class="lineno"> 1623</span>&#160;</div><div class="line"><a name="l01624"></a><span class="lineno"> 1624</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01625"></a><span class="lineno"> 1625</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1f4d95d65a62a085e929ab0a1a77add2"></a>
+<a id="a1f4d95d65a62a085e929ab0a1a77add2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1f4d95d65a62a085e929ab0a1a77add2">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[43/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15310,14 +17517,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01490">1490</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01647">1647</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">G51</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">G51BIG</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">G51LIT</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">G71</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc">G72</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82">GPU_ARCH_MASK</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673">T600</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">T700</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048">T800</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a>, and <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a>.</p>
-<div class="fragment"><div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160;{</div><div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160;    <span class="keywordflow">switch</span>(gpu_target)</div><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160;    {</div><div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160;        <span class="keywordflow">case</span> GPUTarget::GPU_ARCH_MASK:</div><div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GPU_ARCH_MASK&quot;</span>;</div><div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160;        <span class="keywordflow">case</span> GPUTarget::MIDGARD:</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;MIDGARD&quot;</span>;</div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160;        <span class="keywordflow">case</span> GPUTarget::BIFROST:</div><div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;BIFROST&quot;</span>;</div><div class="line"><a name="l01502"></a><span class="lineno"> 1502</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160;        <span class="keywordflow">case</span> GPUTarget::T600:</div><div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;T600&quot;</span>;</div><div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160;        <span class="keywordflow">case</span> GPUTarget::T700:</div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;T700&quot;</span>;</div><div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>&#160;        <span class="keywordflow">case</span> GPUTarget::T800:</div><div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;T800&quot;</span>;</div><div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G71:</div><div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G71&quot;</span>;</div><div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G72:</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G72&quot;</span>;</div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G51:</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G51&quot;</span>;</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G51BIG:</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G51BIG&quot;</span>;</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G51LIT:</div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G51LIT&quot;</span>;</div><div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G76:</div><div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G76&quot;</span>;</div><div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01530"></a><span class="lineno"> 1530</span>&#160;        <span class="keywordflow">case</span> GPUTarget::TTRX:</div><div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TTRX&quot;</span>;</div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160;        <span class="keywordflow">case</span> GPUTarget::TBOX:</div><div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TBOX&quot;</span>;</div><div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01537"></a><span class="lineno"> 1537</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="l01538"></a><span class="lineno"> 1538</span>&#160;    }</div><div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160;</div><div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">G51</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">G51BIG</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">G51LIT</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">G71</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc">G72</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82">GPU_ARCH_MASK</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673">T600</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">T700</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048">T800</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a>, and <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a>.</p>
+<div class="fragment"><div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>&#160;{</div><div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160;    <span class="keywordflow">switch</span>(gpu_target)</div><div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160;    {</div><div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160;        <span class="keywordflow">case</span> GPUTarget::GPU_ARCH_MASK:</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GPU_ARCH_MASK&quot;</span>;</div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160;        <span class="keywordflow">case</span> GPUTarget::MIDGARD:</div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;MIDGARD&quot;</span>;</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160;        <span class="keywordflow">case</span> GPUTarget::BIFROST:</div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;BIFROST&quot;</span>;</div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160;        <span class="keywordflow">case</span> GPUTarget::T600:</div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;T600&quot;</span>;</div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>&#160;        <span class="keywordflow">case</span> GPUTarget::T700:</div><div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;T700&quot;</span>;</div><div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160;        <span class="keywordflow">case</span> GPUTarget::T800:</div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;T800&quot;</span>;</div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G71:</div><div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G71&quot;</span>;</div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G72:</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G72&quot;</span>;</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G51:</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G51&quot;</span>;</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G51BIG:</div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G51BIG&quot;</span>;</div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G51LIT:</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G51LIT&quot;</span>;</div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160;        <span class="keywordflow">case</span> GPUTarget::G76:</div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;G76&quot;</span>;</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160;        <span class="keywordflow">case</span> GPUTarget::TTRX:</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TTRX&quot;</span>;</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160;        <span class="keywordflow">case</span> GPUTarget::TBOX:</div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TBOX&quot;</span>;</div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</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="l01695"></a><span class="lineno"> 1695</span>&#160;    }</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160;</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a907c93ba5daaabf6af7095f20340d024"></a>
+<a id="a907c93ba5daaabf6af7095f20340d024"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a907c93ba5daaabf6af7095f20340d024">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[44/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15351,19 +17560,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01563">1563</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01720">1720</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00546">DetectionWindow::height</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00547">DetectionWindow::idx_class</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00548">DetectionWindow::score</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00545">DetectionWindow::width</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00543">DetectionWindow::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00544">DetectionWindow::y</a>.</p>
-<div class="fragment"><div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>&#160;{</div><div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{x=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a0815db32ce16586f5e90a633735df930">x</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;y=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a45b45124e843a937c3e256edbce64eea">y</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;width=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a67fe5ca4d6c3f95bf649ef48fe3d221b">width</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;height=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#aa0fb54e3dbe6f7446157eb3f3c1f77f3">height</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;idx_class=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#ad4f986571659dd822695ca58dda00e49">idx_class</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;score=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a8c5cd9b525ee73a24b1d9d8e34982d1c">score</a> &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160;</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160;}</div><div class="ttc" id="struct_detection_window_xhtml_ad4f986571659dd822695ca58dda00e49"><div class="ttname"><a href="struct_detection_window.xhtml#ad4f986571659dd822695ca58dda00e49">DetectionWindow::idx_class</a></div><div class="ttdeci">ushort idx_class</div><div class="ttdoc">Index of the class. </div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.xhtml#l00053">types.h:53</a></div></div>
-<div class="ttc" id="struct_detection_window_xhtml_a45b45124e843a937c3e256edbce64eea"><div class="ttname"><a href="struct_detection_window.xhtml#a45b45124e843a937c3e256edbce64eea">DetectionWindow::y</a></div><div class="ttdeci">ushort y</div><div class="ttdoc">Top-left y coordinate. </div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.xhtml#l00050">types.h:50</a></div></div>
-<div class="ttc" id="struct_detection_window_xhtml_a8c5cd9b525ee73a24b1d9d8e34982d1c"><div class="ttname"><a href="struct_detection_window.xhtml#a8c5cd9b525ee73a24b1d9d8e34982d1c">DetectionWindow::score</a></div><div class="ttdeci">float score</div><div class="ttdoc">Confidence value for the detection window. </div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.xhtml#l00054">types.h:54</a></div></div>
-<div class="ttc" id="struct_detection_window_xhtml_aa0fb54e3dbe6f7446157eb3f3c1f77f3"><div class="ttname"><a href="struct_detection_window.xhtml#aa0fb54e3dbe6f7446157eb3f3c1f77f3">DetectionWindow::height</a></div><div class="ttdeci">ushort height</div><div class="ttdoc">Height of the detection window. </div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.xhtml#l00052">types.h:52</a></div></div>
-<div class="ttc" id="struct_detection_window_xhtml_a0815db32ce16586f5e90a633735df930"><div class="ttname"><a href="struct_detection_window.xhtml#a0815db32ce16586f5e90a633735df930">DetectionWindow::x</a></div><div class="ttdeci">ushort x</div><div class="ttdoc">Top-left x coordinate. </div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.xhtml#l00049">types.h:49</a></div></div>
-<div class="ttc" id="struct_detection_window_xhtml_a67fe5ca4d6c3f95bf649ef48fe3d221b"><div class="ttname"><a href="struct_detection_window.xhtml#a67fe5ca4d6c3f95bf649ef48fe3d221b">DetectionWindow::width</a></div><div class="ttdeci">ushort width</div><div class="ttdoc">Width of the detection window. </div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.xhtml#l00051">types.h:51</a></div></div>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00558">DetectionWindow::height</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00559">DetectionWindow::idx_class</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00560">DetectionWindow::score</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00557">DetectionWindow::width</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00555">DetectionWindow::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00556">DetectionWindow::y</a>.</p>
+<div class="fragment"><div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>&#160;{</div><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{x=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a0815db32ce16586f5e90a633735df930">x</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;y=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a45b45124e843a937c3e256edbce64eea">y</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;width=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a67fe5ca4d6c3f95bf649ef48fe3d221b">width</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;height=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#aa0fb54e3dbe6f7446157eb3f3c1f77f3">height</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;idx_class=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#ad4f986571659dd822695ca58dda00e49">idx_class</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;score=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a8c5cd9b525ee73a24b1d9d8e34982d1c">score</a> &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>&#160;</div><div class="line"><a name="l01729"></a><span class="lineno"> 1729</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>&#160;}</div><div class="ttc" id="struct_detection_window_xhtml_ad4f986571659dd822695ca58dda00e49"><div class="ttname"><a href="struct_detection_window.xhtml#ad4f986571659dd822695ca58dda00e49">DetectionWindow::idx_class</a></div><div class="ttdeci">ushort idx_class</div><div class="ttdoc">Index of the class. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00053">types.h:53</a></div></div>
+<div class="ttc" id="struct_detection_window_xhtml_a45b45124e843a937c3e256edbce64eea"><div class="ttname"><a href="struct_detection_window.xhtml#a45b45124e843a937c3e256edbce64eea">DetectionWindow::y</a></div><div class="ttdeci">ushort y</div><div class="ttdoc">Top-left y coordinate. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00050">types.h:50</a></div></div>
+<div class="ttc" id="struct_detection_window_xhtml_a8c5cd9b525ee73a24b1d9d8e34982d1c"><div class="ttname"><a href="struct_detection_window.xhtml#a8c5cd9b525ee73a24b1d9d8e34982d1c">DetectionWindow::score</a></div><div class="ttdeci">float score</div><div class="ttdoc">Confidence value for the detection window. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00054">types.h:54</a></div></div>
+<div class="ttc" id="struct_detection_window_xhtml_aa0fb54e3dbe6f7446157eb3f3c1f77f3"><div class="ttname"><a href="struct_detection_window.xhtml#aa0fb54e3dbe6f7446157eb3f3c1f77f3">DetectionWindow::height</a></div><div class="ttdeci">ushort height</div><div class="ttdoc">Height of the detection window. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00052">types.h:52</a></div></div>
+<div class="ttc" id="struct_detection_window_xhtml_a0815db32ce16586f5e90a633735df930"><div class="ttname"><a href="struct_detection_window.xhtml#a0815db32ce16586f5e90a633735df930">DetectionWindow::x</a></div><div class="ttdeci">ushort x</div><div class="ttdoc">Top-left x coordinate. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00049">types.h:49</a></div></div>
+<div class="ttc" id="struct_detection_window_xhtml_a67fe5ca4d6c3f95bf649ef48fe3d221b"><div class="ttname"><a href="struct_detection_window.xhtml#a67fe5ca4d6c3f95bf649ef48fe3d221b">DetectionWindow::width</a></div><div class="ttdeci">ushort width</div><div class="ttdoc">Width of the detection window. </div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00051">types.h:51</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a8cfa7d498e60be008d557d025fe62ff3"></a>
+<a id="a8cfa7d498e60be008d557d025fe62ff3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8cfa7d498e60be008d557d025fe62ff3">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[45/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15397,14 +17608,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01595">1595</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01752">1752</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29">TERM_CRITERIA_BOTH</a>, <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b">TERM_CRITERIA_EPSILON</a>, and <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd">TERM_CRITERIA_ITERATIONS</a>.</p>
-<div class="fragment"><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160;{</div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160;    <span class="keywordflow">switch</span>(termination)</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160;    {</div><div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160;        <span class="keywordflow">case</span> Termination::TERM_CRITERIA_EPSILON:</div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TERM_CRITERIA_EPSILON&quot;</span>;</div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160;        <span class="keywordflow">case</span> Termination::TERM_CRITERIA_ITERATIONS:</div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TERM_CRITERIA_ITERATIONS&quot;</span>;</div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160;        <span class="keywordflow">case</span> Termination::TERM_CRITERIA_BOTH:</div><div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TERM_CRITERIA_BOTH&quot;</span>;</div><div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</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="l01610"></a><span class="lineno"> 1610</span>&#160;    }</div><div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160;</div><div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01613"></a><span class="lineno"> 1613</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29">TERM_CRITERIA_BOTH</a>, <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b">TERM_CRITERIA_EPSILON</a>, and <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd">TERM_CRITERIA_ITERATIONS</a>.</p>
+<div class="fragment"><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160;{</div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>&#160;    <span class="keywordflow">switch</span>(termination)</div><div class="line"><a name="l01755"></a><span class="lineno"> 1755</span>&#160;    {</div><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160;        <span class="keywordflow">case</span> Termination::TERM_CRITERIA_EPSILON:</div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TERM_CRITERIA_EPSILON&quot;</span>;</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>&#160;        <span class="keywordflow">case</span> Termination::TERM_CRITERIA_ITERATIONS:</div><div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TERM_CRITERIA_ITERATIONS&quot;</span>;</div><div class="line"><a name="l01761"></a><span class="lineno"> 1761</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01762"></a><span class="lineno"> 1762</span>&#160;        <span class="keywordflow">case</span> Termination::TERM_CRITERIA_BOTH:</div><div class="line"><a name="l01763"></a><span class="lineno"> 1763</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;TERM_CRITERIA_BOTH&quot;</span>;</div><div class="line"><a name="l01764"></a><span class="lineno"> 1764</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01766"></a><span class="lineno"> 1766</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="l01767"></a><span class="lineno"> 1767</span>&#160;    }</div><div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>&#160;</div><div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01770"></a><span class="lineno"> 1770</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a2329ad899483ca80bbffd03a63da9f5d"></a>
+<a id="a2329ad899483ca80bbffd03a63da9f5d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2329ad899483ca80bbffd03a63da9f5d">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[46/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15438,14 +17651,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01635">1635</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01792">1792</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">A53</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">A55r0</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca">A55r1</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">GENERIC_FP16</a>, and <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">GENERIC_FP16_DOT</a>.</p>
-<div class="fragment"><div class="line"><a name="l01636"></a><span class="lineno"> 1636</span>&#160;{</div><div class="line"><a name="l01637"></a><span class="lineno"> 1637</span>&#160;    <span class="keywordflow">switch</span>(cpu_model)</div><div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>&#160;    {</div><div class="line"><a name="l01639"></a><span class="lineno"> 1639</span>&#160;        <span class="keywordflow">case</span> CPUModel::GENERIC:</div><div class="line"><a name="l01640"></a><span class="lineno"> 1640</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GENERIC&quot;</span>;</div><div class="line"><a name="l01641"></a><span class="lineno"> 1641</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>&#160;        <span class="keywordflow">case</span> CPUModel::GENERIC_FP16:</div><div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GENERIC_FP16&quot;</span>;</div><div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>&#160;        <span class="keywordflow">case</span> CPUModel::GENERIC_FP16_DOT:</div><div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GENERIC_FP16_DOT&quot;</span>;</div><div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>&#160;        <span class="keywordflow">case</span> CPUModel::A53:</div><div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;A53&quot;</span>;</div><div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160;        <span class="keywordflow">case</span> CPUModel::A55r0:</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;A55r0&quot;</span>;</div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160;        <span class="keywordflow">case</span> CPUModel::A55r1:</div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;A55r1&quot;</span>;</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</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="l01659"></a><span class="lineno"> 1659</span>&#160;    }</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160;</div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">A53</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">A55r0</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca">A55r1</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">GENERIC_FP16</a>, and <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">GENERIC_FP16_DOT</a>.</p>
+<div class="fragment"><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160;{</div><div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>&#160;    <span class="keywordflow">switch</span>(cpu_model)</div><div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>&#160;    {</div><div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>&#160;        <span class="keywordflow">case</span> CPUModel::GENERIC:</div><div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GENERIC&quot;</span>;</div><div class="line"><a name="l01798"></a><span class="lineno"> 1798</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>&#160;        <span class="keywordflow">case</span> CPUModel::GENERIC_FP16:</div><div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GENERIC_FP16&quot;</span>;</div><div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>&#160;        <span class="keywordflow">case</span> CPUModel::GENERIC_FP16_DOT:</div><div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;GENERIC_FP16_DOT&quot;</span>;</div><div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>&#160;        <span class="keywordflow">case</span> CPUModel::A53:</div><div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;A53&quot;</span>;</div><div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>&#160;        <span class="keywordflow">case</span> CPUModel::A55r0:</div><div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;A55r0&quot;</span>;</div><div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>&#160;        <span class="keywordflow">case</span> CPUModel::A55r1:</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;A55r1&quot;</span>;</div><div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l01815"></a><span class="lineno"> 1815</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="l01816"></a><span class="lineno"> 1816</span>&#160;    }</div><div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>&#160;</div><div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01819"></a><span class="lineno"> 1819</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a29cd1c3e1b33d61a479fa49465c5a7e7"></a>
+<a id="a29cd1c3e1b33d61a479fa49465c5a7e7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a29cd1c3e1b33d61a479fa49465c5a7e7">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[47/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15479,11 +17694,56 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01684">1684</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160;{</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;[&quot;</span>;</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160;    <span class="keywordtype">bool</span> first = <span class="keyword">true</span>;</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">auto</span> &amp;arg : args)</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160;    {</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160;        <span class="keywordflow">if</span>(first)</div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160;        {</div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>&#160;            first = <span class="keyword">false</span>;</div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160;        }</div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l01695"></a><span class="lineno"> 1695</span>&#160;        {</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;, &quot;</span>;</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160;        }</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>&#160;        os &lt;&lt; arg;</div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160;    }</div><div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;]&quot;</span>;</div><div class="line"><a name="l01701"></a><span class="lineno"> 1701</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01841">1841</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>&#160;{</div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;[&quot;</span>;</div><div class="line"><a name="l01844"></a><span class="lineno"> 1844</span>&#160;    <span class="keywordtype">bool</span> first = <span class="keyword">true</span>;</div><div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">auto</span> &amp;arg : args)</div><div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>&#160;    {</div><div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>&#160;        <span class="keywordflow">if</span>(first)</div><div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>&#160;        {</div><div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>&#160;            first = <span class="keyword">false</span>;</div><div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>&#160;        }</div><div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l01852"></a><span class="lineno"> 1852</span>&#160;        {</div><div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>&#160;            os &lt;&lt; <span class="stringliteral">&quot;, &quot;</span>;</div><div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>&#160;        }</div><div class="line"><a name="l01855"></a><span class="lineno"> 1855</span>&#160;        os &lt;&lt; arg;</div><div class="line"><a name="l01856"></a><span class="lineno"> 1856</span>&#160;    }</div><div class="line"><a name="l01857"></a><span class="lineno"> 1857</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;]&quot;</span>;</div><div class="line"><a name="l01858"></a><span class="lineno"> 1858</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="af3cba8a4493cee4c431d128eed565ffe"></a>
+<a id="ae7393414bb7b814bf70e0399f2347847"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae7393414bb7b814bf70e0399f2347847">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[48/49]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">::std::ostream &amp;&#160;</td>
+          <td class="paramname"><em>os</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a> &amp;&#160;</td>
+          <td class="paramname"><em>info</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Formatted output of <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a>. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01868">1868</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00929">PriorBoxLayerInfo::clip()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00924">PriorBoxLayerInfo::flip()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00914">PriorBoxLayerInfo::img_size()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00934">PriorBoxLayerInfo::max_sizes()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00899">PriorBoxLayerInfo::min_sizes()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00919">PriorBoxLayerInfo::offset()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00909">PriorBoxLayerInfo::steps()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00904">PriorBoxLayerInfo::variances()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00464">Coordinates2D::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00465">Coordinates2D::y</a>.</p>
+<div class="fragment"><div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>&#160;{</div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;Clip:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.clip()</div><div class="line"><a name="l01871"></a><span class="lineno"> 1871</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;Flip:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.flip()</div><div class="line"><a name="l01872"></a><span class="lineno"> 1872</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;StepX:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.steps()[0]</div><div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;StepY:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.steps()[1]</div><div class="line"><a name="l01874"></a><span class="lineno"> 1874</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;MinSizes:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.min_sizes()</div><div class="line"><a name="l01875"></a><span class="lineno"> 1875</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;MaxSizes:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.max_sizes()</div><div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;ImgSizeX:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.img_size().x</div><div class="line"><a name="l01877"></a><span class="lineno"> 1877</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;ImgSizeY:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.img_size().y</div><div class="line"><a name="l01878"></a><span class="lineno"> 1878</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;Offset:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.offset()</div><div class="line"><a name="l01879"></a><span class="lineno"> 1879</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;Variances:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.variances();</div><div class="line"><a name="l01880"></a><span class="lineno"> 1880</span>&#160;</div><div class="line"><a name="l01881"></a><span class="lineno"> 1881</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="af3cba8a4493cee4c431d128eed565ffe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af3cba8a4493cee4c431d128eed565ffe">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[49/49]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15509,14 +17769,16 @@
 
 <p>Formatted output of the <a class="el" href="structarm__compute_1_1_winograd_info.xhtml" title="Winograd information. ">WinogradInfo</a> type. </p>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01719">1719</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01899">1899</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01242">WinogradInfo::convolution_info</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01240">WinogradInfo::kernel_size</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01243">WinogradInfo::output_data_layout</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01239">WinogradInfo::output_tile_size</a>.</p>
-<div class="fragment"><div class="line"><a name="l01720"></a><span class="lineno"> 1720</span>&#160;{</div><div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{OutputTileSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.output_tile_size &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;KernelSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.kernel_size &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;PadStride=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.convolution_info &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;OutputDataLayout=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.output_data_layout &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160;</div><div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01730">WinogradInfo::convolution_info</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01728">WinogradInfo::kernel_size</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01731">WinogradInfo::output_data_layout</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01727">WinogradInfo::output_tile_size</a>.</p>
+<div class="fragment"><div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160;{</div><div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160;    os &lt;&lt; <span class="stringliteral">&quot;{OutputTileSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.output_tile_size &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;KernelSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.kernel_size &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;PadStride=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.convolution_info &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>&#160;       &lt;&lt; <span class="stringliteral">&quot;OutputDataLayout=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.output_data_layout &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>&#160;</div><div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a096590f2456b9e9bcb8db98175720b60"></a>
+<a id="a096590f2456b9e9bcb8db98175720b60"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a096590f2456b9e9bcb8db98175720b60">&#9670;&nbsp;</a></span>operator==()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -15558,13 +17820,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the given dimensions are equal. </dd></dl>
 
-<p>Definition at line <a class="el" href="_dimensions_8h_source.xhtml#l00234">234</a> of file <a class="el" href="_dimensions_8h_source.xhtml">Dimensions.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_dimensions_8h_source.xhtml#l00234">234</a> of file <a class="el" href="_dimensions_8h_source.xhtml">Dimensions.h</a>.</p>
 
-<p>References <a class="el" href="_dimensions_8h_source.xhtml#l00189">Dimensions&lt; T &gt;::cbegin()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00213">Dimensions&lt; T &gt;::cend()</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>.</p>
+<p class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00189">Dimensions&lt; T &gt;::cbegin()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00213">Dimensions&lt; T &gt;::cend()</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;{</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;    <span class="keywordflow">return</span> ((lhs.num_dimensions() == rhs.num_dimensions()) &amp;&amp; std::equal(lhs.cbegin(), lhs.cend(), rhs.cbegin()));</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1379e5f8a8b4640d7a52d901f0539ccd"></a>
+<a id="a1379e5f8a8b4640d7a52d901f0539ccd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1379e5f8a8b4640d7a52d901f0539ccd">&#9670;&nbsp;</a></span>operator>>() <span class="overload">[1/3]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15598,14 +17862,14 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the modified input stream. </dd></dl>
 
-<p>Definition at line <a class="el" href="_type_reader_8h_source.xhtml#l00042">42</a> of file <a class="el" href="_type_reader_8h_source.xhtml">TypeReader.h</a>.</p>
-
-<p>References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00092">arm_compute::test::validation::c</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">CONSTANT</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">REPLICATE</a>, and <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_type_reader_8h_source.xhtml#l00042">42</a> of file <a class="el" href="_type_reader_8h_source.xhtml">TypeReader.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;{</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    std::string value;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    is &gt;&gt; value;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    std::transform(value.begin(), value.end(), value.begin(), [](<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a497347573faa3778743ddf277f861094">c</a>)</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    {</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <span class="keywordflow">return</span> std::toupper(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a497347573faa3778743ddf277f861094">c</a>);</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    });</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keywordflow">if</span>(value == <span class="stringliteral">&quot;UNDEFINED&quot;</span>)</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    {</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        mode = BorderMode::UNDEFINED;</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    }</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span>(value == <span class="stringliteral">&quot;CONSTANT&quot;</span>)</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    {</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        mode = BorderMode::CONSTANT;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    }</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span>(value == <span class="stringliteral">&quot;REPLICATE&quot;</span>)</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    {</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        mode = BorderMode::REPLICATE;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    }</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    {</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        <span class="keywordflow">throw</span> std::invalid_argument(<span class="stringliteral">&quot;Unsupported value &#39;&quot;</span> + value + <span class="stringliteral">&quot;&#39; for border mode&quot;</span>);</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    }</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="keywordflow">return</span> is;</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a497347573faa3778743ddf277f861094"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a497347573faa3778743ddf277f861094">arm_compute::test::validation::c</a></div><div class="ttdeci">CLTensor c</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00092">GEMM.cpp:92</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a7cec6ed141f3eb1d6330533a90bba9e1"></a>
+<a id="a7cec6ed141f3eb1d6330533a90bba9e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7cec6ed141f3eb1d6330533a90bba9e1">&#9670;&nbsp;</a></span>operator>>() <span class="overload">[2/3]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15639,15 +17903,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Updated stream </dd></dl>
 
-<p>Definition at line <a class="el" href="_type_loader_8h_source.xhtml#l00048">48</a> of file <a class="el" href="_type_loader_8h_source.xhtml">TypeLoader.h</a>.</p>
-
-<p>References <a class="el" href="namespacearm__compute.xhtml#a70c6f92f6b74982b31716cfd2fdf612a">data_layout_from_name()</a>, and <a class="el" href="namespacearm__compute.xhtml#ade65ba63cdf4becce903866f4a59815e">data_type_from_name()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;{</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    std::string value;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    stream &gt;&gt; value;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a> = <a class="code" href="namespacearm__compute.xhtml#ade65ba63cdf4becce903866f4a59815e">data_type_from_name</a>(value);</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keywordflow">return</span> stream;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_ade65ba63cdf4becce903866f4a59815e"><div class="ttname"><a href="namespacearm__compute.xhtml#ade65ba63cdf4becce903866f4a59815e">arm_compute::data_type_from_name</a></div><div class="ttdeci">arm_compute::DataType data_type_from_name(const std::string &amp;name)</div><div class="ttdoc">Converts a string to a strong types enumeration DataType. </div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00088">GEMM.cpp:88</a></div></div>
+<p class="definition">Definition at line <a class="el" href="_type_loader_8h_source.xhtml#l00048">48</a> of file <a class="el" href="_type_loader_8h_source.xhtml">TypeLoader.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;{</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    std::string value;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    stream &gt;&gt; value;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a> = <a class="code" href="namespacearm__compute.xhtml#a307a55b07dc70dc9177ff26543b1c66f">data_type_from_name</a>(value);</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keywordflow">return</span> stream;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00174">ArithmeticSubtraction.cpp:174</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a307a55b07dc70dc9177ff26543b1c66f"><div class="ttname"><a href="namespacearm__compute.xhtml#a307a55b07dc70dc9177ff26543b1c66f">arm_compute::data_type_from_name</a></div><div class="ttdeci">arm_compute::DataType data_type_from_name(const std::string &amp;name)</div><div class="ttdoc">Converts a string to a strong types enumeration DataType. </div><div class="ttdef"><b>Definition:</b> <a href="_type_loader_8cpp_source.xhtml#l00032">TypeLoader.cpp:32</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9c4a3d0e80938810dd7b22b16785f5c8"></a>
+<a id="a9c4a3d0e80938810dd7b22b16785f5c8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9c4a3d0e80938810dd7b22b16785f5c8">&#9670;&nbsp;</a></span>operator>>() <span class="overload">[3/3]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -15681,15 +17945,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Updated stream </dd></dl>
 
-<p>Definition at line <a class="el" href="_type_loader_8h_source.xhtml#l00071">71</a> of file <a class="el" href="_type_loader_8h_source.xhtml">TypeLoader.h</a>.</p>
-
-<p>References <a class="el" href="namespacearm__compute.xhtml#a70c6f92f6b74982b31716cfd2fdf612a">data_layout_from_name()</a>, and <a class="el" href="namespacearm__compute_1_1graph.xhtml#a4654d54572949314f2a3bd0163179897">arm_compute::graph::target_from_name()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;{</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    std::string value;</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    stream &gt;&gt; value;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a> = <a class="code" href="namespacearm__compute.xhtml#a70c6f92f6b74982b31716cfd2fdf612a">data_layout_from_name</a>(value);</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <span class="keywordflow">return</span> stream;</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00227">Winograd.cpp:227</a></div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a70c6f92f6b74982b31716cfd2fdf612a"><div class="ttname"><a href="namespacearm__compute.xhtml#a70c6f92f6b74982b31716cfd2fdf612a">arm_compute::data_layout_from_name</a></div><div class="ttdeci">arm_compute::DataLayout data_layout_from_name(const std::string &amp;name)</div><div class="ttdoc">Converts a string to a strong types enumeration DataLayout. </div></div>
+<p class="definition">Definition at line <a class="el" href="_type_loader_8h_source.xhtml#l00071">71</a> of file <a class="el" href="_type_loader_8h_source.xhtml">TypeLoader.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;{</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    std::string value;</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    stream &gt;&gt; value;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a> = <a class="code" href="namespacearm__compute.xhtml#a834b76c7d21af898f39def3b787d7530">data_layout_from_name</a>(value);</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <span class="keywordflow">return</span> stream;</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00251">Winograd.cpp:251</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a834b76c7d21af898f39def3b787d7530"><div class="ttname"><a href="namespacearm__compute.xhtml#a834b76c7d21af898f39def3b787d7530">arm_compute::data_layout_from_name</a></div><div class="ttdeci">arm_compute::DataLayout data_layout_from_name(const std::string &amp;name)</div><div class="ttdoc">Converts a string to a strong types enumeration DataLayout. </div><div class="ttdef"><b>Definition:</b> <a href="_type_loader_8cpp_source.xhtml#l00051">TypeLoader.cpp:51</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a21c3e11887f3acf9284ca763372c7da0"></a>
+<a id="a21c3e11887f3acf9284ca763372c7da0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a21c3e11887f3acf9284ca763372c7da0">&#9670;&nbsp;</a></span>permute() <span class="overload">[1/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -15731,15 +17995,17 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00536">536</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00536">536</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="_dimensions_8h_source.xhtml#l00173">Dimensions&lt; T &gt;::begin()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00197">Dimensions&lt; T &gt;::end()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">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 class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00173">Dimensions&lt; T &gt;::begin()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00197">Dimensions&lt; T &gt;::end()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">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="_shape_calculator_8h_source.xhtml#l00052">arm_compute::misc::shape_calculator::compute_permutation_output_shape()</a>, <a class="el" href="_assets_library_8h_source.xhtml#l00453">AssetsLibrary::fill()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00357">NPYLoader::fill_tensor()</a>, and <a class="el" href="_graph_utils_8h_source.xhtml#l00492">arm_compute::graph_utils::permute_shape()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_c_l_permute_kernel_8cpp_source.xhtml#l00039">CLPermuteKernel::CLPermuteKernel()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00055">arm_compute::misc::shape_calculator::compute_permutation_output_shape()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00045">NEDepthwiseConvolutionLayer3x3::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00268">NEDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_permute_layer_node_8cpp_source.xhtml#l00059">PermuteLayerNode::configure_output()</a>, <a class="el" href="_assets_library_8h_source.xhtml#l00453">AssetsLibrary::fill()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00396">NPYLoader::fill_tensor()</a>, <a class="el" href="_graph_utils_8h_source.xhtml#l00506">arm_compute::graph_utils::permute_shape()</a>, and <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00401">NEDepthwiseConvolutionLayer::validate()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;{</div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;    <span class="keyword">auto</span> dimensions_copy = utility::make_array&lt;Dimensions&lt;T&gt;::num_max_dimensions&gt;(dimensions.begin(), dimensions.end());</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; perm.num_dimensions(); ++i)</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;    {</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;        T dimension_val = (perm[i] &lt; dimensions.num_dimensions()) ? dimensions_copy[perm[i]] : 0;</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;        dimensions.set(i, dimension_val);</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;    }</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5045aaec85553032a782c44ab8d26341"></a>
+<a id="a5045aaec85553032a782c44ab8d26341"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5045aaec85553032a782c44ab8d26341">&#9670;&nbsp;</a></span>permute() <span class="overload">[2/2]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -15781,14 +18047,16 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">553</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">553</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="_helpers_8inl_source.xhtml#l00201">auto_init_if_empty()</a>, <a class="el" href="namespacearm__compute.xhtml#a4f83578a33b502bf6419ead091249423">calculate_valid_region_scale()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00308">coords2index()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00227">arm_compute::test::validation::data_layout</a>, <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00088">arm_compute::test::validation::data_type</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00326">get_data_layout_dimension_index()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00289">index2coords()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00267">set_data_layout_if_unknown()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00256">set_data_type_if_unknown()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00245">set_format_if_unknown()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00278">set_quantization_info_if_empty()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00234">set_shape_if_empty()</a>, and <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">arm_compute::test::validation::shape</a>.</p>
+<p class="reference">References <a class="el" href="_helpers_8inl_source.xhtml#l00201">auto_init_if_empty()</a>, <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00184">calculate_valid_region_scale()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00308">coords2index()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00251">arm_compute::test::validation::data_layout</a>, <a class="el" href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00174">arm_compute::test::validation::data_type</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00326">get_data_layout_dimension_index()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00289">index2coords()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00267">set_data_layout_if_unknown()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00256">set_data_type_if_unknown()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00245">set_format_if_unknown()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00278">set_quantization_info_if_empty()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00234">set_shape_if_empty()</a>, and <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">arm_compute::test::validation::shape</a>.</p>
 <div class="fragment"><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;{</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;    TensorShape shape_copy = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>;</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; perm.num_dimensions(); ++i)</div><div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;    {</div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;        <span class="keywordtype">size_t</span> dimension_val = (perm[i] &lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.num_dimensions()) ? shape_copy[perm[i]] : 1;</div><div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.set(i, dimension_val, <span class="keyword">false</span>); <span class="comment">// Avoid changes in _num_dimension</span></div><div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;    }</div><div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab7b3af731907e85fcaf72555c446176b"></a>
+<a id="ab7b3af731907e85fcaf72555c446176b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7b3af731907e85fcaf72555c446176b">&#9670;&nbsp;</a></span>pixel_area_c1u8_clamp()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -15876,18 +18144,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The pixel at (x, y) using area interpolation. </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00032">32</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00032">32</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_utility_8h_source.xhtml#l00091">arm_compute::utility::for_each()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, and <a class="el" href="reduction__operation_8cl_source.xhtml#l00052">sum()</a>.</p>
+<p class="reference">References <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_utility_8h_source.xhtml#l00091">arm_compute::utility::for_each()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, and <a class="el" href="reduction__operation_8cl_source.xhtml#l00052">sum()</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00237">pixel_bilinear_c1_clamp()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_n_e_scale_kernel_8cpp_source.xhtml#l00285">NEScaleKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00237">pixel_bilinear_c1_clamp()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;{</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(first_pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="comment">// Calculate sampling position</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keywordtype">float</span> in_x = (x + 0.5f) * wr - 0.5f;</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <span class="keywordtype">float</span> in_y = (y + 0.5f) * hr - 0.5f;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <span class="comment">// Get bounding box offsets</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <span class="keywordtype">int</span> x_from = std::floor(x * wr - 0.5f - in_x);</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <span class="keywordtype">int</span> y_from = std::floor(y * hr - 0.5f - in_y);</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <span class="keywordtype">int</span> x_to   = std::ceil((x + 1) * wr - 0.5f - in_x);</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="keywordtype">int</span> y_to   = std::ceil((y + 1) * hr - 0.5f - in_y);</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="comment">// Clamp position to borders</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    in_x = std::max(-1.f, std::min(in_x, static_cast&lt;float&gt;(width)));</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    in_y = std::max(-1.f, std::min(in_y, static_cast&lt;float&gt;(height)));</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="comment">// Clamp bounding box offsets to borders</span></div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    x_from = ((in_x + x_from) &lt; -1) ? -1 : x_from;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    y_from = ((in_y + y_from) &lt; -1) ? -1 : y_from;</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    x_to   = ((in_x + x_to) &gt; width) ? (width - in_x) : x_to;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    y_to   = ((in_y + y_to) &gt; height) ? (height - in_y) : y_to;</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <span class="comment">// Get pixel index</span></div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span> xi = std::floor(in_x);</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span> yi = std::floor(in_y);</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <span class="comment">// Bounding box elements in each dimension</span></div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span> x_elements = (x_to - x_from + 1);</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">int</span> y_elements = (y_to - y_from + 1);</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(x_elements == 0 || y_elements == 0);</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="comment">// Sum pixels in area</span></div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <span class="keywordtype">int</span> <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a> = 0;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> j = yi + y_from, je = yi + y_to; j &lt;= je; ++j)</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    {</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        <span class="keyword">const</span> uint8_t *ptr = first_pixel_ptr + j * stride + xi + x_from;</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        sum                = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(ptr, ptr + x_elements, sum);</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    }</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <span class="comment">// Return average</span></div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="keywordflow">return</span> sum / (x_elements * y_elements);</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;}</div><div class="ttc" id="reduction__operation_8cl_xhtml_ab0df00f5333da51860deb93deb44a782"><div class="ttname"><a href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a></div><div class="ttdeci">DATA_TYPE sum(__global const DATA_TYPE *input)</div><div class="ttdoc">Calculate sum of a vector. </div><div class="ttdef"><b>Definition:</b> <a href="reduction__operation_8cl_source.xhtml#l00052">reduction_operation.cl:52</a></div></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#l00337">Error.h:337</a></div></div>
 <div class="ttc" id="accumulate_8cl_xhtml_a00e540076dd545ad59ac7482f8cdf514"><div class="ttname"><a href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">accumulate</a></div><div class="ttdeci">__kernel void accumulate(__global uchar *input_ptr, uint input_stride_x, uint input_step_x, uint input_stride_y, uint input_step_y, uint input_offset_first_element_in_bytes, __global uchar *accu_ptr, uint accu_stride_x, uint accu_step_x, uint accu_stride_y, uint accu_step_y, uint accu_offset_first_element_in_bytes)</div><div class="ttdoc">This function accumulates an input image into output image. </div><div class="ttdef"><b>Definition:</b> <a href="accumulate_8cl_source.xhtml#l00041">accumulate.cl:41</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1c8d639ec2b3086a9506e72605a32333"></a>
+<a id="a1c8d639ec2b3086a9506e72605a32333"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1c8d639ec2b3086a9506e72605a32333">&#9670;&nbsp;</a></span>pixel_bilinear_c1()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -15944,15 +18214,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The pixel at (x, y) using bilinear interpolation. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00210">210</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00210">210</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">delta_bilinear_c1()</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">delta_bilinear_c1()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_warp_kernel_8cpp_source.xhtml#l00067">INEWarpKernel::configure()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;{</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(first_pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    <span class="keyword">const</span> int32_t xi = std::floor(x);</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;    <span class="keyword">const</span> int32_t yi = std::floor(y);</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> dx = x - xi;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> dy = y - yi;</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#ad656a27ce8a507e31096ca45683ba9a5">delta_bilinear_c1</a>(first_pixel_ptr + xi + yi * stride, stride, dx, dy);</div><div class="line"><a name="l00221"></a><span class="lineno">  221</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#l00337">Error.h:337</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ad656a27ce8a507e31096ca45683ba9a5"><div class="ttname"><a href="namespacearm__compute.xhtml#ad656a27ce8a507e31096ca45683ba9a5">arm_compute::delta_bilinear_c1</a></div><div class="ttdeci">T delta_bilinear_c1(const T *pixel_ptr, size_t stride, float dx, float dy)</div><div class="ttdoc">Computes bilinear interpolation using the pointer to the top-left pixel and the pixel&amp;#39;s distance betw...</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">Helpers.h:127</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afa55519774605e5b840fb031fdd7b196"></a>
+<a id="afa55519774605e5b840fb031fdd7b196"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa55519774605e5b840fb031fdd7b196">&#9670;&nbsp;</a></span>pixel_bilinear_c1_clamp()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -16024,9 +18298,11 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The pixel at (x, y) using bilinear interpolation. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00237">237</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00237">237</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">delta_bilinear_c1()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00184">delta_linear_c1_x()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00159">delta_linear_c1_y()</a>, and <a class="el" href="_helpers_8inl_source.xhtml#l00032">pixel_area_c1u8_clamp()</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">delta_bilinear_c1()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00184">delta_linear_c1_x()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00159">delta_linear_c1_y()</a>, and <a class="el" href="_helpers_8inl_source.xhtml#l00032">pixel_area_c1u8_clamp()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_remap_kernel_8cpp_source.xhtml#l00076">NERemapKernel::configure()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;{</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(first_pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;    x = std::max(-1.f, std::min(x, static_cast&lt;float&gt;(width)));</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;    y = std::max(-1.f, std::min(y, static_cast&lt;float&gt;(height)));</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> xi = std::floor(x);</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> yi = std::floor(y);</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> dx = x - xi;</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">float</span> dy = y - yi;</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;    <span class="keywordflow">if</span>(dx == 0.0f)</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;    {</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;        <span class="keywordflow">if</span>(dy == 0.0f)</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;        {</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(first_pixel_ptr[<span class="keyword">static_cast&lt;</span>int32_t<span class="keyword">&gt;</span>(xi) + static_cast&lt;int32_t&gt;(yi) * stride]);</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        }</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#ad5fa8bacf824e9538014bfb0dcdaab52">delta_linear_c1_y</a>(first_pixel_ptr + static_cast&lt;int32_t&gt;(xi) + static_cast&lt;int32_t&gt;(yi) * stride, stride, dy);</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;    }</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    <span class="keywordflow">if</span>(dy == 0.0f)</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    {</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a6174495b626531de015ae2b810859287">delta_linear_c1_x</a>(first_pixel_ptr + static_cast&lt;int32_t&gt;(xi) + static_cast&lt;int32_t&gt;(yi) * stride, dx);</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    }</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#ad656a27ce8a507e31096ca45683ba9a5">delta_bilinear_c1</a>(first_pixel_ptr + static_cast&lt;int32_t&gt;(xi) + static_cast&lt;int32_t&gt;(yi) * stride, stride, dx, dy);</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a6174495b626531de015ae2b810859287"><div class="ttname"><a href="namespacearm__compute.xhtml#a6174495b626531de015ae2b810859287">arm_compute::delta_linear_c1_x</a></div><div class="ttdeci">T delta_linear_c1_x(const T *pixel_ptr, float dx)</div><div class="ttdoc">Computes linear interpolation using the pointer to the left pixel and the pixel&amp;#39;s distance between th...</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00184">Helpers.h:184</a></div></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#l00337">Error.h:337</a></div></div>
 <div class="ttc" id="namespacearm__compute_xhtml_ad5fa8bacf824e9538014bfb0dcdaab52"><div class="ttname"><a href="namespacearm__compute.xhtml#ad5fa8bacf824e9538014bfb0dcdaab52">arm_compute::delta_linear_c1_y</a></div><div class="ttdeci">T delta_linear_c1_y(const T *pixel_ptr, size_t stride, float dy)</div><div class="ttdoc">Computes linear interpolation using the pointer to the top pixel and the pixel&amp;#39;s distance between the...</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00159">Helpers.h:159</a></div></div>
@@ -16034,7 +18310,9 @@
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a4823543d67a2520c98669e2a5608ef6a"></a>
+<a id="a4823543d67a2520c98669e2a5608ef6a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4823543d67a2520c98669e2a5608ef6a">&#9670;&nbsp;</a></span>pixel_size_from_format()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -16065,14 +18343,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The size in bytes of the pixel format </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00141">141</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00142">142</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
-<div class="fragment"><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;{</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    {</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;            <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;            <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;            <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;            <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        <span class="comment">//Doesn&#39;t make sense for planar formats:</span></div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined pixel size for given format&quot;</span>);</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    }</div><div class="line"><a name="l00171"></a><span class="lineno">  171</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#l00261">Error.h:261</a></div></div>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00678">NEHOGOrientationBinningKernel::run()</a>, and <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00355">NESobel7x7VertKernel::run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;{</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    {</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;            <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;            <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;            <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;            <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;            <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        <span class="comment">//Doesn&#39;t make sense for planar formats:</span></div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined pixel size for given format&quot;</span>);</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;    }</div><div class="line"><a name="l00172"></a><span class="lineno">  172</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a4f6fe18760340bcec02d095b7099e923"></a>
+<a id="a4f6fe18760340bcec02d095b7099e923"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4f6fe18760340bcec02d095b7099e923">&#9670;&nbsp;</a></span>plane_idx_from_channel()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -16114,21 +18396,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The plane index of the specific channel of the specific format </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00248">248</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00249">249</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
 
-<p>References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
 
-<p>Referenced by <a class="el" href="reference_2_channel_extract_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::channel_extract()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;{</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;    {</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;        <span class="comment">// Single planar formats have a single plane</span></div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;        <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;        <span class="comment">// Multi planar formats</span></div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;        {</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;            <span class="comment">// Channel U and V share the same plane of format UV88</span></div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;            {</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;            }</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;        }</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;        {</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;            {</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;                    <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;            }</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;        }</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported format&quot;</span>);</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    }</div><div class="line"><a name="l00303"></a><span class="lineno">  303</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#l00261">Error.h:261</a></div></div>
+<p class="reference">Referenced by <a class="el" href="reference_2_channel_extract_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::channel_extract()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00107">CLChannelExtractKernel::configure()</a>, and <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00126">NEChannelExtractKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;{</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;    <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;    {</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;        <span class="comment">// Single planar formats have a single plane</span></div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;        <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;        <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;        <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;        <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;        <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;        <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;        <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;        <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;        <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;        <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;        <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;        <span class="comment">// Multi planar formats</span></div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;        <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;        <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;        {</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;            <span class="comment">// Channel U and V share the same plane of format UV88</span></div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;            {</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;            }</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;        }</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;        <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;        <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;        {</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;            <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;            {</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;                <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;                <span class="keywordflow">case</span> Channel::U:</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;                    <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;                <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;                    <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;                <span class="keywordflow">default</span>:</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;                    <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;                    <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;            }</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;        }</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported format&quot;</span>);</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;            <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;    }</div><div class="line"><a name="l00304"></a><span class="lineno">  304</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#l00261">Error.h:261</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a51a0d2ae440bc8cab3fbbe84bfea8b1d"></a>
+<a id="ab345de887f15705698d993b97d848bdc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab345de887f15705698d993b97d848bdc">&#9670;&nbsp;</a></span>print_consecutive_elements()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">void arm_compute::print_consecutive_elements </td>
+          <td class="memname">void print_consecutive_elements </td>
           <td>(</td>
           <td class="paramtype">std::ostream &amp;&#160;</td>
           <td class="paramname"><em>s</em>, </td>
@@ -16184,11 +18468,19 @@
   </dd>
 </dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01059">max_consecutive_elements_display_width_impl()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00394">394</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_i_tensor_8cpp_source.xhtml#l00074">ITensor::print()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;{</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;    <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;    {</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;            print_consecutive_elements_impl&lt;uint8_t&gt;(s, ptr, n, stream_width, element_delim);</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;            print_consecutive_elements_impl&lt;int8_t&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>int8_t *<span class="keyword">&gt;</span>(ptr), n, stream_width, element_delim);</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;            print_consecutive_elements_impl&lt;uint16_t&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>uint16_t *<span class="keyword">&gt;</span>(ptr), n, stream_width, element_delim);</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;            print_consecutive_elements_impl&lt;int16_t&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>int16_t *<span class="keyword">&gt;</span>(ptr), n, stream_width, element_delim);</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;            print_consecutive_elements_impl&lt;uint32_t&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>uint32_t *<span class="keyword">&gt;</span>(ptr), n, stream_width, element_delim);</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;            print_consecutive_elements_impl&lt;int32_t&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>int32_t *<span class="keyword">&gt;</span>(ptr), n, stream_width, element_delim);</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;            print_consecutive_elements_impl&lt;float&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span><span class="keywordtype">float</span> *<span class="keyword">&gt;</span>(ptr), n, stream_width, element_delim);</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;            print_consecutive_elements_impl&lt;half&gt;(s, <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span><a class="code" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a> *<span class="keyword">&gt;</span>(ptr), n, stream_width, element_delim);</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined element size for given data type&quot;</span>);</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;    }</div><div class="line"><a name="l00426"></a><span class="lineno">  426</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a73e2825fd61d349c5ca2f5313e3c8ea1"><div class="ttname"><a href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">arm_compute::half</a></div><div class="ttdeci">half_float::half half</div><div class="ttdoc">16-bit floating point type </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00044">Types.h:44</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa3a28b8acd21301990e06377c64e1276"></a>
+<a id="aa3a28b8acd21301990e06377c64e1276"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa3a28b8acd21301990e06377c64e1276">&#9670;&nbsp;</a></span>print_consecutive_elements_impl()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -16242,17 +18534,19 @@
   </dd>
 </dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01026">1026</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;{</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160;    <span class="keyword">using</span> print_type = <span class="keyword">typename</span> std::conditional&lt;std::is_floating_point&lt;T&gt;::value, T, <span class="keywordtype">int</span>&gt;::type;</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; n; ++i)</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160;    {</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;        <span class="comment">// Set stream width as it is not a &quot;sticky&quot; stream manipulator</span></div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;        <span class="keywordflow">if</span>(stream_width != 0)</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;        {</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;            s.width(stream_width);</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;        }</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160;</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160;        <span class="keywordflow">if</span>(std::is_same&lt;<span class="keyword">typename</span> std::decay&lt;T&gt;::type, <a class="code" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a>&gt;::value)</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;        {</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;            <span class="comment">// We use T instead of print_type here is because the std::is_floating_point&lt;half&gt; returns false and then the print_type becomes int.</span></div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;            s &lt;&lt; std::right &lt;&lt; static_cast&lt;T&gt;(ptr[i]) &lt;&lt; element_delim;</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;        }</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;        {</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;            s &lt;&lt; std::right &lt;&lt; static_cast&lt;print_type&gt;(ptr[i]) &lt;&lt; element_delim;</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;        }</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;    }</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a73e2825fd61d349c5ca2f5313e3c8ea1"><div class="ttname"><a href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">arm_compute::half</a></div><div class="ttdeci">half_float::half half</div><div class="ttdoc">16-bit floating point type </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00044">Types.h:44</a></div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01036">1036</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160;{</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160;    <span class="keyword">using</span> print_type = <span class="keyword">typename</span> std::conditional&lt;std::is_floating_point&lt;T&gt;::value, T, <span class="keywordtype">int</span>&gt;::type;</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; n; ++i)</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;    {</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;        <span class="comment">// Set stream width as it is not a &quot;sticky&quot; stream manipulator</span></div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;        <span class="keywordflow">if</span>(stream_width != 0)</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;        {</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;            s.width(stream_width);</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;        }</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;        <span class="keywordflow">if</span>(std::is_same&lt;<span class="keyword">typename</span> std::decay&lt;T&gt;::type, <a class="code" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a>&gt;::value)</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;        {</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;            <span class="comment">// We use T instead of print_type here is because the std::is_floating_point&lt;half&gt; returns false and then the print_type becomes int.</span></div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;            s &lt;&lt; std::right &lt;&lt; static_cast&lt;T&gt;(ptr[i]) &lt;&lt; element_delim;</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;        }</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;        {</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;            s &lt;&lt; std::right &lt;&lt; static_cast&lt;print_type&gt;(ptr[i]) &lt;&lt; element_delim;</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160;        }</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;    }</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a73e2825fd61d349c5ca2f5313e3c8ea1"><div class="ttname"><a href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">arm_compute::half</a></div><div class="ttdeci">half_float::half half</div><div class="ttdoc">16-bit floating point type </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00044">Types.h:44</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aefa4a4d3136d77b85cccfce344f9f37f"></a>
+<a id="ae0d288429eb20baf6da6109f3a21e6bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae0d288429eb20baf6da6109f3a21e6bb">&#9670;&nbsp;</a></span>read_file()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">std::string arm_compute::read_file </td>
+          <td class="memname">std::string read_file </td>
           <td>(</td>
           <td class="paramtype">const std::string &amp;&#160;</td>
           <td class="paramname"><em>filename</em>, </td>
@@ -16281,16 +18575,25 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The content of the file. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00078">floor_to_multiple()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00046">46</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, and <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00266">arm_compute::test::validation::out</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00340">GCKernelLibrary::create_kernel()</a>, and <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00979">CLKernelLibrary::int64_base_atomics_supported()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;{</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    std::string   <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>;</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    std::ifstream fs;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <span class="keywordflow">try</span></div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    {</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        fs.exceptions(std::ifstream::failbit | std::ifstream::badbit);</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        std::ios_base::openmode mode = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">std::ios::in</a>;</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        <span class="keywordflow">if</span>(binary)</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        {</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;            mode |= std::ios::binary;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        }</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        fs.open(filename, mode);</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        <span class="comment">// Go to the end of the file</span></div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        fs.seekg(0, std::ios::end);</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        <span class="comment">// Reserve the memory required to store the file&#39;s content</span></div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        out.reserve(fs.tellg());</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        <span class="comment">// Go back to the beginning of the file</span></div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        fs.seekg(0, std::ios::beg);</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        <span class="comment">// Copy the content of the file</span></div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        out.assign(std::istreambuf_iterator&lt;char&gt;(fs), std::istreambuf_iterator&lt;char&gt;());</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    }</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="keywordflow">catch</span>(<span class="keyword">const</span> std::ifstream::failure &amp;e)</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    {</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Accessing %s: %s&quot;</span>, filename.c_str(), e.what());</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    }</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">out</a>;</div><div class="line"><a name="l00078"></a><span class="lineno">   78</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad366eaa4cf2d106037d91c30795a5c76"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad366eaa4cf2d106037d91c30795a5c76">arm_compute::test::validation::in</a></div><div class="ttdeci">CLTensor in</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00265">Winograd.cpp:265</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_af8a8a0625e7981212a0af48deb9d2a09"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#af8a8a0625e7981212a0af48deb9d2a09">arm_compute::test::validation::out</a></div><div class="ttdeci">CLTensor out</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00266">Winograd.cpp:266</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a6452ac376d4adb94d93a93d678bb6757"></a>
+<a id="aaae2b6b1c3f4404121346a4c27b22647"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaae2b6b1c3f4404121346a4c27b22647">&#9670;&nbsp;</a></span>round()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">int arm_compute::round </td>
+          <td class="memname">int round </td>
           <td>(</td>
           <td class="paramtype">float&#160;</td>
           <td class="paramname"><em>x</em>, </td>
@@ -16320,11 +18623,21 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Rounded value of the argument x. </dd></dl>
 
-<p>Referenced by <a class="el" href="tests_2validation_2_u_n_i_t_2_utils_8cpp_source.xhtml#l00063">DATA_TEST_CASE()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00157">finalize()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00211">lktracker_stage0()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00361">lktracker_stage1()</a>, <a class="el" href="activation__layer__qa8_8cl_source.xhtml#l00030">logistic_op()</a>, <a class="el" href="pooling__layer__quantized_8cl_source.xhtml#l00080">pooling_layer_MxN_quantized_nchw()</a>, <a class="el" href="pooling__layer__quantized_8cl_source.xhtml#l00166">pooling_layer_MxN_quantized_nhwc()</a>, and <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00123">roi_pooling_layer()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_rounding_8cpp_source.xhtml#l00035">35</a> of file <a class="el" href="_rounding_8cpp_source.xhtml">Rounding.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="_toolchain_support_8h_source.xhtml#l00240">arm_compute::support::cpp11::round()</a>, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150">TO_NEAREST_EVEN</a>, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">TO_NEAREST_UP</a>, and <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06">TO_ZERO</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_asymm_helpers_8cpp_source.xhtml#l00073">arm_compute::quantization::calculate_quantized_multiplier_greater_than_one()</a>, <a class="el" href="_asymm_helpers_8cpp_source.xhtml#l00035">arm_compute::quantization::calculate_quantized_multiplier_less_than_one()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00157">finalize()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00211">lktracker_stage0()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00361">lktracker_stage1()</a>, <a class="el" href="activation__layer__qa8_8cl_source.xhtml#l00030">logistic_op()</a>, <a class="el" href="pooling__layer__quantized_8cl_source.xhtml#l00080">pooling_layer_MxN_quantized_nchw()</a>, <a class="el" href="pooling__layer__quantized_8cl_source.xhtml#l00174">pooling_layer_MxN_quantized_nhwc()</a>, and <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00123">roi_pooling_layer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;{</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keyword">using namespace </span><a class="code" href="namespacestd.xhtml">std</a>;</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <span class="keywordtype">int</span> rounded = 0;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">rounding_policy</a>)</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    {</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        <span class="keywordflow">case</span> RoundingPolicy::TO_ZERO:</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        {</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;            rounded = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(x);</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        }</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        <span class="keywordflow">case</span> RoundingPolicy::TO_NEAREST_UP:</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        {</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;            rounded = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(<a class="code" href="namespacearm__compute.xhtml#aaae2b6b1c3f4404121346a4c27b22647">support::cpp11::round</a>(x));</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        }</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        <span class="keywordflow">case</span> RoundingPolicy::TO_NEAREST_EVEN:</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        {</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;TO_NEAREST_EVEN rounding policy is not supported.&quot;</span>);</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        }</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        {</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported rounding policy.&quot;</span>);</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        }</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    }</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="keywordflow">return</span> rounded;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="namespacestd_xhtml"><div class="ttname"><a href="namespacestd.xhtml">std</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_aaae2b6b1c3f4404121346a4c27b22647"><div class="ttname"><a href="namespacearm__compute.xhtml#aaae2b6b1c3f4404121346a4c27b22647">arm_compute::round</a></div><div class="ttdeci">int round(float x, RoundingPolicy rounding_policy)</div><div class="ttdoc">Return a rounded value of x. </div><div class="ttdef"><b>Definition:</b> <a href="_rounding_8cpp_source.xhtml#l00035">Rounding.cpp:35</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a60ad1078faeaf3f59266d69ad937339f"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">arm_compute::test::validation::rounding_policy</a></div><div class="ttdeci">rounding_policy</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">PixelWiseMultiplication.cpp:168</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5e28a3911204ac952601f512c82b48f1"></a>
+<a id="a5e28a3911204ac952601f512c82b48f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e28a3911204ac952601f512c82b48f1">&#9670;&nbsp;</a></span>rounding_divide_by_pow2()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -16367,18 +18680,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the nearest division by a power-of-two using exponent </dd></dl>
 
-<p>Definition at line <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00026">26</a> of file <a class="el" href="_n_e_asymm_8inl_source.xhtml">NEAsymm.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00026">26</a> of file <a class="el" href="_n_e_asymm_8inl_source.xhtml">NEAsymm.inl</a>.</p>
 
-<p>Referenced by <a class="el" href="_n_e_asymm_8h_source.xhtml#l00074">finalize_quantization()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_n_e_asymm_8h_source.xhtml#l00074">finalize_quantization()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;{</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    <span class="keyword">const</span> int32x4_t shift_vec  = vdupq_n_s32(-exponent);</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    <span class="keyword">const</span> int32x4_t fixup      = vshrq_n_s32(vandq_s32(x, shift_vec), 31);</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <span class="keyword">const</span> int32x4_t fixed_up_x = vqaddq_s32(x, fixup);</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    <span class="keywordflow">return</span> vrshlq_s32(fixed_up_x, shift_vec);</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ac78192301777700de24d8c75667baf35"></a>
+<a id="a546c6bed3c307414e8d0934bc13259e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a546c6bed3c307414e8d0934bc13259e5">&#9670;&nbsp;</a></span>scaled_dimensions()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::pair&lt;unsigned int, unsigned int&gt; arm_compute::scaled_dimensions </td>
+          <td class="memname">const std::pair&lt; unsigned int, unsigned int &gt; scaled_dimensions </td>
           <td>(</td>
           <td class="paramtype">unsigned int&#160;</td>
           <td class="paramname"><em>width</em>, </td>
@@ -16435,11 +18750,27 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>A pair with the new width in the first position and the new height in the second. </dd></dl>
 
-<p>Referenced by <a class="el" href="_shape_calculator_8h_source.xhtml#l00341">arm_compute::misc::shape_calculator::compute_deep_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00169">arm_compute::misc::shape_calculator::compute_depthwise_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00202">arm_compute::misc::shape_calculator::compute_im2col_conv_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00376">arm_compute::misc::shape_calculator::compute_pool_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00315">arm_compute::misc::shape_calculator::compute_winograd_output_transform_shape()</a>, <a class="el" href="validation_2reference_2_convolution_layer_8cpp_source.xhtml#l00049">arm_compute::test::validation::reference::convolution_layer_nchw()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00039">arm_compute::test::validation::reference::im2col_nchw()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00139">arm_compute::test::validation::reference::im2col_nhwc_channel_first()</a>, and <a class="el" href="reference_2_locally_connected_8cpp_source.xhtml#l00041">arm_compute::test::validation::reference::locally_connected()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00352">352</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">CEIL</a>, <a class="el" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe">FLOOR</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00774">PadStrideInfo::pad_bottom()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00759">PadStrideInfo::pad_left()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00764">PadStrideInfo::pad_right()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00769">PadStrideInfo::pad_top()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00780">PadStrideInfo::round()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00733">PadStrideInfo::stride()</a>, <a class="el" href="_size2_d_8h_source.xhtml#l00077">Size2D::x()</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00086">Size2D::y()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_shape_calculator_8h_source.xhtml#l00460">arm_compute::misc::shape_calculator::compute_deep_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00216">arm_compute::misc::shape_calculator::compute_depthwise_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00283">arm_compute::misc::shape_calculator::compute_im2col_conv_shape()</a>, <a class="el" href="_pooling_layer_node_8cpp_source.xhtml#l00047">PoolingLayerNode::compute_output_descriptor()</a>, <a class="el" href="_depthwise_convolution_layer_node_8cpp_source.xhtml#l00067">DepthwiseConvolutionLayerNode::compute_output_descriptor()</a>, <a class="el" href="_convolution_layer_node_8cpp_source.xhtml#l00086">ConvolutionLayerNode::compute_output_descriptor()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00496">arm_compute::misc::shape_calculator::compute_pool_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00433">arm_compute::misc::shape_calculator::compute_winograd_output_transform_shape()</a>, <a class="el" href="_g_c_pooling_layer_kernel_8cpp_source.xhtml#l00226">GCPoolingLayerKernel::configure()</a>, <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l00335">NEPoolingLayerKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_c_l_locally_connected_layer_8cpp_source.xhtml#l00130">CLLocallyConnectedLayer::configure()</a>, <a class="el" href="_n_e_locally_connected_layer_8cpp_source.xhtml#l00124">NELocallyConnectedLayer::configure()</a>, <a class="el" href="_g_c_im2_col_kernel_8cpp_source.xhtml#l00067">GCIm2ColKernel::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00288">CLIm2ColKernel::configure()</a>, <a class="el" href="_n_e_im2_col_kernel_8cpp_source.xhtml#l00333">NEIm2ColKernel::configure()</a>, <a class="el" href="_g_c_convolution_layer_8cpp_source.xhtml#l00090">GCConvolutionLayer::configure()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00173">NEGEMMConvolutionLayer::configure()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00164">CLGEMMConvolutionLayer::configure()</a>, <a class="el" href="validation_2reference_2_convolution_layer_8cpp_source.xhtml#l00049">arm_compute::test::validation::reference::convolution_layer_nchw()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00039">arm_compute::test::validation::reference::im2col_nchw()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00093">arm_compute::test::validation::reference::im2col_nhwc()</a>, <a class="el" href="reference_2_locally_connected_8cpp_source.xhtml#l00041">arm_compute::test::validation::reference::locally_connected()</a>, <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l02030">NEPoolingLayerKernel::validate()</a>, <a class="el" href="_c_l_locally_connected_layer_8cpp_source.xhtml#l00086">CLLocallyConnectedLayer::validate()</a>, <a class="el" href="_n_e_locally_connected_layer_8cpp_source.xhtml#l00080">NELocallyConnectedLayer::validate()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00377">NEGEMMConvolutionLayer::validate()</a>, and <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00346">CLGEMMConvolutionLayer::validate()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;{</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pad_left   = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a7144874ab401f5c4e249a1115dfb5166">pad_left</a>();</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pad_top    = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a3fea0ce4e6eeee7bf3a511c31b51d44f">pad_top</a>();</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pad_right  = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a3860caeeaa259d59ccf69c3aea23f549">pad_right</a>();</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pad_bottom = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#ac49df0924d183da42cffc04cf9aba1f8">pad_bottom</a>();</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> stride_x   = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a6e324c1bd1111876469ea247da156147">stride</a>().first;</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> stride_y   = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a6e324c1bd1111876469ea247da156147">stride</a>().second;</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>       w          = 0;</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>       h          = 0;</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;    <span class="keywordflow">switch</span>(pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a711b72c2817604dfbb9d20d142882bab">round</a>())</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;    {</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;        <span class="keywordflow">case</span> DimensionRoundingType::FLOOR:</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;            w = <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span>(std::floor((static_cast&lt;float&gt;(width + pad_left + pad_right - (dilation.<a class="code" href="classarm__compute_1_1_size2_d.xhtml#a94b8468af876f5ab54020d5e9787a4f0">x</a>() * (kernel_width - 1) + 1)) / stride_x) + 1));</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;            h = <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span>(std::floor((static_cast&lt;float&gt;(height + pad_top + pad_bottom - (dilation.<a class="code" href="classarm__compute_1_1_size2_d.xhtml#aaaeb4853150b7d0e8b685fd08052924f">y</a>() * (kernel_height - 1) + 1)) / stride_y) + 1));</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;        <span class="keywordflow">case</span> DimensionRoundingType::CEIL:</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;            w = <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span>(std::ceil((static_cast&lt;float&gt;(width + pad_left + pad_right - (dilation.<a class="code" href="classarm__compute_1_1_size2_d.xhtml#a94b8468af876f5ab54020d5e9787a4f0">x</a>() * (kernel_width - 1) + 1)) / stride_x) + 1));</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;            h = <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span>(std::ceil((static_cast&lt;float&gt;(height + pad_top + pad_bottom - (dilation.<a class="code" href="classarm__compute_1_1_size2_d.xhtml#aaaeb4853150b7d0e8b685fd08052924f">y</a>() * (kernel_height - 1) + 1)) / stride_y) + 1));</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported rounding type&quot;</span>);</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;    }</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    <span class="comment">// Make sure that border operations will start from inside the input and not the padded area</span></div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    <span class="keywordflow">if</span>(((w - 1) * stride_x) &gt;= (width + pad_left))</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    {</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;        --w;</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;    }</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;    <span class="keywordflow">if</span>(((h - 1) * stride_y) &gt;= (height + pad_top))</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;    {</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;        --h;</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    }</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(((w - 1) * stride_x) &gt;= (width + pad_left));</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;    <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(((h - 1) * stride_y) &gt;= (height + pad_top));</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;    <span class="keywordflow">return</span> std::make_pair(w, h);</div><div class="line"><a name="l00392"></a><span class="lineno">  392</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a711b72c2817604dfbb9d20d142882bab"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a711b72c2817604dfbb9d20d142882bab">arm_compute::PadStrideInfo::round</a></div><div class="ttdeci">DimensionRoundingType round() const</div><div class="ttdoc">Get the rounding type. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00780">Types.h:780</a></div></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#l00337">Error.h:337</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_size2_d_xhtml_a94b8468af876f5ab54020d5e9787a4f0"><div class="ttname"><a href="classarm__compute_1_1_size2_d.xhtml#a94b8468af876f5ab54020d5e9787a4f0">arm_compute::Size2D::x</a></div><div class="ttdeci">size_t x() const</div><div class="ttdoc">Semantic accessor for width as x. </div><div class="ttdef"><b>Definition:</b> <a href="_size2_d_8h_source.xhtml#l00077">Size2D.h:77</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a3fea0ce4e6eeee7bf3a511c31b51d44f"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a3fea0ce4e6eeee7bf3a511c31b51d44f">arm_compute::PadStrideInfo::pad_top</a></div><div class="ttdeci">unsigned int pad_top() const</div><div class="ttdoc">Get the top padding. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00769">Types.h:769</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a6e324c1bd1111876469ea247da156147"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a6e324c1bd1111876469ea247da156147">arm_compute::PadStrideInfo::stride</a></div><div class="ttdeci">std::pair&lt; unsigned int, unsigned int &gt; stride() const</div><div class="ttdoc">Get the stride. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00733">Types.h:733</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a3860caeeaa259d59ccf69c3aea23f549"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a3860caeeaa259d59ccf69c3aea23f549">arm_compute::PadStrideInfo::pad_right</a></div><div class="ttdeci">unsigned int pad_right() const</div><div class="ttdoc">Get the right padding. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00764">Types.h:764</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_size2_d_xhtml_aaaeb4853150b7d0e8b685fd08052924f"><div class="ttname"><a href="classarm__compute_1_1_size2_d.xhtml#aaaeb4853150b7d0e8b685fd08052924f">arm_compute::Size2D::y</a></div><div class="ttdeci">size_t y() const</div><div class="ttdoc">Semantic accessor for height as y. </div><div class="ttdef"><b>Definition:</b> <a href="_size2_d_8h_source.xhtml#l00086">Size2D.h:86</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_ac49df0924d183da42cffc04cf9aba1f8"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#ac49df0924d183da42cffc04cf9aba1f8">arm_compute::PadStrideInfo::pad_bottom</a></div><div class="ttdeci">unsigned int pad_bottom() const</div><div class="ttdoc">Get the bottom padding. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00774">Types.h:774</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a7144874ab401f5c4e249a1115dfb5166"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a7144874ab401f5c4e249a1115dfb5166">arm_compute::PadStrideInfo::pad_left</a></div><div class="ttdeci">unsigned int pad_left() const</div><div class="ttdoc">Get the left padding. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00759">Types.h:759</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a18ec57dffc5c26864be77318111dfb2a"></a>
+<a id="a18ec57dffc5c26864be77318111dfb2a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18ec57dffc5c26864be77318111dfb2a">&#9670;&nbsp;</a></span>separate_matrix()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -16495,12 +18826,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>true if the separation was successful </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00566">566</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;{</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;    int32_t min_col     = -1;</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;    int16_t min_col_val = -1;</div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;</div><div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;    <span class="keywordflow">for</span>(int32_t i = 0; i &lt; size; ++i)</div><div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;    {</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[i] != 0 &amp;&amp; (min_col &lt; 0 || abs(min_col_val) &gt; abs(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[i])))</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;        {</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;            min_col     = i;</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;            min_col_val = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[i];</div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;        }</div><div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;    }</div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;</div><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;    <span class="keywordflow">if</span>(min_col &lt; 0)</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;    {</div><div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;    }</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;    <span class="keywordflow">for</span>(uint32_t j = 0; j &lt; size; ++j)</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;        conv_col[j] = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[min_col + j * size];</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;</div><div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;    <span class="keywordflow">for</span>(uint32_t i = 0; i &lt; size; i++)</div><div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;    {</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;        <span class="keywordflow">if</span>(static_cast&lt;int&gt;(i) == min_col)</div><div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;        {</div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;            conv_row[i] = 1;</div><div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;        }</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;        {</div><div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;            int16_t coeff = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[i] / <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[min_col];</div><div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;</div><div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;            <span class="keywordflow">for</span>(uint32_t j = 1; j &lt; size; ++j)</div><div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;            {</div><div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;                <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[i + j * size] != (conv_col[j] * coeff))</div><div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;                {</div><div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;                    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;                }</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;            }</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;</div><div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;            conv_row[i] = coeff;</div><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;        }</div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;    }</div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;</div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_adf88bb8e946175c496fb362aa458128b"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">arm_compute::test::validation::conv</a></div><div class="ttdeci">int16_t conv[25]</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00140">Convolution.cpp:140</a></div></div>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00567">567</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_convolution_8cpp_source.xhtml#l00056">CLConvolutionSquare&lt; matrix_size &gt;::configure()</a>, and <a class="el" href="_n_e_convolution_8cpp_source.xhtml#l00057">NEConvolutionSquare&lt; matrix_size &gt;::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;{</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;    int32_t min_col     = -1;</div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;    int16_t min_col_val = -1;</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;    <span class="keywordflow">for</span>(int32_t i = 0; i &lt; size; ++i)</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;    {</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[i] != 0 &amp;&amp; (min_col &lt; 0 || abs(min_col_val) &gt; abs(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[i])))</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;        {</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;            min_col     = i;</div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;            min_col_val = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[i];</div><div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;        }</div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;    }</div><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;    <span class="keywordflow">if</span>(min_col &lt; 0)</div><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">return</span> <span class="keyword">false</span>;</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;</div><div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;    <span class="keywordflow">for</span>(uint32_t j = 0; j &lt; size; ++j)</div><div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;    {</div><div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;        conv_col[j] = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[min_col + j * size];</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;    }</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">for</span>(uint32_t i = 0; i &lt; size; i++)</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;    {</div><div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;        <span class="keywordflow">if</span>(static_cast&lt;int&gt;(i) == min_col)</div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;        {</div><div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;            conv_row[i] = 1;</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;        }</div><div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;        <span class="keywordflow">else</span></div><div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;        {</div><div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;            int16_t coeff = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[i] / <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[min_col];</div><div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;</div><div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;            <span class="keywordflow">for</span>(uint32_t j = 1; j &lt; size; ++j)</div><div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;            {</div><div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;                <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">conv</a>[i + j * size] != (conv_col[j] * coeff))</div><div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;                {</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;                    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;                }</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;            }</div><div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;</div><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;            conv_row[i] = coeff;</div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;        }</div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;    }</div><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="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_adf88bb8e946175c496fb362aa458128b"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#adf88bb8e946175c496fb362aa458128b">arm_compute::test::validation::conv</a></div><div class="ttdeci">int16_t conv[25]</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00140">Convolution.cpp:140</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aafd98bfd4651f36d691ddd2631a6e5a0"></a>
+<a id="aafd98bfd4651f36d691ddd2631a6e5a0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafd98bfd4651f36d691ddd2631a6e5a0">&#9670;&nbsp;</a></span>set_data_layout_if_unknown()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -16542,17 +18877,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the data type has been changed. </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00267">267</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00267">267</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#abb9481fe056b9749f9b4c08db101cc15">ITensorInfo::set_data_layout()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+<p class="reference">References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#abb9481fe056b9749f9b4c08db101cc15">ITensorInfo::set_data_layout()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;{</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.data_layout() == DataLayout::UNKNOWN)</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;    {</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.set_data_layout(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a>);</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    }</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00227">Winograd.cpp:227</a></div></div>
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;{</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.data_layout() == DataLayout::UNKNOWN)</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;    {</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.set_data_layout(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a>);</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    }</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00251">Winograd.cpp:251</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad19446be52c2c162fa678b9ae236f445"></a>
+<a id="ad19446be52c2c162fa678b9ae236f445"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad19446be52c2c162fa678b9ae236f445">&#9670;&nbsp;</a></span>set_data_type_if_unknown()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -16594,17 +18931,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the data type has been changed. </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00256">256</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00256">256</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a9ebcdce876b4cd07736afa47d50154de">ITensorInfo::set_data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+<p class="reference">References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a9ebcdce876b4cd07736afa47d50154de">ITensorInfo::set_data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;{</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.data_type() == DataType::UNKNOWN)</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    {</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.set_data_type(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>);</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    }</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00088">GEMM.cpp:88</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00174">ArithmeticSubtraction.cpp:174</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a8076ba239b6681067b6cfea7f773a39f"></a>
+<a id="a8076ba239b6681067b6cfea7f773a39f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8076ba239b6681067b6cfea7f773a39f">&#9670;&nbsp;</a></span>set_format_if_unknown()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -16646,16 +18985,18 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the format has been changed. </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00245">245</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00245">245</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a17394f0f7aea22d9b2d4c6f33bfa69ca">ITensorInfo::set_format()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+<p class="reference">References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a17394f0f7aea22d9b2d4c6f33bfa69ca">ITensorInfo::set_format()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_n_e_box3x3_kernel_8cpp_source.xhtml#l00114">NEBox3x3Kernel::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00250">NEAccumulateKernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_bitwise_not_kernel_8cpp_source.xhtml#l00056">NEBitwiseNotKernel::configure()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00061">NEBitwiseAndKernel::configure()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00057">NEBitwiseOrKernel::configure()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00057">NEBitwiseXorKernel::configure()</a>, <a class="el" href="_g_c_arithmetic_addition_kernel_8cpp_source.xhtml#l00091">GCArithmeticAdditionKernel::configure()</a>, <a class="el" href="_n_e_absolute_difference_kernel_8cpp_source.xhtml#l00133">NEAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00877">NEGradientKernel::configure()</a>, <a class="el" href="_n_e_cumulative_distribution_kernel_8cpp_source.xhtml#l00050">NECumulativeDistributionKernel::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00286">NEAccumulateWeightedKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00970">NEEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00329">NEAccumulateSquaredKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01059">NEEdgeTraceKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;{</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.data_type() == DataType::UNKNOWN)</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    {</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.set_format(format);</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;    }</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a75509469ec2689ec143f4a37bbcb4437"></a>
+<a id="a75509469ec2689ec143f4a37bbcb4437"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a75509469ec2689ec143f4a37bbcb4437">&#9670;&nbsp;</a></span>set_quantization_info_if_empty()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -16697,17 +19038,19 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the quantization info has been changed. </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00278">278</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00278">278</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00197">QuantizationInfo::empty()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00992">is_data_type_quantized_asymmetric()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a3f3e1a3200223e6a304a533b1016e749">ITensorInfo::quantization_info()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a575d37eaf8a905c8ca3c0250757c2b81">ITensorInfo::set_quantization_info()</a>.</p>
+<p class="reference">References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00202">QuantizationInfo::empty()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00996">is_data_type_quantized_asymmetric()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a3f3e1a3200223e6a304a533b1016e749">ITensorInfo::quantization_info()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a575d37eaf8a905c8ca3c0250757c2b81">ITensorInfo::set_quantization_info()</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;{</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.quantization_info().empty() &amp;&amp; (<a class="code" href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">is_data_type_quantized_asymmetric</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.data_type())))</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;    {</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.set_quantization_info(quantization_info);</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    }</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
-<div class="ttc" id="namespacearm__compute_xhtml_a14f46283f316e7f0fad301d5c1507e9f"><div class="ttname"><a href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">arm_compute::is_data_type_quantized_asymmetric</a></div><div class="ttdeci">bool is_data_type_quantized_asymmetric(DataType dt)</div><div class="ttdoc">Check if a given data type is of asymmetric quantized type. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00992">Utils.h:992</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a14f46283f316e7f0fad301d5c1507e9f"><div class="ttname"><a href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">arm_compute::is_data_type_quantized_asymmetric</a></div><div class="ttdeci">bool is_data_type_quantized_asymmetric(DataType dt)</div><div class="ttdoc">Check if a given data type is of asymmetric quantized type. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00996">Utils.h:996</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9d1a839c51134b2ae171a2264c541b6f"></a>
+<a id="a9d1a839c51134b2ae171a2264c541b6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d1a839c51134b2ae171a2264c541b6f">&#9670;&nbsp;</a></span>set_shape_if_empty()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -16749,22 +19092,108 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the shape has been changed. </dd></dl>
 
-<p>Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00234">234</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00234">234</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
 
-<p>References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a12a4f1190952613e36b44846962e26bb">ITensorInfo::set_tensor_shape()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
+<p class="reference">References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a12a4f1190952613e36b44846962e26bb">ITensorInfo::set_tensor_shape()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_n_e_box3x3_kernel_8cpp_source.xhtml#l00114">NEBox3x3Kernel::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00250">NEAccumulateKernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_depth_convert_layer_kernel_8cpp_source.xhtml#l00095">CLDepthConvertLayerKernel::configure()</a>, <a class="el" href="_n_e_bitwise_not_kernel_8cpp_source.xhtml#l00056">NEBitwiseNotKernel::configure()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00061">NEBitwiseAndKernel::configure()</a>, <a class="el" href="_g_c_arithmetic_addition_kernel_8cpp_source.xhtml#l00091">GCArithmeticAdditionKernel::configure()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00057">NEBitwiseOrKernel::configure()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00057">NEBitwiseXorKernel::configure()</a>, <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>, <a class="el" href="_n_e_absolute_difference_kernel_8cpp_source.xhtml#l00133">NEAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00877">NEGradientKernel::configure()</a>, <a class="el" href="_n_e_depth_convert_layer_kernel_8cpp_source.xhtml#l00096">NEDepthConvertLayerKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00324">NEConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00286">NEAccumulateWeightedKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00666">NESeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00970">NEEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00329">NEAccumulateSquaredKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01103">NESeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01059">NEEdgeTraceKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01427">NEConvolutionRectangleKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00553">permute()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;{</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.tensor_shape().total_size() == 0)</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;    {</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.set_tensor_shape(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>);</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;    }</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
 <div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ac955c978e18cc9bf6daea31f13076fba"></a>
+<a id="a671b1da70aa3efc02c508648ae2d81b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a671b1da70aa3efc02c508648ae2d81b5">&#9670;&nbsp;</a></span>sqadd()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_activation_func </td>
+          <td class="memname">T arm_compute::sqadd </td>
+          <td>(</td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>b</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a705ed42150ffbe645f7ba2fb5d0a5bb6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a705ed42150ffbe645f7ba2fb5d0a5bb6">&#9670;&nbsp;</a></span>sqmul()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">T arm_compute::sqmul </td>
+          <td>(</td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>b</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a7462bb232b41864413a4d8603a660d16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7462bb232b41864413a4d8603a660d16">&#9670;&nbsp;</a></span>sqsub()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">T arm_compute::sqsub </td>
+          <td>(</td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>b</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a635f1895d94050329b7da12850d1a056"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a635f1895d94050329b7da12850d1a056">&#9670;&nbsp;</a></span>string_from_activation_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const std::string &amp; string_from_activation_func </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">ActivationLayerInfo::ActivationFunction</a>&#160;</td>
           <td class="paramname"><em>act</em></td><td>)</td>
@@ -16782,16 +19211,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the activation function. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00162">162</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa7d8a220d2262f9d6c658d549ee12cf2c">ActivationLayerInfo::ABS</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaacc516ab03b98f1c908ddf6ed4a7c45e9">ActivationLayerInfo::BOUNDED_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaac7e80a3de04936f4e423e1b564fdca10">ActivationLayerInfo::LEAKY_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaaaac544aacc3615aada24897a215f5046">ActivationLayerInfo::LINEAR</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa72ee60fba0509af07cbbd91398d8db9d">ActivationLayerInfo::LOGISTIC</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaaab1d4411a9e7f5e82002512cddfdc33a">ActivationLayerInfo::LU_BOUNDED_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaad346bb4679d29be241279f15d7795c1c">ActivationLayerInfo::RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaadcc44a50c791a591c74e00ecdda7c58d">ActivationLayerInfo::SOFT_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa36875f2500a09ee35d0bb7eb8c0b91b0">ActivationLayerInfo::SQRT</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa12dec4e1f7ec620651b2b95c440ffac0">ActivationLayerInfo::SQUARE</a>, and <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa143c8c6f51b9bb893ce71e38702e3cc1">ActivationLayerInfo::TANH</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00141">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_batch_normalization_layer_kernel_8cpp_source.xhtml#l00139">GCBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;{</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;    <span class="keyword">static</span> std::map&lt;ActivationLayerInfo::ActivationFunction, const std::string&gt; act_map =</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;    {</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        { ActivationLayerInfo::ActivationFunction::ABS, <span class="stringliteral">&quot;ABS&quot;</span> },</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        { ActivationLayerInfo::ActivationFunction::LINEAR, <span class="stringliteral">&quot;LINEAR&quot;</span> },</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        { ActivationLayerInfo::ActivationFunction::LOGISTIC, <span class="stringliteral">&quot;LOGISTIC&quot;</span> },</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        { ActivationLayerInfo::ActivationFunction::RELU, <span class="stringliteral">&quot;RELU&quot;</span> },</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        { ActivationLayerInfo::ActivationFunction::BOUNDED_RELU, <span class="stringliteral">&quot;BRELU&quot;</span> },</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        { ActivationLayerInfo::ActivationFunction::LU_BOUNDED_RELU, <span class="stringliteral">&quot;LU_BRELU&quot;</span> },</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;        { ActivationLayerInfo::ActivationFunction::LEAKY_RELU, <span class="stringliteral">&quot;LRELU&quot;</span> },</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        { ActivationLayerInfo::ActivationFunction::SOFT_RELU, <span class="stringliteral">&quot;SRELU&quot;</span> },</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;        { ActivationLayerInfo::ActivationFunction::SQRT, <span class="stringliteral">&quot;SQRT&quot;</span> },</div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        { ActivationLayerInfo::ActivationFunction::SQUARE, <span class="stringliteral">&quot;SQUARE&quot;</span> },</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        { ActivationLayerInfo::ActivationFunction::TANH, <span class="stringliteral">&quot;TANH&quot;</span> },</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;    };</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;    <span class="keywordflow">return</span> act_map[act];</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="abd15add5c6c7de5c8205ce236875aadd"></a>
+<a id="ae0204b49ec236bbaedb1cf96def276d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae0204b49ec236bbaedb1cf96def276d4">&#9670;&nbsp;</a></span>string_from_border_mode()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_border_mode </td>
+          <td class="memname">const std::string &amp; string_from_border_mode </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a>&#160;</td>
           <td class="paramname"><em>border_mode</em></td><td>)</td>
@@ -16809,16 +19244,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the border mode. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00133">arm_compute::test::validation::border_mode</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">CONSTANT</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">REPLICATE</a>, and <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_fill_border_kernel_8cpp_source.xhtml#l00062">CLFillBorderKernel::configure()</a>, <a class="el" href="_g_c_fill_border_kernel_8cpp_source.xhtml#l00060">GCFillBorderKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;{</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;    <span class="keyword">static</span> std::map&lt;BorderMode, const std::string&gt; border_mode_map =</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    {</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;        { BorderMode::UNDEFINED, <span class="stringliteral">&quot;UNDEFINED&quot;</span> },</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;        { BorderMode::CONSTANT, <span class="stringliteral">&quot;CONSTANT&quot;</span> },</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;        { BorderMode::REPLICATE, <span class="stringliteral">&quot;REPLICATE&quot;</span> },</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    };</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    <span class="keywordflow">return</span> border_mode_map[<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5471e46933e7a9c4709972d91fc4ea65">border_mode</a>];</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a5471e46933e7a9c4709972d91fc4ea65"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a5471e46933e7a9c4709972d91fc4ea65">arm_compute::test::validation::border_mode</a></div><div class="ttdeci">border_mode</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00133">Convolution.cpp:133</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a106c203dd6af234d38452ea0ee7b2ddc"></a>
+<a id="af0dfcd19fb6510cd3c303db6c4583ee6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af0dfcd19fb6510cd3c303db6c4583ee6">&#9670;&nbsp;</a></span>string_from_channel()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_channel </td>
+          <td class="memname">const std::string &amp; string_from_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>
@@ -16836,16 +19278,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the channel. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00106">106</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53">C0</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">C1</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4">C2</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c">C3</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;{</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <span class="keyword">static</span> std::map&lt;Channel, const std::string&gt; channels_map =</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    {</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        { Channel::UNKNOWN, <span class="stringliteral">&quot;UNKNOWN&quot;</span> },</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        { Channel::R, <span class="stringliteral">&quot;R&quot;</span> },</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        { Channel::G, <span class="stringliteral">&quot;G&quot;</span> },</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        { Channel::B, <span class="stringliteral">&quot;B&quot;</span> },</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        { Channel::A, <span class="stringliteral">&quot;A&quot;</span> },</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        { Channel::Y, <span class="stringliteral">&quot;Y&quot;</span> },</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        { Channel::U, <span class="stringliteral">&quot;U&quot;</span> },</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        { Channel::V, <span class="stringliteral">&quot;V&quot;</span> },</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        { Channel::C0, <span class="stringliteral">&quot;C0&quot;</span> },</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        { Channel::C1, <span class="stringliteral">&quot;C1&quot;</span> },</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        { Channel::C2, <span class="stringliteral">&quot;C2&quot;</span> },</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        { Channel::C3, <span class="stringliteral">&quot;C3&quot;</span> }</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    };</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <span class="keywordflow">return</span> channels_map[channel];</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa7755f939796ad7076886813ff89ed77"></a>
+<a id="a56b9e25c2e8731ca5488e7b3ccd66f58"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56b9e25c2e8731ca5488e7b3ccd66f58">&#9670;&nbsp;</a></span>string_from_data_layout()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_data_layout </td>
+          <td class="memname">const std::string &amp; string_from_data_layout </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>&#160;</td>
           <td class="paramname"><em>dl</em></td><td>)</td>
@@ -16863,16 +19311,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the data layout. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00127">127</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00094">CLChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00083">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00062">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_depthwise_weights_reshape_kernel_8cpp_source.xhtml#l00069">CLDepthwiseWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00097">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00184">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00063">CLDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_c_l_arithmetic_addition_kernel_8cpp_source.xhtml#l00120">CLArithmeticAdditionKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00064">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_output_stage_kernel_8cpp_source.xhtml#l00129">CLDirectConvolutionLayerOutputStageKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00102">CLWinogradFilterTransformKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00136">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00288">CLIm2ColKernel::configure()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00708">error_on_data_layout_not_in()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;{</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    <span class="keyword">static</span> std::map&lt;DataLayout, const std::string&gt; dl_map =</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    {</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        { DataLayout::UNKNOWN, <span class="stringliteral">&quot;UNKNOWN&quot;</span> },</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        { DataLayout::NCHW, <span class="stringliteral">&quot;NCHW&quot;</span> },</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        { DataLayout::NHWC, <span class="stringliteral">&quot;NHWC&quot;</span> },</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    };</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    <span class="keywordflow">return</span> dl_map[dl];</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aefa1d9648995e5eccc693c690e27aa88"></a>
+<a id="a142b55a483cadf4e1068a1a09a55e8e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a142b55a483cadf4e1068a1a09a55e8e9">&#9670;&nbsp;</a></span>string_from_data_type()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_data_type </td>
+          <td class="memname">const std::string &amp; string_from_data_type </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
           <td class="paramname"><em>dt</em></td><td>)</td>
@@ -16890,16 +19344,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the data type. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00656">error_on_data_type_not_in()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00139">139</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00141">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_flatten_layer_kernel_8cpp_source.xhtml#l00085">CLFlattenLayerKernel::configure()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00094">CLChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00108">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_locally_connected_matrix_multiply_kernel_8cpp_source.xhtml#l00084">CLLocallyConnectedMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00097">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00184">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00095">CLWidthConcatenate2TensorsKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00079">CLGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_arithmetic_addition_kernel_8cpp_source.xhtml#l00120">CLArithmeticAdditionKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00101">CLWidthConcatenate4TensorsKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00220">CLGEMMLowpMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00221">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00136">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00104">CLStridedSliceKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_n_e_arithmetic_subtraction_kernel_8cpp_source.xhtml#l00401">NEArithmeticSubtractionKernel::configure()</a>, <a class="el" href="_n_e_arithmetic_addition_kernel_8cpp_source.xhtml#l00410">NEArithmeticAdditionKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00118">CLGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_c_l_col2_im_kernel_8cpp_source.xhtml#l00090">CLCol2ImKernel::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00288">CLIm2ColKernel::configure()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00656">error_on_data_type_not_in()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;{</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    <span class="keyword">static</span> std::map&lt;DataType, const std::string&gt; dt_map =</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    {</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        { DataType::UNKNOWN, <span class="stringliteral">&quot;UNKNOWN&quot;</span> },</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        { DataType::S8, <span class="stringliteral">&quot;S8&quot;</span> },</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        { DataType::U8, <span class="stringliteral">&quot;U8&quot;</span> },</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        { DataType::S16, <span class="stringliteral">&quot;S16&quot;</span> },</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        { DataType::U16, <span class="stringliteral">&quot;U16&quot;</span> },</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        { DataType::S32, <span class="stringliteral">&quot;S32&quot;</span> },</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        { DataType::U32, <span class="stringliteral">&quot;U32&quot;</span> },</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        { DataType::S64, <span class="stringliteral">&quot;S64&quot;</span> },</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        { DataType::U64, <span class="stringliteral">&quot;U64&quot;</span> },</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        { DataType::F16, <span class="stringliteral">&quot;F16&quot;</span> },</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        { DataType::F32, <span class="stringliteral">&quot;F32&quot;</span> },</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        { DataType::F64, <span class="stringliteral">&quot;F64&quot;</span> },</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        { DataType::SIZET, <span class="stringliteral">&quot;SIZET&quot;</span> },</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        { DataType::QASYMM8, <span class="stringliteral">&quot;QASYMM8&quot;</span> },</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    };</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    <span class="keywordflow">return</span> dt_map[dt];</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9c92c867fc64454545668d87b20979eb"></a>
+<a id="a8b82da7b5e0f6192f415ac347c9e0555"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8b82da7b5e0f6192f415ac347c9e0555">&#9670;&nbsp;</a></span>string_from_format()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_format </td>
+          <td class="memname">const std::string &amp; string_from_format </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
           <td class="paramname"><em>format</em></td><td>)</td>
@@ -16917,16 +19377,55 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the format. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00623">error_on_format_not_in()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00080">80</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00048">CLColorConvertKernel::configure()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00049">CLChannelCombineKernel::configure()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00623">error_on_format_not_in()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;{</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <span class="keyword">static</span> std::map&lt;Format, const std::string&gt; formats_map =</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    {</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        { Format::UNKNOWN, <span class="stringliteral">&quot;UNKNOWN&quot;</span> },</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        { Format::U8, <span class="stringliteral">&quot;U8&quot;</span> },</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        { Format::S16, <span class="stringliteral">&quot;S16&quot;</span> },</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        { Format::U16, <span class="stringliteral">&quot;U16&quot;</span> },</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        { Format::S32, <span class="stringliteral">&quot;S32&quot;</span> },</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        { Format::U32, <span class="stringliteral">&quot;U32&quot;</span> },</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        { Format::F16, <span class="stringliteral">&quot;F16&quot;</span> },</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        { Format::F32, <span class="stringliteral">&quot;F32&quot;</span> },</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        { Format::UV88, <span class="stringliteral">&quot;UV88&quot;</span> },</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        { Format::RGB888, <span class="stringliteral">&quot;RGB888&quot;</span> },</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        { Format::RGBA8888, <span class="stringliteral">&quot;RGBA8888&quot;</span> },</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        { Format::YUV444, <span class="stringliteral">&quot;YUV444&quot;</span> },</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        { Format::YUYV422, <span class="stringliteral">&quot;YUYV422&quot;</span> },</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        { Format::NV12, <span class="stringliteral">&quot;NV12&quot;</span> },</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        { Format::NV21, <span class="stringliteral">&quot;NV21&quot;</span> },</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        { Format::IYUV, <span class="stringliteral">&quot;IYUV&quot;</span> },</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        { Format::UYVY422, <span class="stringliteral">&quot;UYVY422&quot;</span> }</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    };</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="keywordflow">return</span> formats_map[format];</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ade34f5e72f050fd3665f3294dfb15850"></a>
+<a id="a291164a04581bf953aa65ae87cc201a2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a291164a04581bf953aa65ae87cc201a2">&#9670;&nbsp;</a></span>string_from_gemmlowp_output_stage()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_interpolation_policy </td>
+          <td class="memname">const std::string &amp; string_from_gemmlowp_output_stage </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864">GEMMLowpOutputStageType</a>&#160;</td>
+          <td class="paramname"><em>output_stage</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Translates a given GEMMLowp output stage to a string. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">output_stage</td><td><a class="el" href="structarm__compute_1_1_g_e_m_m_lowp_output_stage_info.xhtml">GEMMLowpOutputStageInfo</a> to be translated to string.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The string describing the GEMMLowp output stage </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00255">255</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693">NONE</a>, <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b">QUANTIZE_DOWN</a>, <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca">QUANTIZE_DOWN_FIXEDPOINT</a>, and <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c">QUANTIZE_DOWN_FLOAT</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_g_e_m_m_lowp_offset_contribution_output_stage_kernel_8cpp_source.xhtml#l00161">CLGEMMLowpOffsetContributionOutputStageKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;{</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;    <span class="keyword">static</span> std::map&lt;GEMMLowpOutputStageType, const std::string&gt; output_stage_map =</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    {</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;        { GEMMLowpOutputStageType::NONE, <span class="stringliteral">&quot;&quot;</span> },</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;        { GEMMLowpOutputStageType::QUANTIZE_DOWN, <span class="stringliteral">&quot;quantize_down&quot;</span> },</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;        { GEMMLowpOutputStageType::QUANTIZE_DOWN_FIXEDPOINT, <span class="stringliteral">&quot;quantize_down_fixedpoint&quot;</span> },</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;        { GEMMLowpOutputStageType::QUANTIZE_DOWN_FLOAT, <span class="stringliteral">&quot;quantize_down_float&quot;</span> }</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    };</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;    <span class="keywordflow">return</span> output_stage_map[output_stage];</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a3e4a3ad379526db61e1ebf469b455f83"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3e4a3ad379526db61e1ebf469b455f83">&#9670;&nbsp;</a></span>string_from_interpolation_policy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const std::string &amp; string_from_interpolation_policy </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a>&#160;</td>
           <td class="paramname"><em>policy</em></td><td>)</td>
@@ -16944,16 +19443,23 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the interpolation policy. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00207">207</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>, and <a class="el" href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">arm_compute::test::validation::policy</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_warp_perspective_kernel_8cpp_source.xhtml#l00061">CLWarpPerspectiveKernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00047">GCScaleKernel::configure()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;{</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    <span class="keyword">static</span> std::map&lt;InterpolationPolicy, const std::string&gt; interpolation_policy_map =</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    {</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        { InterpolationPolicy::AREA, <span class="stringliteral">&quot;AREA&quot;</span> },</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        { InterpolationPolicy::BILINEAR, <span class="stringliteral">&quot;BILINEAR&quot;</span> },</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        { InterpolationPolicy::NEAREST_NEIGHBOR, <span class="stringliteral">&quot;NEAREST_NEIGHBOUR&quot;</span> },</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    };</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;    <span class="keywordflow">return</span> interpolation_policy_map[<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>];</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">ArithmeticSubtraction.cpp:175</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a018795ab2489d17309e158ff5c060ab1"></a>
+<a id="a067481a9a245a2ee831a650e72a377ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a067481a9a245a2ee831a650e72a377ce">&#9670;&nbsp;</a></span>string_from_matrix_pattern()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_matrix_pattern </td>
+          <td class="memname">const std::string &amp; string_from_matrix_pattern </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a>&#160;</td>
           <td class="paramname"><em>pattern</em></td><td>)</td>
@@ -16971,16 +19477,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the matrix pattern. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00182">182</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">BOX</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">CROSS</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">DISK</a>, and <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">OTHER</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_non_linear_filter_kernel_8cpp_source.xhtml#l00056">CLNonLinearFilterKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;{</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;    <span class="keyword">static</span> std::map&lt;MatrixPattern, const std::string&gt; pattern_map =</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    {</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        { MatrixPattern::BOX, <span class="stringliteral">&quot;BOX&quot;</span> },</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        { MatrixPattern::CROSS, <span class="stringliteral">&quot;CROSS&quot;</span> },</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;        { MatrixPattern::DISK, <span class="stringliteral">&quot;DISK&quot;</span> },</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;        { MatrixPattern::OTHER, <span class="stringliteral">&quot;OTHER&quot;</span> },</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    };</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;    <span class="keywordflow">return</span> pattern_map[pattern];</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a14831547f57ecf5f0deef888ad41ad30"></a>
+<a id="a99248d472f05dbf03ac613620f5acbbb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99248d472f05dbf03ac613620f5acbbb">&#9670;&nbsp;</a></span>string_from_non_linear_filter_function()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_non_linear_filter_function </td>
+          <td class="memname">const std::string &amp; string_from_non_linear_filter_function </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a>&#160;</td>
           <td class="paramname"><em>function</em></td><td>)</td>
@@ -16998,16 +19510,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the non linear function. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00195">195</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>, <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">MEDIAN</a>, and <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653">MIN</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_non_linear_filter_kernel_8cpp_source.xhtml#l00056">CLNonLinearFilterKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;{</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    <span class="keyword">static</span> std::map&lt;NonLinearFilterFunction, const std::string&gt; func_map =</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    {</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        { NonLinearFilterFunction::MAX, <span class="stringliteral">&quot;MAX&quot;</span> },</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        { NonLinearFilterFunction::MEDIAN, <span class="stringliteral">&quot;MEDIAN&quot;</span> },</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        { NonLinearFilterFunction::MIN, <span class="stringliteral">&quot;MIN&quot;</span> },</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    };</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    <span class="keywordflow">return</span> func_map[<span class="keyword">function</span>];</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afb5698af5404d5d11e3516c87b6e7041"></a>
+<a id="a0569839ee85ad0e35edaaf3b4c80d706"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0569839ee85ad0e35edaaf3b4c80d706">&#9670;&nbsp;</a></span>string_from_norm_type()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_norm_type </td>
+          <td class="memname">const std::string &amp; string_from_norm_type </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a>&#160;</td>
           <td class="paramname"><em>type</em></td><td>)</td>
@@ -17025,16 +19543,69 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the normalization type. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00231">231</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">CROSS_MAP</a>, <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">IN_MAP_1D</a>, and <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">IN_MAP_2D</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;{</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;    <span class="keyword">static</span> std::map&lt;NormType, const std::string&gt; norm_type_map =</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;    {</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;        { NormType::IN_MAP_1D, <span class="stringliteral">&quot;IN_MAP_1D&quot;</span> },</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        { NormType::IN_MAP_2D, <span class="stringliteral">&quot;IN_MAP_2D&quot;</span> },</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;        { NormType::CROSS_MAP, <span class="stringliteral">&quot;CROSS_MAP&quot;</span> },</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;    };</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;    <span class="keywordflow">return</span> norm_type_map[type];</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a84a03e85d2c40bf54ec8cdd5e3715c58"></a>
+<a id="ad6eaf2181f8a8c418acaf3af76239997"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6eaf2181f8a8c418acaf3af76239997">&#9670;&nbsp;</a></span>string_from_pixel_value()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_pooling_type </td>
+          <td class="memname">std::string string_from_pixel_value </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_pixel_value.xhtml">PixelValue</a> &amp;&#160;</td>
+          <td class="paramname"><em>value</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <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>Convert a <a class="el" href="classarm__compute_1_1_pixel_value.xhtml" title="Class describing the value of a pixel for any image format. ">PixelValue</a> to a string, represented through the specific data type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The <a class="el" href="classarm__compute_1_1_pixel_value.xhtml" title="Class describing the value of a pixel for any image format. ">PixelValue</a> to convert </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">data_type</td><td>The type to be used to convert the <code>value</code> </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>String representation of the <a class="el" href="classarm__compute_1_1_pixel_value.xhtml" title="Class describing the value of a pixel for any image format. ">PixelValue</a> through the given data type. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00268">268</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00042">CLMemsetKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;{</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;    std::stringstream ss;</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;    std::string       converted_string;</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>)</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;    {</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;        <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;        <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;            <span class="comment">// Needs conversion to 32 bit, otherwise interpreted as ASCII values</span></div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;            ss &lt;&lt; uint32_t(value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;uint8_t&gt;());</div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;            converted_string = ss.str();</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;        <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;            <span class="comment">// Needs conversion to 32 bit, otherwise interpreted as ASCII values</span></div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;            ss &lt;&lt; int32_t(value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;int8_t&gt;());</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;            converted_string = ss.str();</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;        <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;            ss &lt;&lt; value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;uint16_t&gt;();</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;            converted_string = ss.str();</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;        <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;            ss &lt;&lt; value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;int16_t&gt;();</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;            converted_string = ss.str();</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;        <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;            ss &lt;&lt; value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;uint32_t&gt;();</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;            converted_string = ss.str();</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;        <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;            ss &lt;&lt; value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;int32_t&gt;();</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;            converted_string = ss.str();</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;            converted_string = <a class="code" href="namespacearm__compute.xhtml#a9cd394c15b73f79ca1d98f5328064be2">float_to_string_with_full_precision</a>(value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;<span class="keywordtype">float</span>&gt;());</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;        <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;            static_assert(<span class="keyword">sizeof</span>(<a class="code" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a>) == 2, <span class="stringliteral">&quot;Half must be 16 bit&quot;</span>);</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;            ss &lt;&lt; value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;<a class="code" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a>&gt;();</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;            converted_string = ss.str();</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;        <span class="keywordflow">default</span>:</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;            <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not handled&quot;</span>);</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;    }</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    <span class="keywordflow">return</span> converted_string;</div><div class="line"><a name="l00315"></a><span class="lineno">  315</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#l00261">Error.h:261</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_pixel_value_xhtml_a66c4c1f8b1962d71162d7ac0b3ef65bc"><div class="ttname"><a href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">arm_compute::PixelValue::get</a></div><div class="ttdeci">void get(uint8_t &amp;v) const</div><div class="ttdoc">Interpret the pixel value as a U8. </div><div class="ttdef"><b>Definition:</b> <a href="_pixel_value_8h_source.xhtml#l00157">PixelValue.h:157</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a73e2825fd61d349c5ca2f5313e3c8ea1"><div class="ttname"><a href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">arm_compute::half</a></div><div class="ttdeci">half_float::half half</div><div class="ttdoc">16-bit floating point type </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00044">Types.h:44</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00174">ArithmeticSubtraction.cpp:174</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_a9cd394c15b73f79ca1d98f5328064be2"><div class="ttname"><a href="namespacearm__compute.xhtml#a9cd394c15b73f79ca1d98f5328064be2">arm_compute::float_to_string_with_full_precision</a></div><div class="ttdeci">std::string float_to_string_with_full_precision(float val)</div><div class="ttdoc">Create a string with the float in full precision. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l01013">Utils.h:1013</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a1040394085749e4d02a0d4350493ec94"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1040394085749e4d02a0d4350493ec94">&#9670;&nbsp;</a></span>string_from_pooling_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const std::string &amp; string_from_pooling_type </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a>&#160;</td>
           <td class="paramname"><em>type</em></td><td>)</td>
@@ -17052,16 +19623,22 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the pooling type. </dd></dl>
 
-<p>Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00761">data_type_for_convolution_matrix()</a>.</p>
+<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00243">243</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
 
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">AVG</a>, <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">L2</a>, and <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_g_c_pooling_layer_kernel_8cpp_source.xhtml#l00226">GCPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00184">CLPoolingLayerKernel::configure()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">data_type_for_convolution_matrix()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;{</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;    <span class="keyword">static</span> std::map&lt;PoolingType, const std::string&gt; pool_type_map =</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    {</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        { PoolingType::MAX, <span class="stringliteral">&quot;MAX&quot;</span> },</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;        { PoolingType::AVG, <span class="stringliteral">&quot;AVG&quot;</span> },</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;        { PoolingType::L2, <span class="stringliteral">&quot;L2&quot;</span> },</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;    };</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;    <span class="keywordflow">return</span> pool_type_map[type];</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa5191117dc677a74552769b87131b1b6"></a>
+<a id="a192c7cf59b34ae925eb1c8c315a06225"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a192c7cf59b34ae925eb1c8c315a06225">&#9670;&nbsp;</a></span>string_from_scheduler_type()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_scheduler_type </td>
+          <td class="memname">const std::string &amp; string_from_scheduler_type </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7">Scheduler::Type</a>&#160;</td>
           <td class="paramname"><em>t</em></td><td>)</td>
@@ -17079,14 +19656,20 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the scheduler type. </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="src_2runtime_2_utils_8cpp_source.xhtml#l00035">35</a> of file <a class="el" href="src_2runtime_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7a4c162442ef22c58f6f1e330e6b692c7e">Scheduler::CPP</a>, <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7a72baef04098f035e8a320b03ad197818">Scheduler::CUSTOM</a>, <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7a6a1f3212967c1a0ff6774f09de77330f">Scheduler::OMP</a>, and <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7aec8e57d71f07e31203035548b79d03c8">Scheduler::ST</a>.</p>
+<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;{</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keyword">static</span> std::map&lt;Scheduler::Type, const std::string&gt; scheduler_type_map =</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    {</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        { Scheduler::Type::ST, <span class="stringliteral">&quot;Single Thread&quot;</span> },</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        { Scheduler::Type::CPP, <span class="stringliteral">&quot;C++11 Threads&quot;</span> },</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        { Scheduler::Type::OMP, <span class="stringliteral">&quot;OpenMP Threads&quot;</span> },</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        { Scheduler::Type::CUSTOM, <span class="stringliteral">&quot;Custom&quot;</span> }</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    };</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <span class="keywordflow">return</span> scheduler_type_map[t];</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="afab814721e78cbfc34e7e7fe2874fa56"></a>
+<a id="af7795707992825c309fe846740dc8cf8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7795707992825c309fe846740dc8cf8">&#9670;&nbsp;</a></span>string_from_target()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const std::string&amp; arm_compute::string_from_target </td>
+          <td class="memname">const std::string &amp; string_from_target </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td>
           <td class="paramname"><em>target</em></td><td>)</td>
@@ -17104,9 +19687,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The string describing the target. </dd></dl>
 
+<p class="definition">Definition at line <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00103">103</a> of file <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml">GPUTarget.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">G51</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">G51BIG</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">G51LIT</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb">G52</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837">G52LIT</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">G71</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc">G72</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673">T600</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">T700</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048">T800</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a>, and <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00220">CLGEMMLowpMatrixMultiplyKernel::configure()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;{</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <span class="keyword">static</span> std::map&lt;GPUTarget, const std::string&gt; gpu_target_map =</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    {</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        { GPUTarget::MIDGARD, <span class="stringliteral">&quot;midgard&quot;</span> },</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        { GPUTarget::BIFROST, <span class="stringliteral">&quot;bifrost&quot;</span> },</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        { GPUTarget::T600, <span class="stringliteral">&quot;t600&quot;</span> },</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        { GPUTarget::T700, <span class="stringliteral">&quot;t700&quot;</span> },</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        { GPUTarget::T800, <span class="stringliteral">&quot;t800&quot;</span> },</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        { GPUTarget::G71, <span class="stringliteral">&quot;g71&quot;</span> },</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        { GPUTarget::G72, <span class="stringliteral">&quot;g72&quot;</span> },</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        { GPUTarget::G51, <span class="stringliteral">&quot;g51&quot;</span> },</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        { GPUTarget::G51BIG, <span class="stringliteral">&quot;g51big&quot;</span> },</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        { GPUTarget::G51LIT, <span class="stringliteral">&quot;g51lit&quot;</span> },</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        { GPUTarget::G52, <span class="stringliteral">&quot;g52&quot;</span> },</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        { GPUTarget::G52LIT, <span class="stringliteral">&quot;g52lit&quot;</span> },</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        { GPUTarget::G76, <span class="stringliteral">&quot;g76&quot;</span> },</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        { GPUTarget::TTRX, <span class="stringliteral">&quot;ttrx&quot;</span> },</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        { GPUTarget::TBOX, <span class="stringliteral">&quot;tbox&quot;</span> }</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    };</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <span class="keywordflow">return</span> gpu_target_map[target];</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab75d8ff29ba9b398d5740b3efd156e71"></a>
+<a id="ab75d8ff29ba9b398d5740b3efd156e71"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab75d8ff29ba9b398d5740b3efd156e71">&#9670;&nbsp;</a></span>to_string() <span class="overload">[1/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17137,13 +19728,15 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="tests_2_type_printer_8h_source.xhtml#l00064">64</a> of file <a class="el" href="tests_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="tests_2_type_printer_8h_source.xhtml#l00064">64</a> of file <a class="el" href="tests_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>Referenced by <a class="el" href="_function_helpers_8h_source.xhtml#l00131">arm_compute::graph::backends::detail::create_batch_normalization_layer()</a>, <a class="el" href="_initializer_list_dataset_8h_source.xhtml#l00085">InitializerListDataset&lt; T &gt;::iterator::description()</a>, <a class="el" href="main_8cpp_source.xhtml#l00087">main()</a>, and <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00051">to_string_if_not_null()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_function_helpers_8h_source.xhtml#l00133">arm_compute::graph::backends::detail::create_batch_normalization_layer()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00296">arm_compute::graph::backends::detail::create_convolution_layer()</a>, <a class="el" href="_g_c_functions_factory_8cpp_source.xhtml#l00109">arm_compute::graph::backends::detail::create_convolution_layer&lt; GCConvolutionLayerFunctions, GCTargetInfo &gt;()</a>, <a class="el" href="_n_e_function_factory_8cpp_source.xhtml#l00082">arm_compute::graph::backends::detail::create_convolution_layer&lt; NEConvolutionLayerFunctions, NETargetInfo &gt;()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00431">arm_compute::graph::backends::detail::create_depthwise_convolution_layer()</a>, <a class="el" href="_g_c_functions_factory_8cpp_source.xhtml#l00162">arm_compute::graph::backends::detail::create_depthwise_convolution_layer&lt; GCDepthwiseConvolutionLayerFunctions, GCTargetInfo &gt;()</a>, <a class="el" href="_initializer_list_dataset_8h_source.xhtml#l00085">InitializerListDataset&lt; T &gt;::iterator::description()</a>, <a class="el" href="main_8cpp_source.xhtml#l00087">main()</a>, <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00051">to_string_if_not_null()</a>, and <a class="el" href="_dot_graph_printer_8cpp_source.xhtml#l00043">DotGraphVisitor::visit()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;{</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aabe16be22edb41656e66ed9eae3b69e6"></a>
+<a id="aabe16be22edb41656e66ed9eae3b69e6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aabe16be22edb41656e66ed9eae3b69e6">&#9670;&nbsp;</a></span>to_string() <span class="overload">[2/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17174,11 +19767,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00118">118</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00118">118</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;{</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    str &lt;&lt; <span class="keyword">function</span>;</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a27f0ebddef1b83e0ac31c7a7a23a8d36"></a>
+<a id="a27f0ebddef1b83e0ac31c7a7a23a8d36"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a27f0ebddef1b83e0ac31c7a7a23a8d36">&#9670;&nbsp;</a></span>to_string() <span class="overload">[3/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17209,11 +19804,161 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00161">161</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00161">161</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 <div class="fragment"><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;{</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;    str &lt;&lt; pattern;</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad9fd48b3c01116b217a684aaeaf8b24f"></a>
+<a id="ac7e5dca61375f7583860ab07d951a323"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7e5dca61375f7583860ab07d951a323">&#9670;&nbsp;</a></span>to_string() <span class="overload">[4/51]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string arm_compute::to_string </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_r_o_i_pooling_layer_info.xhtml">ROIPoolingLayerInfo</a> &amp;&#160;</td>
+          <td class="paramname"><em>pool_info</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>Formatted output of the ROIPoolingInfo type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">pool_info</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00229">229</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;{</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    str &lt;&lt; pool_info;</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aadd27b86f0ff4fbb03ed673a549e91a8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadd27b86f0ff4fbb03ed673a549e91a8">&#9670;&nbsp;</a></span>to_string() <span class="overload">[5/51]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string arm_compute::to_string </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml">BoundingBoxTransformInfo</a> &amp;&#160;</td>
+          <td class="paramname"><em>bbox_info</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>Formatted output of the <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml" title="Bounding Box Transform information class. ">BoundingBoxTransformInfo</a> type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">bbox_info</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00257">257</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;{</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    str &lt;&lt; bbox_info;</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a24bc4de5c636b56f9b59533fead920c2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a24bc4de5c636b56f9b59533fead920c2">&#9670;&nbsp;</a></span>to_string() <span class="overload">[6/51]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string arm_compute::to_string </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml">ComputeAnchorsInfo</a> &amp;&#160;</td>
+          <td class="paramname"><em>anchors_info</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>Formatted output of the <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml" title="ComputeAnchors information class. ">ComputeAnchorsInfo</a> type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">anchors_info</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00283">283</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;{</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;    str &lt;&lt; anchors_info;</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aa597016c0aaa2990ed31b8aaa6f2ccc3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa597016c0aaa2990ed31b8aaa6f2ccc3">&#9670;&nbsp;</a></span>to_string() <span class="overload">[7/51]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string arm_compute::to_string </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml">GenerateProposalsInfo</a> &amp;&#160;</td>
+          <td class="paramname"><em>proposals_info</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>Formatted output of the <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml" title="Generate Proposals Information class. ">GenerateProposalsInfo</a> type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">proposals_info</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00309">309</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;{</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;    str &lt;&lt; proposals_info;</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ad9fd48b3c01116b217a684aaeaf8b24f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad9fd48b3c01116b217a684aaeaf8b24f">&#9670;&nbsp;</a></span>to_string() <span class="overload">[8/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17244,11 +19989,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00243">243</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;{</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    str &lt;&lt; quantization_info;</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00336">336</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;{</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;    str &lt;&lt; quantization_info;</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a72626d2cca3922127c41526e37e9e623"></a>
+<a id="a72626d2cca3922127c41526e37e9e623"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72626d2cca3922127c41526e37e9e623">&#9670;&nbsp;</a></span>to_string() <span class="overload">[9/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17279,15 +20026,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00307">307</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00400">400</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00871">ActivationLayerInfo::activation()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00886">ActivationLayerInfo::enabled()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;{</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;    <span class="keywordflow">if</span>(info.<a class="code" href="classarm__compute_1_1_activation_layer_info.xhtml#a1d79980f25d38aba3d6777d0afe544f3">enabled</a>())</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    {</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;        str &lt;&lt; info.<a class="code" href="classarm__compute_1_1_activation_layer_info.xhtml#a63e05ce4946dd9807c005c1619fa337a">activation</a>();</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    }</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_activation_layer_info_xhtml_a63e05ce4946dd9807c005c1619fa337a"><div class="ttname"><a href="classarm__compute_1_1_activation_layer_info.xhtml#a63e05ce4946dd9807c005c1619fa337a">arm_compute::ActivationLayerInfo::activation</a></div><div class="ttdeci">ActivationFunction activation() const </div><div class="ttdoc">Get the type of activation function. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00871">Types.h:871</a></div></div>
-<div class="ttc" id="classarm__compute_1_1_activation_layer_info_xhtml_a1d79980f25d38aba3d6777d0afe544f3"><div class="ttname"><a href="classarm__compute_1_1_activation_layer_info.xhtml#a1d79980f25d38aba3d6777d0afe544f3">arm_compute::ActivationLayerInfo::enabled</a></div><div class="ttdeci">bool enabled() const </div><div class="ttdoc">Check if initialised. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00886">Types.h:886</a></div></div>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01315">ActivationLayerInfo::activation()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01330">ActivationLayerInfo::enabled()</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;    std::stringstream str;</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;    <span class="keywordflow">if</span>(info.<a class="code" href="classarm__compute_1_1_activation_layer_info.xhtml#af5a8385102f8f8dd6c5957eac08b04c2">enabled</a>())</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;    {</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;        str &lt;&lt; info.<a class="code" href="classarm__compute_1_1_activation_layer_info.xhtml#a9e0fb1d1462557f28966ae19988532c2">activation</a>();</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;    }</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_activation_layer_info_xhtml_af5a8385102f8f8dd6c5957eac08b04c2"><div class="ttname"><a href="classarm__compute_1_1_activation_layer_info.xhtml#af5a8385102f8f8dd6c5957eac08b04c2">arm_compute::ActivationLayerInfo::enabled</a></div><div class="ttdeci">bool enabled() const</div><div class="ttdoc">Check if initialised. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l01330">Types.h:1330</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_activation_layer_info_xhtml_a9e0fb1d1462557f28966ae19988532c2"><div class="ttname"><a href="classarm__compute_1_1_activation_layer_info.xhtml#a9e0fb1d1462557f28966ae19988532c2">arm_compute::ActivationLayerInfo::activation</a></div><div class="ttdeci">ActivationFunction activation() const</div><div class="ttdoc">Get the type of activation function. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l01315">Types.h:1315</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a8a18c453150ab547c1add44b3ed3bc56"></a>
+<a id="a8a18c453150ab547c1add44b3ed3bc56"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a18c453150ab547c1add44b3ed3bc56">&#9670;&nbsp;</a></span>to_string() <span class="overload">[10/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17318,11 +20067,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00323">323</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;{</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    str &lt;&lt; <span class="keyword">function</span>;</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00416">416</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;{</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;    str &lt;&lt; <span class="keyword">function</span>;</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a45dd771bdecbafb975fd267c2ae320a7"></a>
+<a id="a45dd771bdecbafb975fd267c2ae320a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45dd771bdecbafb975fd267c2ae320a7">&#9670;&nbsp;</a></span>to_string() <span class="overload">[11/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17353,15 +20104,17 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00363">363</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00456">456</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00922">NormalizationLayerInfo::norm_size()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00917">NormalizationLayerInfo::type()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;{</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;    str &lt;&lt; info.<a class="code" href="classarm__compute_1_1_normalization_layer_info.xhtml#a39f6445d0b790034f0d8fac36f2eb7f5">type</a>() &lt;&lt; <span class="stringliteral">&quot;:NormSize=&quot;</span> &lt;&lt; info.<a class="code" href="classarm__compute_1_1_normalization_layer_info.xhtml#a0549be3702c05e6ec1ada69a6d08e349">norm_size</a>();</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_normalization_layer_info_xhtml_a39f6445d0b790034f0d8fac36f2eb7f5"><div class="ttname"><a href="classarm__compute_1_1_normalization_layer_info.xhtml#a39f6445d0b790034f0d8fac36f2eb7f5">arm_compute::NormalizationLayerInfo::type</a></div><div class="ttdeci">NormType type() const </div><div class="ttdoc">Get the normalization type. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00917">Types.h:917</a></div></div>
-<div class="ttc" id="classarm__compute_1_1_normalization_layer_info_xhtml_a0549be3702c05e6ec1ada69a6d08e349"><div class="ttname"><a href="classarm__compute_1_1_normalization_layer_info.xhtml#a0549be3702c05e6ec1ada69a6d08e349">arm_compute::NormalizationLayerInfo::norm_size</a></div><div class="ttdeci">uint32_t norm_size() const </div><div class="ttdoc">Get the normalization size. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00922">Types.h:922</a></div></div>
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01366">NormalizationLayerInfo::norm_size()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01361">NormalizationLayerInfo::type()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;{</div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;    str &lt;&lt; info.<a class="code" href="classarm__compute_1_1_normalization_layer_info.xhtml#abf43f970446f0b82889df52463b9c2b8">type</a>() &lt;&lt; <span class="stringliteral">&quot;:NormSize=&quot;</span> &lt;&lt; info.<a class="code" href="classarm__compute_1_1_normalization_layer_info.xhtml#a7c3edc4b354dda6c7285541f4f0e5c43">norm_size</a>();</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_normalization_layer_info_xhtml_a7c3edc4b354dda6c7285541f4f0e5c43"><div class="ttname"><a href="classarm__compute_1_1_normalization_layer_info.xhtml#a7c3edc4b354dda6c7285541f4f0e5c43">arm_compute::NormalizationLayerInfo::norm_size</a></div><div class="ttdeci">uint32_t norm_size() const</div><div class="ttdoc">Get the normalization size. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l01366">Types.h:1366</a></div></div>
+<div class="ttc" id="classarm__compute_1_1_normalization_layer_info_xhtml_abf43f970446f0b82889df52463b9c2b8"><div class="ttname"><a href="classarm__compute_1_1_normalization_layer_info.xhtml#abf43f970446f0b82889df52463b9c2b8">arm_compute::NormalizationLayerInfo::type</a></div><div class="ttdeci">NormType type() const</div><div class="ttdoc">Get the normalization type. </div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l01361">Types.h:1361</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a25dac68b6321b9e53027e79222a0eb7f"></a>
+<a id="a25dac68b6321b9e53027e79222a0eb7f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a25dac68b6321b9e53027e79222a0eb7f">&#9670;&nbsp;</a></span>to_string() <span class="overload">[12/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17392,14 +20145,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00430">430</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00523">523</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">arm_compute::test::validation::rounding_policy</a>.</p>
-<div class="fragment"><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;{</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">rounding_policy</a>;</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a60ad1078faeaf3f59266d69ad937339f"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">arm_compute::test::validation::rounding_policy</a></div><div class="ttdeci">rounding_policy</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">PixelWiseMultiplication.cpp:168</a></div></div>
+<p class="reference">References <a class="el" href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">arm_compute::test::validation::rounding_policy</a>.</p>
+<div class="fragment"><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;{</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">rounding_policy</a>;</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a60ad1078faeaf3f59266d69ad937339f"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">arm_compute::test::validation::rounding_policy</a></div><div class="ttdeci">rounding_policy</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">PixelWiseMultiplication.cpp:168</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ae1240e4698e8a901179e519102b5e033"></a>
+<a id="ae1240e4698e8a901179e519102b5e033"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae1240e4698e8a901179e519102b5e033">&#9670;&nbsp;</a></span>to_string() <span class="overload">[13/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17430,14 +20185,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00470">470</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00564">564</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00227">arm_compute::test::validation::data_layout</a>.</p>
-<div class="fragment"><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;{</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a>;</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00227">Winograd.cpp:227</a></div></div>
+<p class="reference">References <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00251">arm_compute::test::validation::data_layout</a>.</p>
+<div class="fragment"><div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;{</div><div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">data_layout</a>;</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a786677cbfb3f5677b4d84f3056eb08db"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a786677cbfb3f5677b4d84f3056eb08db">arm_compute::test::validation::data_layout</a></div><div class="ttdeci">data_layout</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00251">Winograd.cpp:251</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a96b47511b549b48d2ead05b5c757ccc9"></a>
+<a id="a96b47511b549b48d2ead05b5c757ccc9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96b47511b549b48d2ead05b5c757ccc9">&#9670;&nbsp;</a></span>to_string() <span class="overload">[14/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17468,14 +20225,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00572">572</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00667">667</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00088">arm_compute::test::validation::data_type</a>.</p>
-<div class="fragment"><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;{</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>;</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00088">GEMM.cpp:88</a></div></div>
+<p class="reference">References <a class="el" href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00174">arm_compute::test::validation::data_type</a>.</p>
+<div class="fragment"><div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;{</div><div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>;</div><div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00174">ArithmeticSubtraction.cpp:174</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab0e6381843dc9901bb59285ec846dc5d"></a>
+<a id="ab0e6381843dc9901bb59285ec846dc5d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab0e6381843dc9901bb59285ec846dc5d">&#9670;&nbsp;</a></span>to_string() <span class="overload">[15/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17506,11 +20265,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00654">654</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;{</div><div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;    str &lt;&lt; format;</div><div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00749">749</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;{</div><div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;    str &lt;&lt; format;</div><div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a813e71cd70c2bbcbf0743fa83a3608b9"></a>
+<a id="a813e71cd70c2bbcbf0743fa83a3608b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a813e71cd70c2bbcbf0743fa83a3608b9">&#9670;&nbsp;</a></span>to_string() <span class="overload">[16/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17541,11 +20302,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00721">721</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;{</div><div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;    str &lt;&lt; channel;</div><div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00816">816</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;{</div><div class="line"><a name="l00818"></a><span class="lineno">  818</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;    str &lt;&lt; channel;</div><div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00821"></a><span class="lineno">  821</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a48fd5e28bdb4975c141841f0b96f8707"></a>
+<a id="a48fd5e28bdb4975c141841f0b96f8707"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a48fd5e28bdb4975c141841f0b96f8707">&#9670;&nbsp;</a></span>to_string() <span class="overload">[17/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17576,14 +20339,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00843">843</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00956">956</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160;{</div><div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>;</div><div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00957"></a><span class="lineno">  957</span>&#160;{</div><div class="line"><a name="l00958"></a><span class="lineno">  958</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00959"></a><span class="lineno">  959</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>;</div><div class="line"><a name="l00960"></a><span class="lineno">  960</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa32488ee1dd78e0464ed23e8cc2b6e49"></a>
+<a id="aa32488ee1dd78e0464ed23e8cc2b6e49"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa32488ee1dd78e0464ed23e8cc2b6e49">&#9670;&nbsp;</a></span>to_string() <span class="overload">[18/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17614,11 +20379,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00857">857</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;{</div><div class="line"><a name="l00859"></a><span class="lineno">  859</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00860"></a><span class="lineno">  860</span>&#160;    str &lt;&lt; dimensions;</div><div class="line"><a name="l00861"></a><span class="lineno">  861</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00862"></a><span class="lineno">  862</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00971">971</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;{</div><div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;    str &lt;&lt; dimensions;</div><div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1c4486f45128be7156e38e6dea345a16"></a>
+<a id="a1c4486f45128be7156e38e6dea345a16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1c4486f45128be7156e38e6dea345a16">&#9670;&nbsp;</a></span>to_string() <span class="overload">[19/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17649,11 +20416,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00870">870</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00871"></a><span class="lineno">  871</span>&#160;{</div><div class="line"><a name="l00872"></a><span class="lineno">  872</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00873"></a><span class="lineno">  873</span>&#160;    str &lt;&lt; stride;</div><div class="line"><a name="l00874"></a><span class="lineno">  874</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00875"></a><span class="lineno">  875</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00984">984</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l00985"></a><span class="lineno">  985</span>&#160;{</div><div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;    str &lt;&lt; stride;</div><div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9d9b56d1b106b79fc5c5411372222d0f"></a>
+<a id="a9d9b56d1b106b79fc5c5411372222d0f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d9b56d1b106b79fc5c5411372222d0f">&#9670;&nbsp;</a></span>to_string() <span class="overload">[20/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17684,14 +20453,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00883">883</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00997">997</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">arm_compute::test::validation::shape</a>.</p>
-<div class="fragment"><div class="line"><a name="l00884"></a><span class="lineno">  884</span>&#160;{</div><div class="line"><a name="l00885"></a><span class="lineno">  885</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00886"></a><span class="lineno">  886</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>;</div><div class="line"><a name="l00887"></a><span class="lineno">  887</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00888"></a><span class="lineno">  888</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
+<p class="reference">References <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">arm_compute::test::validation::shape</a>.</p>
+<div class="fragment"><div class="line"><a name="l00998"></a><span class="lineno">  998</span>&#160;{</div><div class="line"><a name="l00999"></a><span class="lineno">  999</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>;</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00096">ArithmeticDivision.cpp:96</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a805a74997e303d29108845956a674387"></a>
+<a id="a805a74997e303d29108845956a674387"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a805a74997e303d29108845956a674387">&#9670;&nbsp;</a></span>to_string() <span class="overload">[21/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17722,11 +20493,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00896">896</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;{</div><div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00899"></a><span class="lineno">  899</span>&#160;    str &lt;&lt; coord;</div><div class="line"><a name="l00900"></a><span class="lineno">  900</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00901"></a><span class="lineno">  901</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01010">1010</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;{</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;    str &lt;&lt; coord;</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a26a595cd5522bae4fa1c4f2fb9b8f4d5"></a>
+<a id="a26a595cd5522bae4fa1c4f2fb9b8f4d5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a26a595cd5522bae4fa1c4f2fb9b8f4d5">&#9670;&nbsp;</a></span>to_string() <span class="overload">[22/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17757,14 +20530,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00981">981</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01095">1095</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00982"></a><span class="lineno">  982</span>&#160;{</div><div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>;</div><div class="line"><a name="l00985"></a><span class="lineno">  985</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;{</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>;</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="adac3c1908846c6361e664a353ad1c3cf"></a>
+<a id="adac3c1908846c6361e664a353ad1c3cf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adac3c1908846c6361e664a353ad1c3cf">&#9670;&nbsp;</a></span>to_string() <span class="overload">[23/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17795,14 +20570,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00994">994</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01108">1108</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00995"></a><span class="lineno">  995</span>&#160;{</div><div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;    std::stringstream str;</div><div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>;</div><div class="line"><a name="l00998"></a><span class="lineno">  998</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00999"></a><span class="lineno">  999</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160;{</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>;</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a8ac2dfdfad6db71a5cf2ecee6b70f722"></a>
+<a id="a8ac2dfdfad6db71a5cf2ecee6b70f722"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ac2dfdfad6db71a5cf2ecee6b70f722">&#9670;&nbsp;</a></span>to_string() <span class="overload">[24/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17833,14 +20610,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01007">1007</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01121">1121</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info()</a>.</p>
-<div class="fragment"><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;{</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>;</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160;{</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>;</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab6ea50ec0a98c2180e6530cfcb5eb366"></a>
+<a id="ab6ea50ec0a98c2180e6530cfcb5eb366"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab6ea50ec0a98c2180e6530cfcb5eb366">&#9670;&nbsp;</a></span>to_string() <span class="overload">[25/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17871,11 +20650,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01020">1020</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;{</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;    str &lt;&lt; dim;</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01134">1134</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160;{</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;    str &lt;&lt; dim;</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a99aba2774f142d36c6a286cbfe027772"></a>
+<a id="a99aba2774f142d36c6a286cbfe027772"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99aba2774f142d36c6a286cbfe027772">&#9670;&nbsp;</a></span>to_string() <span class="overload">[26/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17906,11 +20687,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01032">1032</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;{</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;    str &lt;&lt; win;</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01146">1146</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;{</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;    str &lt;&lt; win;</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a2c0e6c1c4cf10da25e7a7362ba151ba2"></a>
+<a id="a2c0e6c1c4cf10da25e7a7362ba151ba2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c0e6c1c4cf10da25e7a7362ba151ba2">&#9670;&nbsp;</a></span>to_string() <span class="overload">[27/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17941,11 +20724,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01077">1077</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;{</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;    str &lt;&lt; pad_stride_info;</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01191">1191</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;{</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;    str &lt;&lt; pad_stride_info;</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a0604106dd269acd58152a81ba87cc265"></a>
+<a id="a0604106dd269acd58152a81ba87cc265"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0604106dd269acd58152a81ba87cc265">&#9670;&nbsp;</a></span>to_string() <span class="overload">[28/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -17976,11 +20761,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01090">1090</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;{</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160;    str &lt;&lt; mode;</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01204">1204</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160;{</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;    str &lt;&lt; mode;</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5c9cde9144eaeceaf086377b9bc5a5be"></a>
+<a id="a5c9cde9144eaeceaf086377b9bc5a5be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c9cde9144eaeceaf086377b9bc5a5be">&#9670;&nbsp;</a></span>to_string() <span class="overload">[29/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18011,11 +20798,53 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01103">1103</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160;{</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160;    str &lt;&lt; border;</div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01217">1217</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;{</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160;    str &lt;&lt; border;</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a94bd78942b683c05cba85048537d3ee7"></a>
+<a id="a09b674dcee4a1b59f9c7c51ecaae40a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a09b674dcee4a1b59f9c7c51ecaae40a6">&#9670;&nbsp;</a></span>to_string() <span class="overload">[30/51]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string arm_compute::to_string </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> &amp;&#160;</td>
+          <td class="paramname"><em>padding</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>Formatted output of the PaddingList type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">padding</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01230">1230</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+
+<p class="reference">References <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00111">arm_compute::test::validation::padding</a>.</p>
+<div class="fragment"><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160;{</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a735a025fce26c1ef147b54426df18181">padding</a>;</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a735a025fce26c1ef147b54426df18181"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a735a025fce26c1ef147b54426df18181">arm_compute::test::validation::padding</a></div><div class="ttdeci">const PaddingSize padding</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00111">ArithmeticDivision.cpp:111</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a94bd78942b683c05cba85048537d3ee7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a94bd78942b683c05cba85048537d3ee7">&#9670;&nbsp;</a></span>to_string() <span class="overload">[31/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18046,11 +20875,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01116">1116</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160;{</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160;    str &lt;&lt; policy;</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01243">1243</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+
+<p class="reference">References <a class="el" href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">arm_compute::test::validation::policy</a>.</p>
+<div class="fragment"><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160;{</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>;</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">ArithmeticSubtraction.cpp:175</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a5b8e815072ae54278cb1c91e254be4d3"></a>
+<a id="a5b8e815072ae54278cb1c91e254be4d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b8e815072ae54278cb1c91e254be4d3">&#9670;&nbsp;</a></span>to_string() <span class="overload">[32/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18081,11 +20915,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01129">1129</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160;{</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160;    str &lt;&lt; policy;</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01256">1256</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+
+<p class="reference">References <a class="el" href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">arm_compute::test::validation::policy</a>.</p>
+<div class="fragment"><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160;{</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>;</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">ArithmeticSubtraction.cpp:175</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="adcc7e107e7dbd2ffac02189089c33e4f"></a>
+<a id="adcc7e107e7dbd2ffac02189089c33e4f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adcc7e107e7dbd2ffac02189089c33e4f">&#9670;&nbsp;</a></span>to_string() <span class="overload">[33/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18107,11 +20946,16 @@
 </table>
 </div><div class="memdoc">
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01160">1160</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160;{</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160;    str &lt;&lt; policy;</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01287">1287</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+
+<p class="reference">References <a class="el" href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">arm_compute::test::validation::policy</a>.</p>
+<div class="fragment"><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160;{</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160;    str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>;</div><div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_arithmetic_subtraction_8cpp_source.xhtml#l00175">ArithmeticSubtraction.cpp:175</a></div></div>
+</div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aae534105c7ea67999ccbb34a0ed567cd"></a>
+<a id="aae534105c7ea67999ccbb34a0ed567cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae534105c7ea67999ccbb34a0ed567cd">&#9670;&nbsp;</a></span>to_string() <span class="overload">[34/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18142,11 +20986,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01194">1194</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160;{</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;    str &lt;&lt; op;</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01327">1327</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160;{</div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160;    str &lt;&lt; op;</div><div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad8b676c38d9b8d9d9bde7caec5720bd9"></a>
+<a id="ad8b676c38d9b8d9d9bde7caec5720bd9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8b676c38d9b8d9d9bde7caec5720bd9">&#9670;&nbsp;</a></span>to_string() <span class="overload">[35/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18177,11 +21023,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01207">1207</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;{</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01340">1340</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160;{</div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a2872d19dd10dc3117813d291c08e0383"></a>
+<a id="a2872d19dd10dc3117813d291c08e0383"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2872d19dd10dc3117813d291c08e0383">&#9670;&nbsp;</a></span>to_string() <span class="overload">[36/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18212,11 +21060,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01220">1220</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160;{</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01353">1353</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160;{</div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="acef515348c5f7f73c89aa4b8a47a02bc"></a>
+<a id="acef515348c5f7f73c89aa4b8a47a02bc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acef515348c5f7f73c89aa4b8a47a02bc">&#9670;&nbsp;</a></span>to_string() <span class="overload">[37/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18247,14 +21097,56 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01233">1233</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01366">1366</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_size2_d_8h_source.xhtml#l00093">Size2D::height</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00789">PoolingLayerInfo::is_global_pooling()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00779">PoolingLayerInfo::pad_stride_info()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00774">PoolingLayerInfo::pool_size()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00769">PoolingLayerInfo::pool_type()</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00092">Size2D::width</a>.</p>
-<div class="fragment"><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160;{</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160;    str &lt;&lt; <span class="stringliteral">&quot;{Type=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.pool_type() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;IsGlobalPooling=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.is_global_pooling();</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160;    <span class="keywordflow">if</span>(!<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.is_global_pooling())</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160;    {</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160;        str &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;PoolSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.pool_size().width &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.pool_size().height &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;PadStride=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.pad_stride_info();</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160;    }</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160;    str &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+<p class="reference">References <a class="el" href="_size2_d_8h_source.xhtml#l00093">Size2D::height</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01028">PoolingLayerInfo::is_global_pooling()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01018">PoolingLayerInfo::pad_stride_info()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01013">PoolingLayerInfo::pool_size()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01008">PoolingLayerInfo::pool_type()</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00092">Size2D::width</a>.</p>
+<div class="fragment"><div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>&#160;{</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160;    str &lt;&lt; <span class="stringliteral">&quot;{Type=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.pool_type() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;IsGlobalPooling=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.is_global_pooling();</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160;    <span class="keywordflow">if</span>(!<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.is_global_pooling())</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160;    {</div><div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160;        str &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;PoolSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.pool_size().width &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.pool_size().height &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;PadStride=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.pad_stride_info();</div><div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160;    }</div><div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160;    str &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ae4ead564f3c96ea5f1ec7fe035b941f3"></a>
+<a id="ae62747a5179626328bf7e67c709d5fcf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae62747a5179626328bf7e67c709d5fcf">&#9670;&nbsp;</a></span>to_string() <span class="overload">[38/51]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string arm_compute::to_string </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a> &amp;&#160;</td>
+          <td class="paramname"><em>info</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>Formatted output of the <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml" title="PriorBox layer info. ">PriorBoxLayerInfo</a>. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01387">1387</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00929">PriorBoxLayerInfo::clip()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00924">PriorBoxLayerInfo::flip()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00914">PriorBoxLayerInfo::img_size()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00934">PriorBoxLayerInfo::max_sizes()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00899">PriorBoxLayerInfo::min_sizes()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00919">PriorBoxLayerInfo::offset()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00909">PriorBoxLayerInfo::steps()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00904">PriorBoxLayerInfo::variances()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00464">Coordinates2D::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00465">Coordinates2D::y</a>.</p>
+<div class="fragment"><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160;{</div><div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160;    str &lt;&lt; <span class="stringliteral">&quot;{&quot;</span>;</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160;    str &lt;&lt; <span class="stringliteral">&quot;Clip:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.clip()</div><div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;Flip:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.flip()</div><div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;StepX:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.steps()[0]</div><div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;StepY:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.steps()[1]</div><div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;MinSizes:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.min_sizes().size()</div><div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;MaxSizes:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.max_sizes().size()</div><div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;ImgSizeX:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.img_size().x</div><div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;ImgSizeY:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.img_size().y</div><div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;Offset:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.offset()</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160;        &lt;&lt; <span class="stringliteral">&quot;Variances:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">info</a>.variances().size();</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160;    str &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a096668313a9a819d54a2e65ec21ff0cc"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a096668313a9a819d54a2e65ec21ff0cc">arm_compute::test::validation::info</a></div><div class="ttdeci">src info() -&gt; set_format(Format::S16)</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="ae4ead564f3c96ea5f1ec7fe035b941f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4ead564f3c96ea5f1ec7fe035b941f3">&#9670;&nbsp;</a></span>to_string() <span class="overload">[39/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18285,11 +21177,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01298">1298</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160;{</div><div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01301"></a><span class="lineno"> 1301</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01302"></a><span class="lineno"> 1302</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01455">1455</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160;{</div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a42e6f8761f01b5846f56c3b8025c8c0a"></a>
+<a id="a42e6f8761f01b5846f56c3b8025c8c0a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42e6f8761f01b5846f56c3b8025c8c0a">&#9670;&nbsp;</a></span>to_string() <span class="overload">[40/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18320,11 +21214,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01335">1335</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160;{</div><div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01492">1492</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160;{</div><div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a950ba288e8136db4bf52f7c51dea20eb"></a>
+<a id="a950ba288e8136db4bf52f7c51dea20eb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a950ba288e8136db4bf52f7c51dea20eb">&#9670;&nbsp;</a></span>to_string() <span class="overload">[41/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18355,11 +21251,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01375">1375</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160;{</div><div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01532">1532</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160;{</div><div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01537"></a><span class="lineno"> 1537</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aee88a2c259879eb9dc18cb5965e87c29"></a>
+<a id="aee88a2c259879eb9dc18cb5965e87c29"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee88a2c259879eb9dc18cb5965e87c29">&#9670;&nbsp;</a></span>to_string() <span class="overload">[42/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18390,11 +21288,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01402">1402</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160;{</div><div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01559">1559</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160;{</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a3cf43a216912b361eaffc3c71452a31e"></a>
+<a id="a3cf43a216912b361eaffc3c71452a31e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3cf43a216912b361eaffc3c71452a31e">&#9670;&nbsp;</a></span>to_string() <span class="overload">[43/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18425,11 +21325,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01436">1436</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160;{</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01593">1593</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160;{</div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a853d44a32a328fb4455f6200a11c4785"></a>
+<a id="a853d44a32a328fb4455f6200a11c4785"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a853d44a32a328fb4455f6200a11c4785">&#9670;&nbsp;</a></span>to_string() <span class="overload">[44/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18460,11 +21362,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01476">1476</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160;{</div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160;    str &lt;&lt; conv_method;</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01633">1633</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>&#160;{</div><div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01636"></a><span class="lineno"> 1636</span>&#160;    str &lt;&lt; conv_method;</div><div class="line"><a name="l01637"></a><span class="lineno"> 1637</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aee29ccfc095313663fc954f581ddf40a"></a>
+<a id="aee29ccfc095313663fc954f581ddf40a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee29ccfc095313663fc954f581ddf40a">&#9670;&nbsp;</a></span>to_string() <span class="overload">[45/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18495,11 +21399,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01549">1549</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160;{</div><div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160;    str &lt;&lt; gpu_target;</div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01706">1706</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160;{</div><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160;    str &lt;&lt; gpu_target;</div><div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a905d7ec8787e8c4b7e88b0a2faaccd1f"></a>
+<a id="a905d7ec8787e8c4b7e88b0a2faaccd1f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a905d7ec8787e8c4b7e88b0a2faaccd1f">&#9670;&nbsp;</a></span>to_string() <span class="overload">[46/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18530,11 +21436,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01581">1581</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01582"></a><span class="lineno"> 1582</span>&#160;{</div><div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160;    str &lt;&lt; detection_window;</div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01738">1738</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160;{</div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>&#160;    str &lt;&lt; detection_window;</div><div class="line"><a name="l01742"></a><span class="lineno"> 1742</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01743"></a><span class="lineno"> 1743</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a51fc944d872cf00c1e8e71ccdf8be264"></a>
+<a id="a51fc944d872cf00c1e8e71ccdf8be264"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51fc944d872cf00c1e8e71ccdf8be264">&#9670;&nbsp;</a></span>to_string() <span class="overload">[47/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18565,11 +21473,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01621">1621</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>&#160;{</div><div class="line"><a name="l01623"></a><span class="lineno"> 1623</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01624"></a><span class="lineno"> 1624</span>&#160;    str &lt;&lt; termination;</div><div class="line"><a name="l01625"></a><span class="lineno"> 1625</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01778">1778</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>&#160;{</div><div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01781"></a><span class="lineno"> 1781</span>&#160;    str &lt;&lt; termination;</div><div class="line"><a name="l01782"></a><span class="lineno"> 1782</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="add33a9d992aeaa69d6940fd896ee5e75"></a>
+<a id="add33a9d992aeaa69d6940fd896ee5e75"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add33a9d992aeaa69d6940fd896ee5e75">&#9670;&nbsp;</a></span>to_string() <span class="overload">[48/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18600,11 +21510,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01670">1670</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160;{</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160;    str &lt;&lt; cpu_model;</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01827">1827</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>&#160;{</div><div class="line"><a name="l01829"></a><span class="lineno"> 1829</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>&#160;    str &lt;&lt; cpu_model;</div><div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a6411da4e87e64e8859f8b725645ee9aa"></a>
+<a id="a6411da4e87e64e8859f8b725645ee9aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6411da4e87e64e8859f8b725645ee9aa">&#9670;&nbsp;</a></span>to_string() <span class="overload">[49/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18627,11 +21539,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>String representing args. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01711">1711</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160;{</div><div class="line"><a name="l01713"></a><span class="lineno"> 1713</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01714"></a><span class="lineno"> 1714</span>&#160;    str &lt;&lt; args;</div><div class="line"><a name="l01715"></a><span class="lineno"> 1715</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01716"></a><span class="lineno"> 1716</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01891">1891</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01892"></a><span class="lineno"> 1892</span>&#160;{</div><div class="line"><a name="l01893"></a><span class="lineno"> 1893</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01894"></a><span class="lineno"> 1894</span>&#160;    str &lt;&lt; args;</div><div class="line"><a name="l01895"></a><span class="lineno"> 1895</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01896"></a><span class="lineno"> 1896</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a37cc282b0852aab04b13a6e6566adda7"></a>
+<a id="a37cc282b0852aab04b13a6e6566adda7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37cc282b0852aab04b13a6e6566adda7">&#9670;&nbsp;</a></span>to_string() <span class="overload">[50/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18653,11 +21567,13 @@
 </table>
 </div><div class="memdoc">
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01729">1729</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
-<div class="fragment"><div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>&#160;{</div><div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>&#160;}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01909">1909</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<div class="fragment"><div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160;{</div><div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160;    std::stringstream str;</div><div class="line"><a name="l01912"></a><span class="lineno"> 1912</span>&#160;    str &lt;&lt; type;</div><div class="line"><a name="l01913"></a><span class="lineno"> 1913</span>&#160;    <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01914"></a><span class="lineno"> 1914</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a1d8c24abe3cf6edd704d126d1d2a5420"></a>
+<a id="a1d8c24abe3cf6edd704d126d1d2a5420"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d8c24abe3cf6edd704d126d1d2a5420">&#9670;&nbsp;</a></span>to_string() <span class="overload">[51/51]</span></h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -18688,14 +21604,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>String representing val. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01743">1743</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01923">1923</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="_toolchain_support_8h_source.xhtml#l00210">arm_compute::support::cpp11::to_string()</a>.</p>
-<div class="fragment"><div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>&#160;{</div><div class="line"><a name="l01745"></a><span class="lineno"> 1745</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">support::cpp11::to_string</a>(val);</div><div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a1d8c24abe3cf6edd704d126d1d2a5420"><div class="ttname"><a href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">arm_compute::to_string</a></div><div class="ttdeci">std::string to_string(const T &amp;val)</div><div class="ttdoc">Fallback method: try to use std::to_string: </div><div class="ttdef"><b>Definition:</b> <a href="utils_2_type_printer_8h_source.xhtml#l01743">TypePrinter.h:1743</a></div></div>
+<p class="reference">References <a class="el" href="_toolchain_support_8h_source.xhtml#l00210">arm_compute::support::cpp11::to_string()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160;{</div><div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">support::cpp11::to_string</a>(val);</div><div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a1d8c24abe3cf6edd704d126d1d2a5420"><div class="ttname"><a href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">arm_compute::to_string</a></div><div class="ttdeci">std::string to_string(const T &amp;val)</div><div class="ttdoc">Fallback method: try to use std::to_string: </div><div class="ttdef"><b>Definition:</b> <a href="utils_2_type_printer_8h_source.xhtml#l01923">TypePrinter.h:1923</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ad023d4ca1d3facf3975c941fd728a6f4"></a>
+<a id="ad023d4ca1d3facf3975c941fd728a6f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad023d4ca1d3facf3975c941fd728a6f4">&#9670;&nbsp;</a></span>to_string_if_not_null()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18718,14 +21636,16 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>String representing arg. </dd></dl>
 
-<p>Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00051">51</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00051">51</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
 
-<p>References <a class="el" href="tests_2_type_printer_8h_source.xhtml#l00064">to_string()</a>.</p>
-<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keywordflow">if</span>(arg == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    {</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        <span class="keywordflow">return</span> <span class="stringliteral">&quot;nullptr&quot;</span>;</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    }</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    {</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">to_string</a>(*arg);</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    }</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a1d8c24abe3cf6edd704d126d1d2a5420"><div class="ttname"><a href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">arm_compute::to_string</a></div><div class="ttdeci">std::string to_string(const T &amp;val)</div><div class="ttdoc">Fallback method: try to use std::to_string: </div><div class="ttdef"><b>Definition:</b> <a href="utils_2_type_printer_8h_source.xhtml#l01743">TypePrinter.h:1743</a></div></div>
+<p class="reference">References <a class="el" href="tests_2_type_printer_8h_source.xhtml#l00064">to_string()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keywordflow">if</span>(arg == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    {</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        <span class="keywordflow">return</span> <span class="stringliteral">&quot;nullptr&quot;</span>;</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    }</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    {</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">to_string</a>(*arg);</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    }</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a1d8c24abe3cf6edd704d126d1d2a5420"><div class="ttname"><a href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">arm_compute::to_string</a></div><div class="ttdeci">std::string to_string(const T &amp;val)</div><div class="ttdoc">Fallback method: try to use std::to_string: </div><div class="ttdef"><b>Definition:</b> <a href="utils_2_type_printer_8h_source.xhtml#l01923">TypePrinter.h:1923</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ac2a92cae51d2734a65676052adb33c22"></a>
+<a id="afc4bd8e872567d9c4c57d89eb0bb3da1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc4bd8e872567d9c4c57d89eb0bb3da1">&#9670;&nbsp;</a></span>update_window_and_padding()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18760,14 +21680,700 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>True if the window has been changed. Changes to the padding do not influence the returned value. </dd></dl>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00368">368</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00368">368</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
 
-<p>References <a class="el" href="namespacearm__compute.xhtml#a1c28e5916fd54b778da115bfe646f588">calculate_max_window()</a>, <a class="el" href="_utility_8h_source.xhtml#l00091">arm_compute::utility::for_each()</a>, <a class="el" href="classarm__compute_1_1_i_access_window.xhtml#a5a5f3d4d4461121db2e4e3b4d3ee587f">IAccessWindow::update_padding_if_needed()</a>, <a class="el" href="classarm__compute_1_1_i_access_window.xhtml#a5b6940395e0168f3f00da892ded537aa">IAccessWindow::update_window_if_needed()</a>, and <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00107">arm_compute::test::validation::valid_region</a>.</p>
+<p class="reference">References <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00028">calculate_max_window()</a>, <a class="el" href="_utility_8h_source.xhtml#l00091">arm_compute::utility::for_each()</a>, <a class="el" href="classarm__compute_1_1_i_access_window.xhtml#a5a5f3d4d4461121db2e4e3b4d3ee587f">IAccessWindow::update_padding_if_needed()</a>, <a class="el" href="classarm__compute_1_1_i_access_window.xhtml#a5b6940395e0168f3f00da892ded537aa">IAccessWindow::update_window_if_needed()</a>, and <a class="el" href="_c_l_2_arithmetic_division_8cpp_source.xhtml#l00107">arm_compute::test::validation::valid_region</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_l2_normalize_layer_kernel_8cpp_source.xhtml#l00039">CLL2NormalizeLayerKernel::CLL2NormalizeLayerKernel()</a>, <a class="el" href="_c_l_locally_connected_matrix_multiply_kernel_8cpp_source.xhtml#l00044">CLLocallyConnectedMatrixMultiplyKernel::CLLocallyConnectedMatrixMultiplyKernel()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00042">GCLogits1DMaxKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00039">CLIntegralImageHorKernel::configure()</a>, <a class="el" href="_c_l_warp_perspective_kernel_8cpp_source.xhtml#l00061">CLWarpPerspectiveKernel::configure()</a>, <a class="el" href="_c_l_erode_kernel_8cpp_source.xhtml#l00039">CLErodeKernel::configure()</a>, <a class="el" href="_c_l_dilate_kernel_8cpp_source.xhtml#l00039">CLDilateKernel::configure()</a>, <a class="el" href="_c_l_median3x3_kernel_8cpp_source.xhtml#l00039">CLMedian3x3Kernel::configure()</a>, <a class="el" href="_c_l_gaussian3x3_kernel_8cpp_source.xhtml#l00042">CLGaussian3x3Kernel::configure()</a>, <a class="el" href="_c_l_box3x3_kernel_8cpp_source.xhtml#l00043">CLBox3x3Kernel::configure()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00040">GCTransposeKernel::configure()</a>, <a class="el" href="_c_l_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00044">CLNonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_n_e_integral_image_kernel_8cpp_source.xhtml#l00038">NEIntegralImageKernel::configure()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00047">GCScaleKernel::configure()</a>, <a class="el" href="_n_e_box3x3_kernel_8cpp_source.xhtml#l00114">NEBox3x3Kernel::configure()</a>, <a class="el" href="_n_e_dilate_kernel_8cpp_source.xhtml#l00048">NEDilateKernel::configure()</a>, <a class="el" href="_n_e_erode_kernel_8cpp_source.xhtml#l00048">NEErodeKernel::configure()</a>, <a class="el" href="_n_e_gaussian3x3_kernel_8cpp_source.xhtml#l00041">NEGaussian3x3Kernel::configure()</a>, <a class="el" href="_n_e_median3x3_kernel_8cpp_source.xhtml#l00054">NEMedian3x3Kernel::configure()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00050">NEGaussian5x5HorKernel::configure()</a>, <a class="el" href="_c_l_non_linear_filter_kernel_8cpp_source.xhtml#l00056">CLNonLinearFilterKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00044">GCGEMMMatrixAccumulateBiasesKernel::configure()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00044">CLGaussianPyramidHorKernel::configure()</a>, <a class="el" href="_c_l_histogram_kernel_8cpp_source.xhtml#l00053">CLHistogramKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00040">CLGradientKernel::configure()</a>, <a class="el" href="_c_l_bitwise_or_kernel_8cpp_source.xhtml#l00041">CLBitwiseOrKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>, <a class="el" href="_c_l_bitwise_xor_kernel_8cpp_source.xhtml#l00041">CLBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_bitwise_and_kernel_8cpp_source.xhtml#l00040">CLBitwiseAndKernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_derivative_kernel_8cpp_source.xhtml#l00050">CLDerivativeKernel::configure()</a>, <a class="el" href="_c_l_sobel3x3_kernel_8cpp_source.xhtml#l00050">CLSobel3x3Kernel::configure()</a>, <a class="el" href="_i_c_l_simple_kernel_8cpp_source.xhtml#l00038">ICLSimpleKernel::configure()</a>, <a class="el" href="_i_g_c_simple_kernel_8cpp_source.xhtml#l00038">IGCSimpleKernel::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00051">GCDepthwiseConvolutionLayer3x3Kernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_g_c_normalization_layer_kernel_8cpp_source.xhtml#l00049">GCNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00050">CLSobel5x5HorKernel::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00053">NEGaussianPyramidHorKernel::configure()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00050">CLSobel7x7HorKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00048">CLHOGOrientationBinningKernel::configure()</a>, <a class="el" href="_n_e_warp_kernel_8cpp_source.xhtml#l00067">INEWarpKernel::configure()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00047">CLAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_bitwise_not_kernel_8cpp_source.xhtml#l00056">NEBitwiseNotKernel::configure()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_g_c_absolute_difference_kernel_8cpp_source.xhtml#l00047">GCAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00041">GCGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00046">CLMagnitudePhaseKernel::configure()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00061">NEBitwiseAndKernel::configure()</a>, <a class="el" href="_c_l_mean_std_dev_kernel_8cpp_source.xhtml#l00066">CLMeanStdDevKernel::configure()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00057">NEBitwiseOrKernel::configure()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00057">NEBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00048">CLColorConvertKernel::configure()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00049">CLChannelCombineKernel::configure()</a>, <a class="el" href="_n_e_derivative_kernel_8cpp_source.xhtml#l00054">NEDerivativeKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>, <a class="el" href="_n_e_fast_corners_kernel_8cpp_source.xhtml#l00361">NEFastCornersKernel::configure()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00632">NEHOGOrientationBinningKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_remap_kernel_8cpp_source.xhtml#l00076">NERemapKernel::configure()</a>, <a class="el" href="_g_c_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00050">GCDepthConcatenateLayerKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00071">CLIntegralImageVertKernel::configure()</a>, <a class="el" href="_n_e_absolute_difference_kernel_8cpp_source.xhtml#l00133">NEAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00049">CLROIPoolingLayerKernel::configure()</a>, <a class="el" href="_n_e_non_linear_filter_kernel_8cpp_source.xhtml#l00353">NENonLinearFilterKernel::configure()</a>, <a class="el" href="_n_e_threshold_kernel_8cpp_source.xhtml#l00045">NEThresholdKernel::configure()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00050">NESobel5x5HorKernel::configure()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_magnitude_phase_kernel_8cpp_source.xhtml#l00250">NEMagnitudePhaseKernel&lt; mag_type, phase_type &gt;::configure()</a>, <a class="el" href="_n_e_fill_array_kernel_8cpp_source.xhtml#l00039">NEFillArrayKernel::configure()</a>, <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00462">NENonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00153">NESobel7x7HorKernel::configure()</a>, <a class="el" href="_n_e_mean_std_dev_kernel_8cpp_source.xhtml#l00097">NEMeanStdDevKernel::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00107">GCLogits1DShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00877">NEGradientKernel::configure()</a>, <a class="el" href="_n_e_channel_combine_kernel_8cpp_source.xhtml#l00052">NEChannelCombineKernel::configure()</a>, <a class="el" href="_c_p_p_corner_candidates_kernel_8cpp_source.xhtml#l00074">CPPCornerCandidatesKernel::configure()</a>, <a class="el" href="_n_e_h_o_g_detector_kernel_8cpp_source.xhtml#l00042">NEHOGDetectorKernel::configure()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00054">CLHarrisScoreKernel::configure()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00050">CLFastCornersKernel::configure()</a>, <a class="el" href="_n_e_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00045">NEROIPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_detector_kernel_8cpp_source.xhtml#l00044">CLHOGDetectorKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00044">GCGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00324">NEConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_scharr3x3_kernel_8cpp_source.xhtml#l00090">NEScharr3x3Kernel::configure()</a>, <a class="el" href="_c_l_scharr3x3_kernel_8cpp_source.xhtml#l00050">CLScharr3x3Kernel::configure()</a>, <a class="el" href="_n_e_sobel3x3_kernel_8cpp_source.xhtml#l00048">NESobel3x3Kernel::configure()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00118">NEGaussian5x5VertKernel::configure()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00044">GCCol2ImKernel::configure()</a>, <a class="el" href="_g_c_im2_col_kernel_8cpp_source.xhtml#l00067">GCIm2ColKernel::configure()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00136">CLGaussianPyramidVertKernel::configure()</a>, <a class="el" href="_c_l_histogram_kernel_8cpp_source.xhtml#l00149">CLHistogramBorderKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00111">CLEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00169">CLMinMaxLocationKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00125">CLHOGBlockNormalizationKernel::configure()</a>, <a class="el" href="_n_e_harris_corners_kernel_8cpp_source.xhtml#l00736">NEHarrisScoreKernel&lt; block_size &gt;::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00161">NEGaussianPyramidVertKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00127">CLSeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00201">GCLogits1DNormKernel::configure()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00144">CLSobel5x5VertKernel::configure()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00147">CLSobel7x7VertKernel::configure()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00115">CLCopyToArrayKernel::configure()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00217">NESobel5x5VertKernel::configure()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00307">NESobel7x7VertKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00666">NESeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00714">NEHOGBlockNormalizationKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00970">NEEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00180">CLSeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00173">CLEdgeTraceKernel::configure()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00123">CLLKTrackerStage0Kernel::configure()</a>, <a class="el" href="_n_e_min_max_location_kernel_8cpp_source.xhtml#l00335">NEMinMaxLocationKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01103">NESeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00246">CLConvolutionRectangleKernel::configure()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00213">CLLKTrackerStage1Kernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01059">NEEdgeTraceKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01427">NEConvolutionRectangleKernel::configure()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>, and <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>.</p>
 <div class="fragment"><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;{</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;    <span class="keywordtype">bool</span> window_changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;    <a class="code" href="namespacearm__compute_1_1utility.xhtml#a067ebd28103d827b6ec17032e2344064">utility::for_each</a>([&amp;](<span class="keyword">const</span> IAccessWindow &amp; w)</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;    {</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;        window_changed |= w.update_window_if_needed(win);</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;    },</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;    patterns...);</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;    <span class="keywordtype">bool</span> padding_changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    <a class="code" href="namespacearm__compute_1_1utility.xhtml#a067ebd28103d827b6ec17032e2344064">utility::for_each</a>([&amp;](IAccessWindow &amp; w)</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    {</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;        padding_changed |= w.update_padding_if_needed(win);</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;    },</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;    patterns...);</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;    <span class="keywordflow">return</span> window_changed;</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utility_xhtml_a067ebd28103d827b6ec17032e2344064"><div class="ttname"><a href="namespacearm__compute_1_1utility.xhtml#a067ebd28103d827b6ec17032e2344064">arm_compute::utility::for_each</a></div><div class="ttdeci">void for_each(F &amp;&amp;)</div><div class="ttdoc">Base case of for_each. </div><div class="ttdef"><b>Definition:</b> <a href="_utility_8h_source.xhtml#l00091">Utility.h:91</a></div></div>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="ab55486f1153a4c5f507d4923b59fc6a0"></a>
+<a id="abe949a509da417044624d62a73057441"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe949a509da417044624d62a73057441">&#9670;&nbsp;</a></span>vadd() <span class="overload">[1/3]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; arm_compute::vadd </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00232">232</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ab11431f1a64a618e5ed1d37634d0e0fe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab11431f1a64a618e5ed1d37634d0e0fe">&#9670;&nbsp;</a></span>vadd() <span class="overload">[2/3]</span></h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; arm_compute::vadd </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00232">232</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a4cc9ed76f48e918e73249c894380f91b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4cc9ed76f48e918e73249c894380f91b">&#9670;&nbsp;</a></span>vadd() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float32x4x4_t arm_compute::vadd </td>
+          <td>(</td>
+          <td class="paramtype">float32x4x4_t&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float32x4x4_t&#160;</td>
+          <td class="paramname"><em>b</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">324</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00281">ValidRegion::anchor</a>, <a class="el" href="_error_8h_source.xhtml#l00167">ARM_COMPUTE_CREATE_ERROR</a>, <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00071">ARM_COMPUTE_RETURN_ERROR_ON_CPU_F16_UNSUPPORTED</a>, <a class="el" href="_validate_8h_source.xhtml#l00791">ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN</a>, <a class="el" href="_validate_8h_source.xhtml#l00545">ARM_COMPUTE_RETURN_ERROR_ON_MISMATCHING_DATA_TYPES</a>, <a class="el" href="_validate_8h_source.xhtml#l00288">ARM_COMPUTE_RETURN_ERROR_ON_MISMATCHING_DIMENSIONS</a>, <a class="el" href="_validate_8h_source.xhtml#l00610">ARM_COMPUTE_RETURN_ERROR_ON_MISMATCHING_QUANTIZATION_INFO</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00201">auto_init_if_empty()</a>, <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00028">calculate_max_window()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">ceil_to_multiple()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00108">data_size_from_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00265">arm_compute::test::validation::in</a>, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00266">arm_compute::test::validation::out</a>, <a class="el" href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00087">arm_compute::test::validation::output_shape</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a3f3e1a3200223e6a304a533b1016e749">ITensorInfo::quantization_info()</a>, <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579">RUNTIME_ERROR</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a9586081a29fceb532ab270bd843abee6">ITensorInfo::set_valid_region()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00282">ValidRegion::shape</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a18064e0011c3869d884653e9e7c47b66">ITensorInfo::total_size()</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00368">update_window_and_padding()</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">ITensorInfo::valid_region()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00123">vec_size_of()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">vget_high()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">vget_low()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">vmax()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">vpmax()</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00081">Dimensions&lt; T &gt;::x()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;{</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    float32x4x4_t res = { {</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;            vaddq_f32(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>.val[0], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7b8004eef325a40dd43eb80755610fff">b</a>.val[0]),</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;            vaddq_f32(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>.val[1], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7b8004eef325a40dd43eb80755610fff">b</a>.val[1]),</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;            vaddq_f32(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>.val[2], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7b8004eef325a40dd43eb80755610fff">b</a>.val[2]),</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;            vaddq_f32(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>.val[3], <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7b8004eef325a40dd43eb80755610fff">b</a>.val[3])</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        }</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    };</div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_aac40b7097f2bda9274ae07fa33d15a79"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">arm_compute::test::validation::a</a></div><div class="ttdeci">gemm configure &amp; a</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00102">GEMM.cpp:102</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7b8004eef325a40dd43eb80755610fff"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7b8004eef325a40dd43eb80755610fff">arm_compute::test::validation::b</a></div><div class="ttdeci">CLTensor b</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00091">GEMM.cpp:91</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a6cb464349a8f184ffb8eded9ae9e5925"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6cb464349a8f184ffb8eded9ae9e5925">&#9670;&nbsp;</a></span>vcvt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">VO arm_compute::vcvt </td>
+          <td>(</td>
+          <td class="paramtype">VI&#160;</td>
+          <td class="paramname"><em>vec</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a146b84422a0eaf6c66ba8156425b5bdf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a146b84422a0eaf6c66ba8156425b5bdf">&#9670;&nbsp;</a></span>vcvt< float32x4x4_t >()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float32x4x4_t <a class="el" href="namespacearm__compute.xhtml#a6cb464349a8f184ffb8eded9ae9e5925">arm_compute::vcvt</a>&lt; float32x4x4_t &gt; </td>
+          <td>(</td>
+          <td class="paramtype">uint8x16_t&#160;</td>
+          <td class="paramname"><em>vec</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00238">238</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">vget_high()</a>, and <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">vget_low()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span>    low  = vmovl_u8(<a class="code" href="namespacearm__compute.xhtml#ae83ce5db69a7a14f5c0ee9d9326e1a40">vget_low</a>(vec));</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;    <span class="keyword">const</span> <span class="keyword">auto</span>    high = vmovl_u8(<a class="code" href="namespacearm__compute.xhtml#abc735b1b07e30e093dd39507606a1e35">vget_high</a>(vec));</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;    float32x4x4_t res  = { {</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;            vcvtq_f32_u32(vmovl_u16(<a class="code" href="namespacearm__compute.xhtml#ae83ce5db69a7a14f5c0ee9d9326e1a40">vget_low</a>(low))),</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;            vcvtq_f32_u32(vmovl_u16(<a class="code" href="namespacearm__compute.xhtml#abc735b1b07e30e093dd39507606a1e35">vget_high</a>(low))),</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;            vcvtq_f32_u32(vmovl_u16(<a class="code" href="namespacearm__compute.xhtml#ae83ce5db69a7a14f5c0ee9d9326e1a40">vget_low</a>(high))),</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;            vcvtq_f32_u32(vmovl_u16(<a class="code" href="namespacearm__compute.xhtml#abc735b1b07e30e093dd39507606a1e35">vget_high</a>(high)))</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        }</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    };</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;    <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_abc735b1b07e30e093dd39507606a1e35"><div class="ttname"><a href="namespacearm__compute.xhtml#abc735b1b07e30e093dd39507606a1e35">arm_compute::vget_high</a></div><div class="ttdeci">vec_8_byte_t&lt; float &gt; vget_high(vec_16_byte_t&lt; float &gt; vec)</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">NESoftmaxLayerKernel.cpp:227</a></div></div>
+<div class="ttc" id="namespacearm__compute_xhtml_ae83ce5db69a7a14f5c0ee9d9326e1a40"><div class="ttname"><a href="namespacearm__compute.xhtml#ae83ce5db69a7a14f5c0ee9d9326e1a40">arm_compute::vget_low</a></div><div class="ttdeci">vec_8_byte_t&lt; float &gt; vget_low(vec_16_byte_t&lt; float &gt; vec)</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">NESoftmaxLayerKernel.cpp:227</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="ab6bc00d6c4503a0bc303dd363e021476"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab6bc00d6c4503a0bc303dd363e021476">&#9670;&nbsp;</a></span>vcvt< uint8x16_t >()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint8x16_t <a class="el" href="namespacearm__compute.xhtml#a6cb464349a8f184ffb8eded9ae9e5925">arm_compute::vcvt</a>&lt; uint8x16_t &gt; </td>
+          <td>(</td>
+          <td class="paramtype">float32x4x4_t&#160;</td>
+          <td class="paramname"><em>vec</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00253">253</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;{</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    uint16x8x2_t resU16 = { {</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;            vcombine_u16(vqmovn_u32(vcvtq_u32_f32(vec.val[0])),</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;            vqmovn_u32(vcvtq_u32_f32(vec.val[1]))),</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;            vcombine_u16(vqmovn_u32(vcvtq_u32_f32(vec.val[2])),</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;            vqmovn_u32(vcvtq_u32_f32(vec.val[3])))</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;        }</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    };</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    uint8x16_t res = vcombine_u8(vqmovn_u16(resU16.val[0]), vqmovn_u16(resU16.val[1]));</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;    <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a2603e5f72e3fa052025c189c1a6647ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2603e5f72e3fa052025c189c1a6647ce">&#9670;&nbsp;</a></span>vdup_n()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">V arm_compute::vdup_n </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a>&lt; V &gt;&#160;</td>
+          <td class="paramname"><em>val</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00123">vec_size_of()</a>.</p>
+
+</div>
+</div>
+<a id="aeabe5dd1c5751f380322a841d7ad8d7a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeabe5dd1c5751f380322a841d7ad8d7a">&#9670;&nbsp;</a></span>vdup_n< float32x4x4_t >()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float32x4x4_t <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; float32x4x4_t &gt; </td>
+          <td>(</td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>val</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00300">300</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;{</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    float32x4x4_t res = { {</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;            vdupq_n_f32(val),</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;            vdupq_n_f32(val),</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;            vdupq_n_f32(val),</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;            vdupq_n_f32(val)</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;        }</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    };</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ace69f5de3783f9cd924dac392710facf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace69f5de3783f9cd924dac392710facf">&#9670;&nbsp;</a></span>vdup_n< vec_16_byte_t< float > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aa6ec87dc4f97241833eace4b1784cc50"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6ec87dc4f97241833eace4b1784cc50">&#9670;&nbsp;</a></span>vdup_n< vec_16_byte_t< int16_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">int16_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a434a14d651e75e624bfed91646a9582e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a434a14d651e75e624bfed91646a9582e">&#9670;&nbsp;</a></span>vdup_n< vec_16_byte_t< int32_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">int32_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a3c5a58b994f82b7eb24e85803fdd08c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c5a58b994f82b7eb24e85803fdd08c1">&#9670;&nbsp;</a></span>vdup_n< vec_16_byte_t< int8_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">int8_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a93020987fbede1b8da7db6a1a855ddd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93020987fbede1b8da7db6a1a855ddd4">&#9670;&nbsp;</a></span>vdup_n< vec_16_byte_t< uint16_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">uint16_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aacce75282b76aeb1eda5375b6dcef231"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aacce75282b76aeb1eda5375b6dcef231">&#9670;&nbsp;</a></span>vdup_n< vec_16_byte_t< uint32_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">uint32_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a84aacbb969d72f3b89aa93cc87af9bdf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a84aacbb969d72f3b89aa93cc87af9bdf">&#9670;&nbsp;</a></span>vdup_n< vec_16_byte_t< uint8_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ae23d199254b002d668fde87246f2f6f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae23d199254b002d668fde87246f2f6f7">&#9670;&nbsp;</a></span>vdup_n< vec_8_byte_t< float > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a10a9088cc35ece085610063eec583ad1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10a9088cc35ece085610063eec583ad1">&#9670;&nbsp;</a></span>vdup_n< vec_8_byte_t< int16_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">int16_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aee16a2b366642146ef353e0939a71b83"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee16a2b366642146ef353e0939a71b83">&#9670;&nbsp;</a></span>vdup_n< vec_8_byte_t< int32_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">int32_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="afbcedeccc32a67996ea90a0a97c94269"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afbcedeccc32a67996ea90a0a97c94269">&#9670;&nbsp;</a></span>vdup_n< vec_8_byte_t< int8_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">int8_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aca706ca8cd2fec97cf6b3ab747c40dc6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca706ca8cd2fec97cf6b3ab747c40dc6">&#9670;&nbsp;</a></span>vdup_n< vec_8_byte_t< uint16_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">uint16_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="af8c50d8dac4fe454183078d34515b50a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8c50d8dac4fe454183078d34515b50a">&#9670;&nbsp;</a></span>vdup_n< vec_8_byte_t< uint32_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">uint32_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a194e168c19bf049bd3e903552f112d5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a194e168c19bf049bd3e903552f112d5c">&#9670;&nbsp;</a></span>vdup_n< vec_8_byte_t< uint8_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="af4b13d125dfe1bec25b8df8840c6dd8f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af4b13d125dfe1bec25b8df8840c6dd8f">&#9670;&nbsp;</a></span>vec_size_of()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">constexpr size_t arm_compute::vec_size_of </td>
+          <td>(</td>
+          <td class="paramtype">const V &amp;&#160;</td>
+          <td class="paramname"><em>vec</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00123">123</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">vdup_n()</a>, and <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">vld()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>, and <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;{</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">sizeof</span>(vec) / <span class="keyword">sizeof</span>(elem_type_t&lt;V&gt;);</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a91d2c1f68de68401d1aa465e27f78ab0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a91d2c1f68de68401d1aa465e27f78ab0">&#9670;&nbsp;</a></span>vexp() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float32x4x4_t arm_compute::vexp </td>
+          <td>(</td>
+          <td class="paramtype">float32x4x4_t&#160;</td>
+          <td class="paramname"><em>vec</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00267">267</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>, and <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00279">vexp()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;{</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;    float32x4x4_t res = { {</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;            <a class="code" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a>(vec.val[0]),</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;            <a class="code" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a>(vec.val[1]),</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;            <a class="code" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a>(vec.val[2]),</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;            <a class="code" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a>(vec.val[3])</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;        }</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;    };</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;    <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_ab55486f1153a4c5f507d4923b59fc6a0"><div class="ttname"><a href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">arm_compute::vexpq_f32</a></div><div class="ttdeci">float32x4_t vexpq_f32(float32x4_t x)</div><div class="ttdoc">Calculate exponential. </div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="adcb77ffd576a7addf3be8508e50451d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adcb77ffd576a7addf3be8508e50451d2">&#9670;&nbsp;</a></span>vexp() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float32x4_t arm_compute::vexp </td>
+          <td>(</td>
+          <td class="paramtype">const float32x4_t &amp;&#160;</td>
+          <td class="paramname"><em>vec</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00279">279</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00267">vexp()</a>, and <a class="el" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;{</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a>(vec);</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_ab55486f1153a4c5f507d4923b59fc6a0"><div class="ttname"><a href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">arm_compute::vexpq_f32</a></div><div class="ttdeci">float32x4_t vexpq_f32(float32x4_t x)</div><div class="ttdoc">Calculate exponential. </div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="ab55486f1153a4c5f507d4923b59fc6a0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab55486f1153a4c5f507d4923b59fc6a0">&#9670;&nbsp;</a></span>vexpq_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18790,9 +22396,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The calculated exponent. </dd></dl>
 
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00267">vexp()</a>.</p>
+
 </div>
 </div>
-<a class="anchor" id="af7a0f3e622aa4bc8c6077d2262a04e2e"></a>
+<a id="af7a0f3e622aa4bc8c6077d2262a04e2e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7a0f3e622aa4bc8c6077d2262a04e2e">&#9670;&nbsp;</a></span>vfloorq_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18815,9 +22425,819 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The calculated floor vector. </dd></dl>
 
+<p class="reference">Referenced by <a class="el" href="_n_e_floor_kernel_8cpp_source.xhtml#l00101">NEFloorKernel::run()</a>.</p>
+
 </div>
 </div>
-<a class="anchor" id="acc6fd1bcd12ef1141e15401a04d31187"></a>
+<a id="af311129b4dccf2fbd9307a7d644876d1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af311129b4dccf2fbd9307a7d644876d1">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[1/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; arm_compute::vget_high </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>, and <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00238">vcvt&lt; float32x4x4_t &gt;()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="abfb64320f5b05fc08dffafc2b039e559"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abfb64320f5b05fc08dffafc2b039e559">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[2/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; arm_compute::vget_high </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aebe61fd1828294b9794b3c87174649b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebe61fd1828294b9794b3c87174649b2">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[3/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; arm_compute::vget_high </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="afc14b8933176ce40c7b99a1ef0f6a062"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc14b8933176ce40c7b99a1ef0f6a062">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[4/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; arm_compute::vget_high </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a94683a211fef1215ec7576bc74a1cc68"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a94683a211fef1215ec7576bc74a1cc68">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[5/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; arm_compute::vget_high </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aeaf3494a0fcf8be9555194a8e7a18a07"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeaf3494a0fcf8be9555194a8e7a18a07">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[6/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; arm_compute::vget_high </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="abc735b1b07e30e093dd39507606a1e35"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc735b1b07e30e093dd39507606a1e35">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[7/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; arm_compute::vget_high </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a40552ea65ee3fc6d7fa7f1fb17baebe7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a40552ea65ee3fc6d7fa7f1fb17baebe7">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[1/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint8_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a5229f4c7a2c8d07ebc247c3e5075af2b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5229f4c7a2c8d07ebc247c3e5075af2b">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[2/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint8_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a2cb9483082ea29427722db15d23ec130"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2cb9483082ea29427722db15d23ec130">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[3/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">int8_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a46b08aeab78badc7365668e0051e7fac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a46b08aeab78badc7365668e0051e7fac">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[4/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">int8_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aaa7aea48ed8a5c267d4631ad6884e0bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa7aea48ed8a5c267d4631ad6884e0bd">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[5/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint16_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ab2aef7b4b81a6108c8d7a8f782340850"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab2aef7b4b81a6108c8d7a8f782340850">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[6/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint16_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aab831e66636598a49c321c248da55108"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab831e66636598a49c321c248da55108">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[7/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">int16_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a21a10c0d7629ac794f59a6e06dad8b7c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a21a10c0d7629ac794f59a6e06dad8b7c">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[8/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">int16_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a1050dd97652f516c036f54173d3cce10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1050dd97652f516c036f54173d3cce10">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[9/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint32_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a6e766d98a0e130be624d6dee74c8fb29"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e766d98a0e130be624d6dee74c8fb29">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[10/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint32_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a61f87c089f50e7016ac74d79bbc417eb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a61f87c089f50e7016ac74d79bbc417eb">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[11/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">int32_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="adc187f0eff944013383bdc28e8d1e713"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc187f0eff944013383bdc28e8d1e713">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[12/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">int32_t vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a2b122d56b7bf307cf06ec05b4bdeea63"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b122d56b7bf307cf06ec05b4bdeea63">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[13/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">float vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a696409f1f3c572c8a899605e36b87e9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a696409f1f3c572c8a899605e36b87e9a">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[14/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">float vget_lane </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a45617be0c289f11c60f659f3123fb210"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45617be0c289f11c60f659f3123fb210">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[15/15]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float arm_compute::vget_lane </td>
+          <td>(</td>
+          <td class="paramtype">float32x4x4_t&#160;</td>
+          <td class="paramname"><em>vec</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a3bb60064e505cfd3a0d43528a3c1845d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3bb60064e505cfd3a0d43528a3c1845d">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[1/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; arm_compute::vget_low </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>, and <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00238">vcvt&lt; float32x4x4_t &gt;()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a2a0a49e26931849079897f0a225589cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a0a49e26931849079897f0a225589cb">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[2/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; arm_compute::vget_low </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a5b825f82ef9a09db968b003310b44030"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b825f82ef9a09db968b003310b44030">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[3/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; arm_compute::vget_low </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a264ecd01ca0763d79aa4ad5515ce7b65"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a264ecd01ca0763d79aa4ad5515ce7b65">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[4/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; arm_compute::vget_low </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a0477c495757cd6c2bdf6f151aa26a542"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0477c495757cd6c2bdf6f151aa26a542">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[5/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; arm_compute::vget_low </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a4624ac629ac1199b9482f01334fe93a8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4624ac629ac1199b9482f01334fe93a8">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[6/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; arm_compute::vget_low </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ae83ce5db69a7a14f5c0ee9d9326e1a40"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae83ce5db69a7a14f5c0ee9d9326e1a40">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[7/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; arm_compute::vget_low </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="acc6fd1bcd12ef1141e15401a04d31187"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acc6fd1bcd12ef1141e15401a04d31187">&#9670;&nbsp;</a></span>vinv_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18842,7 +23262,9 @@
 
 </div>
 </div>
-<a class="anchor" id="a2e0f2412b4d1302272d1aeb85d21ab25"></a>
+<a id="a2e0f2412b4d1302272d1aeb85d21ab25"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2e0f2412b4d1302272d1aeb85d21ab25">&#9670;&nbsp;</a></span>vinvq_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18865,9 +23287,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The calculated reciprocal. </dd></dl>
 
+<p class="reference">Referenced by <a class="el" href="_n_e_normalization_layer_kernel_8cpp_source.xhtml#l00115">NENormalizationLayerKernel::configure()</a>.</p>
+
 </div>
 </div>
-<a class="anchor" id="afc415e7fc5e633a0b85b08b2bba5b5cf"></a>
+<a id="afc415e7fc5e633a0b85b08b2bba5b5cf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc415e7fc5e633a0b85b08b2bba5b5cf">&#9670;&nbsp;</a></span>vinvsqrt_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18892,7 +23318,9 @@
 
 </div>
 </div>
-<a class="anchor" id="ab8970d7aed07d8649f5e3088455948b8"></a>
+<a id="ab8970d7aed07d8649f5e3088455948b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab8970d7aed07d8649f5e3088455948b8">&#9670;&nbsp;</a></span>vinvsqrtq_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18915,9 +23343,425 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The calculated inverse square root. </dd></dl>
 
+<p class="reference">Referenced by <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l00335">NEPoolingLayerKernel::configure()</a>.</p>
+
 </div>
 </div>
-<a class="anchor" id="a1d090b80b655e7f8fd8977bb93808b04"></a>
+<a id="a85d0b4103385d996d4014691d2df0cf1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85d0b4103385d996d4014691d2df0cf1">&#9670;&nbsp;</a></span>vld()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">V arm_compute::vld </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a>&lt; V &gt;&gt;&#160;</td>
+          <td class="paramname"><em>ptr</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00123">vec_size_of()</a>.</p>
+
+</div>
+</div>
+<a id="aa8e2f6d1e361e3ac707595f1092b9103"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa8e2f6d1e361e3ac707595f1092b9103">&#9670;&nbsp;</a></span>vld< vec_16_byte_t< float > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="afd4981f6532c3a76716e3053d119e269"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afd4981f6532c3a76716e3053d119e269">&#9670;&nbsp;</a></span>vld< vec_16_byte_t< int16_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a1acc117060f7ad740f059fbb97359d6b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1acc117060f7ad740f059fbb97359d6b">&#9670;&nbsp;</a></span>vld< vec_16_byte_t< int32_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a9d896907abfbde0613b952bb4db5897a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d896907abfbde0613b952bb4db5897a">&#9670;&nbsp;</a></span>vld< vec_16_byte_t< int8_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ad2174760efe31f80528b5a4cf8ebed66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad2174760efe31f80528b5a4cf8ebed66">&#9670;&nbsp;</a></span>vld< vec_16_byte_t< uint16_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a13a69ef04626a27771a6e19542cac767"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13a69ef04626a27771a6e19542cac767">&#9670;&nbsp;</a></span>vld< vec_16_byte_t< uint32_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a70cff70817eb6a40e893331c4df276a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70cff70817eb6a40e893331c4df276a5">&#9670;&nbsp;</a></span>vld< vec_16_byte_t< uint8_t > >()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a323be126777e57614c5dc57ee1345c7e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a323be126777e57614c5dc57ee1345c7e">&#9670;&nbsp;</a></span>vld< vec_8_byte_t< float > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a1b29ca880e2b7282c9318d6c36f07140"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b29ca880e2b7282c9318d6c36f07140">&#9670;&nbsp;</a></span>vld< vec_8_byte_t< int16_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a10449c2936e1986b131e8c070db9c16b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10449c2936e1986b131e8c070db9c16b">&#9670;&nbsp;</a></span>vld< vec_8_byte_t< int32_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="add42730b56d7b3614fc39f525eb55286"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add42730b56d7b3614fc39f525eb55286">&#9670;&nbsp;</a></span>vld< vec_8_byte_t< int8_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ab764431d90825796c5060d85810781fa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab764431d90825796c5060d85810781fa">&#9670;&nbsp;</a></span>vld< vec_8_byte_t< uint16_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ac7a8e67b90d2c99626733ea9bdc60a1d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7a8e67b90d2c99626733ea9bdc60a1d">&#9670;&nbsp;</a></span>vld< vec_8_byte_t< uint32_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="abcfc5b1ed91557ba1b6edf2eae8533e7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abcfc5b1ed91557ba1b6edf2eae8533e7">&#9670;&nbsp;</a></span>vld< vec_8_byte_t< uint8_t > >()</h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; &gt; </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a1d090b80b655e7f8fd8977bb93808b04"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d090b80b655e7f8fd8977bb93808b04">&#9670;&nbsp;</a></span>vlogq_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18942,7 +23786,277 @@
 
 </div>
 </div>
-<a class="anchor" id="ace593813d742d127296b09fa8ab3f85e"></a>
+<a id="a1cb1c90103d83ca052919e98dbaac553"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1cb1c90103d83ca052919e98dbaac553">&#9670;&nbsp;</a></span>vmax() <span class="overload">[1/7]</span></h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; arm_compute::vmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a2ee044b41b71a344cad69a08aecb1d5f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ee044b41b71a344cad69a08aecb1d5f">&#9670;&nbsp;</a></span>vmax() <span class="overload">[2/7]</span></h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; arm_compute::vmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a7c4bfe1c9c07571952a81783fa8540de"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c4bfe1c9c07571952a81783fa8540de">&#9670;&nbsp;</a></span>vmax() <span class="overload">[3/7]</span></h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; arm_compute::vmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="abe221c26fe4f91102c0f7b5e2336c070"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe221c26fe4f91102c0f7b5e2336c070">&#9670;&nbsp;</a></span>vmax() <span class="overload">[4/7]</span></h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; arm_compute::vmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a1bb4dd507d55db5ae8fafab84d31b870"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1bb4dd507d55db5ae8fafab84d31b870">&#9670;&nbsp;</a></span>vmax() <span class="overload">[5/7]</span></h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; arm_compute::vmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a4e2374d1a63f2e9433b7965eede927af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4e2374d1a63f2e9433b7965eede927af">&#9670;&nbsp;</a></span>vmax() <span class="overload">[6/7]</span></h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; arm_compute::vmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a837afab6fd85e34f2bd6e267f4c9e849"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a837afab6fd85e34f2bd6e267f4c9e849">&#9670;&nbsp;</a></span>vmax() <span class="overload">[7/7]</span></h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; arm_compute::vmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ace593813d742d127296b09fa8ab3f85e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace593813d742d127296b09fa8ab3f85e">&#9670;&nbsp;</a></span>vmax2q_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -18976,9 +24090,13 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The lane-by-lane maximum -&gt; float32x4x2 </dd></dl>
 
+<p class="reference">Referenced by <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l00335">NEPoolingLayerKernel::configure()</a>.</p>
+
 </div>
 </div>
-<a class="anchor" id="aba8de9eaa10a7cb45c5aa603585d0e4c"></a>
+<a id="aba8de9eaa10a7cb45c5aa603585d0e4c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aba8de9eaa10a7cb45c5aa603585d0e4c">&#9670;&nbsp;</a></span>vmlaq_qasymm8()</h2>
+
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -19028,11 +24146,351 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>A 16-component vector in QASYMM8 format, saturated to fit </dd></dl>
 
-<p>Definition at line <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00034">34</a> of file <a class="el" href="_n_e_asymm_8inl_source.xhtml">NEAsymm.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00034">34</a> of file <a class="el" href="_n_e_asymm_8inl_source.xhtml">NEAsymm.inl</a>.</p>
 <div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="comment">// Convert uint8 vectors to uint16 vectors</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keyword">const</span> uint8x8_t vd_low        = vget_low_u8(vd);</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <span class="keyword">const</span> uint8x8_t vd_high       = vget_high_u8(vd);</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    uint16x8_t      vd_low_u16x8  = vmovl_u8(vd_low);</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    uint16x8_t      vd_high_u16x8 = vmovl_u8(vd_high);</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <span class="comment">// Convert uint16 vectors to uint32 vectors</span></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    uint32x4_t A_u32x4 = vmovl_u16(vget_low_u16(vd_low_u16x8));</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    uint32x4_t B_u32x4 = vmovl_u16(vget_high_u16(vd_low_u16x8));</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    uint32x4_t C_u32x4 = vmovl_u16(vget_low_u16(vd_high_u16x8));</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    uint32x4_t D_u32x4 = vmovl_u16(vget_high_u16(vd_high_u16x8));</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="comment">// Convert uint32 vectors to float32 vectors</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    float32x4_t A_f32x4 = vcvtq_f32_u32(A_u32x4);</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    float32x4_t B_f32x4 = vcvtq_f32_u32(B_u32x4);</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    float32x4_t C_f32x4 = vcvtq_f32_u32(C_u32x4);</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    float32x4_t D_f32x4 = vcvtq_f32_u32(D_u32x4);</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <span class="comment">// vd = vd*vs + vo</span></div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    A_f32x4 = vmlaq_f32(vo, A_f32x4, vs);</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    B_f32x4 = vmlaq_f32(vo, B_f32x4, vs);</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    C_f32x4 = vmlaq_f32(vo, C_f32x4, vs);</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    D_f32x4 = vmlaq_f32(vo, D_f32x4, vs);</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <span class="comment">// Convert float32 vectors to uint32 vectors</span></div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    A_u32x4 = vcvtq_u32_f32(A_f32x4);</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    B_u32x4 = vcvtq_u32_f32(B_f32x4);</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    C_u32x4 = vcvtq_u32_f32(C_f32x4);</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    D_u32x4 = vcvtq_u32_f32(D_f32x4);</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <span class="comment">// Convert uint32 vectors to uint16 vectors (with saturation)</span></div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    vd_low_u16x8  = vcombine_u16(vqmovn_u32(A_u32x4), vqmovn_u32(B_u32x4));</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    vd_high_u16x8 = vcombine_u16(vqmovn_u32(C_u32x4), vqmovn_u32(D_u32x4));</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <span class="comment">// convert uint16 vectors to uint8 vectors (with saturation)</span></div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="keywordflow">return</span> vcombine_u8(vqmovn_u16(vd_low_u16x8), vqmovn_u16(vd_high_u16x8));</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;}</div></div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="aa6465367a67af2bae4ca46750231dae0"></a>
+<a id="a5dce3fda8114a32a2c8f1f517adca368"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5dce3fda8114a32a2c8f1f517adca368">&#9670;&nbsp;</a></span>vmul_n() <span class="overload">[1/2]</span></h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; arm_compute::vmul_n </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>vec</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>val</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00232">232</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="abc9f4323a93d34d19bab7cc371649441"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc9f4323a93d34d19bab7cc371649441">&#9670;&nbsp;</a></span>vmul_n() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float32x4x4_t arm_compute::vmul_n </td>
+          <td>(</td>
+          <td class="paramtype">float32x4x4_t&#160;</td>
+          <td class="paramname"><em>vec</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>val</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00312">312</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;{</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    float32x4x4_t res = { {</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;            vmulq_n_f32(vec.val[0], val),</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;            vmulq_n_f32(vec.val[1], val),</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;            vmulq_n_f32(vec.val[2], val),</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;            vmulq_n_f32(vec.val[3], val)</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;        }</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;    };</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aae85042ef273ca700734604b5488f2ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae85042ef273ca700734604b5488f2ff">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[1/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; arm_compute::vpmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">vadd()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a0d9a679f8dfa41f17d46f6c1e56ca82d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0d9a679f8dfa41f17d46f6c1e56ca82d">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[2/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; arm_compute::vpmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a2bc9036a2d288d7a4ad2d015d91ba5d9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2bc9036a2d288d7a4ad2d015d91ba5d9">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[3/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; arm_compute::vpmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ab831eb6268e8d3dcfd9ce6e1e7daf598"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab831eb6268e8d3dcfd9ce6e1e7daf598">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[4/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; arm_compute::vpmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aacd10f0e821aff266057a1fc443c6344"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aacd10f0e821aff266057a1fc443c6344">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[5/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; arm_compute::vpmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aeb42b9eb65ed0207ddcdb9c870fd5697"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb42b9eb65ed0207ddcdb9c870fd5697">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[6/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; arm_compute::vpmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="af8efc828ccf4a8f2c6b26cfe3813952d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8efc828ccf4a8f2c6b26cfe3813952d">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[7/7]</span></h2>
+
+<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#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; arm_compute::vpmax </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aa6465367a67af2bae4ca46750231dae0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6465367a67af2bae4ca46750231dae0">&#9670;&nbsp;</a></span>vpowq_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -19067,9 +24525,587 @@
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>The calculated power. </dd></dl>
 
+<p class="reference">Referenced by <a class="el" href="_n_e_normalization_layer_kernel_8cpp_source.xhtml#l00115">NENormalizationLayerKernel::configure()</a>.</p>
+
 </div>
 </div>
-<a class="anchor" id="a3e59419da344d02daca9c5b274a1da45"></a>
+<a id="a3753b9d735032ba72e7df0c5cbba31a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3753b9d735032ba72e7df0c5cbba31a1">&#9670;&nbsp;</a></span>vst() <span class="overload">[1/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aa17a7667769390f153ad5289d5390341"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa17a7667769390f153ad5289d5390341">&#9670;&nbsp;</a></span>vst() <span class="overload">[2/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="acec5b4ba08b0ab7d080e2177e4b3deb1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acec5b4ba08b0ab7d080e2177e4b3deb1">&#9670;&nbsp;</a></span>vst() <span class="overload">[3/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ab2c29d96efc44a4163d8f594cd836d1e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab2c29d96efc44a4163d8f594cd836d1e">&#9670;&nbsp;</a></span>vst() <span class="overload">[4/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a090a9d8254580d7c22668e21e581d58e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a090a9d8254580d7c22668e21e581d58e">&#9670;&nbsp;</a></span>vst() <span class="overload">[5/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a9893527df6922f85f0f3173142247ece"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9893527df6922f85f0f3173142247ece">&#9670;&nbsp;</a></span>vst() <span class="overload">[6/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a7a7441e9c3870a817f9084697730a0e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a7441e9c3870a817f9084697730a0e9">&#9670;&nbsp;</a></span>vst() <span class="overload">[7/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ac9aedf36525da0e2306db27867c2bb5d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac9aedf36525da0e2306db27867c2bb5d">&#9670;&nbsp;</a></span>vst() <span class="overload">[8/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aca451511712482f55001063da2317427"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca451511712482f55001063da2317427">&#9670;&nbsp;</a></span>vst() <span class="overload">[9/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="aa1e4aafb14bd8eee38caa7ad5db69507"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa1e4aafb14bd8eee38caa7ad5db69507">&#9670;&nbsp;</a></span>vst() <span class="overload">[10/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a59f96d9a74850a843c1f710803fe8de8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59f96d9a74850a843c1f710803fe8de8">&#9670;&nbsp;</a></span>vst() <span class="overload">[11/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a788c1fc3809f77d2866e4282d374770b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a788c1fc3809f77d2866e4282d374770b">&#9670;&nbsp;</a></span>vst() <span class="overload">[12/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="abd25994f8abe7093700a88a65fdb6ad5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd25994f8abe7093700a88a65fdb6ad5">&#9670;&nbsp;</a></span>vst() <span class="overload">[13/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a01cfd18ed87a496fc5d3be04a040be61"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a01cfd18ed87a496fc5d3be04a040be61">&#9670;&nbsp;</a></span>vst() <span class="overload">[14/14]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void arm_compute::vst </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>ptr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>vec</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ad0ebbe865e9e6cfd1b2df041f8374ed0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad0ebbe865e9e6cfd1b2df041f8374ed0">&#9670;&nbsp;</a></span>vsub()</h2>
+
+<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#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; arm_compute::vsub </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
+          <td class="paramname"><em>b</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 class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00232">232</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00486">NELogits1DMaxKernel::run()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;{</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a3e59419da344d02daca9c5b274a1da45"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3e59419da344d02daca9c5b274a1da45">&#9670;&nbsp;</a></span>vtanhq_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -19096,7 +25132,9 @@
 
 </div>
 </div>
-<a class="anchor" id="a0c10bb00a86edd8d0cd4c33b494f6cd4"></a>
+<a id="a0c10bb00a86edd8d0cd4c33b494f6cd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c10bb00a86edd8d0cd4c33b494f6cd4">&#9670;&nbsp;</a></span>vtaylor_polyq_f32()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -19133,7 +25171,9 @@
 </div>
 </div>
 <h2 class="groupheader">Variable Documentation</h2>
-<a class="anchor" id="a3fed059965fe44cbe7ed4091d6b63acf"></a>
+<a id="a3fed059965fe44cbe7ed4091d6b63acf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fed059965fe44cbe7ed4091d6b63acf">&#9670;&nbsp;</a></span>CONSTANT_BORDER_VALUE</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -19145,11 +25185,13 @@
 
 <p>Constant value of the border pixels when using <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92" title="Pixels outside the image are assumed to have a constant value. ">BorderMode::CONSTANT</a>. </p>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00098">98</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00100">100</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a869945609357fa552d94eb16f7aad4e9"></a>
+<a id="a869945609357fa552d94eb16f7aad4e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a869945609357fa552d94eb16f7aad4e9">&#9670;&nbsp;</a></span>exp_tab</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -19161,11 +25203,13 @@
 <b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line">    {</div><div class="line">        vdupq_n_f32(1.f),</div><div class="line">        vdupq_n_f32(0.0416598916054f),</div><div class="line">        vdupq_n_f32(0.500000596046f),</div><div class="line">        vdupq_n_f32(0.0014122662833f),</div><div class="line">        vdupq_n_f32(1.00000011921f),</div><div class="line">        vdupq_n_f32(0.00833693705499f),</div><div class="line">        vdupq_n_f32(0.166665703058f),</div><div class="line">        vdupq_n_f32(0.000195780929062f),</div><div class="line">    }</div><div class="line">}</div></div><!-- fragment -->
 <p>Exponent polynomial coefficients. </p>
 
-<p>Definition at line <a class="el" href="_n_e_math_8inl_source.xhtml#l00028">28</a> of file <a class="el" href="_n_e_math_8inl_source.xhtml">NEMath.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_math_8inl_source.xhtml#l00028">28</a> of file <a class="el" href="_n_e_math_8inl_source.xhtml">NEMath.inl</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a48fb9cf404e8f7043235bf14105c9793"></a>
+<a id="a48fb9cf404e8f7043235bf14105c9793"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a48fb9cf404e8f7043235bf14105c9793">&#9670;&nbsp;</a></span>log_tab</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -19177,11 +25221,13 @@
 <b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line">    {</div><div class="line">        vdupq_n_f32(-2.29561495781f),</div><div class="line">        vdupq_n_f32(-2.47071170807f),</div><div class="line">        vdupq_n_f32(-5.68692588806f),</div><div class="line">        vdupq_n_f32(-0.165253549814f),</div><div class="line">        vdupq_n_f32(5.17591238022f),</div><div class="line">        vdupq_n_f32(0.844007015228f),</div><div class="line">        vdupq_n_f32(4.58445882797f),</div><div class="line">        vdupq_n_f32(0.0141278216615f),</div><div class="line">    }</div><div class="line">}</div></div><!-- fragment -->
 <p>Logarithm polynomial coefficients. </p>
 
-<p>Definition at line <a class="el" href="_n_e_math_8inl_source.xhtml#l00043">43</a> of file <a class="el" href="_n_e_math_8inl_source.xhtml">NEMath.inl</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_n_e_math_8inl_source.xhtml#l00043">43</a> of file <a class="el" href="_n_e_math_8inl_source.xhtml">NEMath.inl</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a769d636d7a3c7c84579a5f477a18bc9d"></a>
+<a id="a769d636d7a3c7c84579a5f477a18bc9d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a769d636d7a3c7c84579a5f477a18bc9d">&#9670;&nbsp;</a></span>MAX_DIMS</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -19193,11 +25239,31 @@
 
 <p>Constant value used to indicate maximum dimensions of a <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window. ">Window</a>, <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml" title="Shape of a tensor. ">TensorShape</a> and <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item. ">Coordinates</a>. </p>
 
-<p>Definition at line <a class="el" href="_dimensions_8h_source.xhtml#l00037">37</a> of file <a class="el" href="_dimensions_8h_source.xhtml">Dimensions.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="_dimensions_8h_source.xhtml#l00037">37</a> of file <a class="el" href="_dimensions_8h_source.xhtml">Dimensions.h</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="af9876aedd664cac0ddeacddb40cb71cd"></a>
+<a id="a13d15bf68bbaf481be9ba3988b1cf779"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13d15bf68bbaf481be9ba3988b1cf779">&#9670;&nbsp;</a></span>num_num_elems_processed_per_iteration</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">constexpr unsigned int num_num_elems_processed_per_iteration = 16</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_n_e_table_lookup_kernel_8cpp_source.xhtml#l00043">43</a> of file <a class="el" href="_n_e_table_lookup_kernel_8cpp_source.xhtml">NETableLookupKernel.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_n_e_table_lookup_kernel_8cpp_source.xhtml#l00109">NETableLookupKernel::configure()</a>, and <a class="el" href="_n_e_table_lookup_kernel_8cpp_source.xhtml#l00046">NETableLookupKernel::NETableLookupKernel()</a>.</p>
+
+</div>
+</div>
+<a id="af9876aedd664cac0ddeacddb40cb71cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9876aedd664cac0ddeacddb40cb71cd">&#9670;&nbsp;</a></span>SCALE_PYRAMID_HALF</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -19209,13 +25275,15 @@
 
 <p>Constant value used to indicate a half-scale pyramid. </p>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00101">101</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00103">103</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
 
-<p>Referenced by <a class="el" href="validation_2_c_l_2_gaussian_pyramid_8cpp_source.xhtml#l00073">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_gaussian_pyramid_half_8cpp_source.xhtml#l00041">arm_compute::test::validation::reference::gaussian_pyramid_half()</a>, and <a class="el" href="validation_2reference_2_optical_flow_8cpp_source.xhtml#l00246">arm_compute::test::validation::reference::optical_flow()</a>.</p>
+<p class="reference">Referenced by <a class="el" href="_c_l_gaussian_pyramid_8cpp_source.xhtml#l00059">CLGaussianPyramidHalf::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_8cpp_source.xhtml#l00057">NEGaussianPyramidHalf::configure()</a>, <a class="el" href="validation_2_c_l_2_gaussian_pyramid_8cpp_source.xhtml#l00073">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_gaussian_pyramid_half_8cpp_source.xhtml#l00041">arm_compute::test::validation::reference::gaussian_pyramid_half()</a>, and <a class="el" href="validation_2reference_2_optical_flow_8cpp_source.xhtml#l00246">arm_compute::test::validation::reference::optical_flow()</a>.</p>
 
 </div>
 </div>
-<a class="anchor" id="a2ebcd5423d5fba468e7debd2e1aabe91"></a>
+<a id="a2ebcd5423d5fba468e7debd2e1aabe91"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ebcd5423d5fba468e7debd2e1aabe91">&#9670;&nbsp;</a></span>SCALE_PYRAMID_ORB</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -19227,7 +25295,9 @@
 
 <p>Constant value used to indicate a ORB scaled pyramid. </p>
 
-<p>Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00104">104</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00106">106</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_c_l_gaussian_pyramid_8cpp_source.xhtml#l00139">CLGaussianPyramidOrb::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_8cpp_source.xhtml#l00133">NEGaussianPyramidOrb::configure()</a>, <a class="el" href="_pyramid_8cpp_source.xhtml#l00041">Pyramid::init_auto_padding()</a>, and <a class="el" href="_c_l_pyramid_8cpp_source.xhtml#l00047">CLPyramid::init_auto_padding()</a>.</p>
 
 </div>
 </div>
@@ -19237,9 +25307,9 @@
 <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="footer">Generated on Wed Aug 29 2018 15:31:41 for Compute Library by
+    <li class="footer">Generated on Thu Nov 22 2018 11:57:44 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>
+    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
   </ul>
 </div>
 </body>