<!-- HTML header for doxygen 1.8.15-->
<!-- Remember to use version doxygen 1.8.15 +-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines -->
<title>Compute Library: DetectionPostProcessLayer Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <img alt="Compute Library" src="https://raw.githubusercontent.com/ARM-software/ComputeLibrary/gh-pages/ACL_logo.png" style="max-width: 100%;margin-top: 15px;margin-left: 10px"/>
  <td style="padding-left: 0.5em;">
   <div id="projectname">
   &#160;<span id="projectnumber">19.08</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classarm__compute_1_1graph_1_1frontend_1_1_detection_post_process_layer.xhtml','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">DetectionPostProcessLayer Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p>DetectionOutputPostProcess Layer.  
 <a href="classarm__compute_1_1graph_1_1frontend_1_1_detection_post_process_layer.xhtml#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_layers_8h_source.xhtml">Layers.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for DetectionPostProcessLayer:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="classarm__compute_1_1graph_1_1frontend_1_1_detection_post_process_layer__coll__graph.svg" width="208" height="112"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.xhtml">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a4c9b5e28705dc4e1b1b9418fc62bdedc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_detection_post_process_layer.xhtml#a4c9b5e28705dc4e1b1b9418fc62bdedc">DetectionPostProcessLayer</a> (<a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_sub_stream.xhtml">SubStream</a> &amp;&amp;sub_stream_class_prediction, <a class="el" href="classarm__compute_1_1_detection_post_process_layer_info.xhtml">DetectionPostProcessLayerInfo</a> detect_info, <a class="el" href="namespacearm__compute_1_1graph.xhtml#a41c3f59161734b8492782359f583b676">ITensorAccessorUPtr</a> anchors, const <a class="el" href="classarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> out_quant_info=<a class="el" href="classarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>())</td></tr>
<tr class="memdesc:a4c9b5e28705dc4e1b1b9418fc62bdedc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a detection output layer.  <a href="#a4c9b5e28705dc4e1b1b9418fc62bdedc">More...</a><br /></td></tr>
<tr class="separator:a4c9b5e28705dc4e1b1b9418fc62bdedc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a225fb162b43cbef27d5a1dbd7a51c60d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute_1_1graph.xhtml#a56952a8591a9d8481450ae707ae355e7">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_detection_post_process_layer.xhtml#a225fb162b43cbef27d5a1dbd7a51c60d">create_layer</a> (<a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_i_stream.xhtml">IStream</a> &amp;s) override</td></tr>
<tr class="memdesc:a225fb162b43cbef27d5a1dbd7a51c60d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create layer and add to the given stream.  <a href="#a225fb162b43cbef27d5a1dbd7a51c60d">More...</a><br /></td></tr>
<tr class="separator:a225fb162b43cbef27d5a1dbd7a51c60d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml">ILayer</a></td></tr>
<tr class="memitem:a0907bb3524e5dfbe23a0f694b2a55c6a inherit pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml#a0907bb3524e5dfbe23a0f694b2a55c6a">~ILayer</a> ()=default</td></tr>
<tr class="memdesc:a0907bb3524e5dfbe23a0f694b2a55c6a inherit pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default destructor.  <a href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml#a0907bb3524e5dfbe23a0f694b2a55c6a">More...</a><br /></td></tr>
<tr class="separator:a0907bb3524e5dfbe23a0f694b2a55c6a inherit pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af664a2598e05f8de28fb9f94e3902886 inherit pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml">ILayer</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml#af664a2598e05f8de28fb9f94e3902886">set_name</a> (std::string <a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml#ad8227ba86a01f26e4f173cd5e219d5d1">name</a>)</td></tr>
<tr class="memdesc:af664a2598e05f8de28fb9f94e3902886 inherit pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the name of the layer.  <a href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml#af664a2598e05f8de28fb9f94e3902886">More...</a><br /></td></tr>
<tr class="separator:af664a2598e05f8de28fb9f94e3902886 inherit pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad8227ba86a01f26e4f173cd5e219d5d1 inherit pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml#ad8227ba86a01f26e4f173cd5e219d5d1">name</a> () const</td></tr>
<tr class="memdesc:ad8227ba86a01f26e4f173cd5e219d5d1 inherit pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Layer name accessor.  <a href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml#ad8227ba86a01f26e4f173cd5e219d5d1">More...</a><br /></td></tr>
<tr class="separator:ad8227ba86a01f26e4f173cd5e219d5d1 inherit pub_methods_classarm__compute_1_1graph_1_1frontend_1_1_i_layer"><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>DetectionOutputPostProcess Layer. </p>

<p class="definition">Definition at line <a class="el" href="_layers_8h_source.xhtml#l00497">497</a> of file <a class="el" href="_layers_8h_source.xhtml">Layers.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a4c9b5e28705dc4e1b1b9418fc62bdedc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c9b5e28705dc4e1b1b9418fc62bdedc">&#9670;&nbsp;</a></span>DetectionPostProcessLayer()</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_1graph_1_1frontend_1_1_detection_post_process_layer.xhtml">DetectionPostProcessLayer</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_sub_stream.xhtml">SubStream</a> &amp;&amp;&#160;</td>
          <td class="paramname"><em>sub_stream_class_prediction</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classarm__compute_1_1_detection_post_process_layer_info.xhtml">DetectionPostProcessLayerInfo</a>&#160;</td>
          <td class="paramname"><em>detect_info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacearm__compute_1_1graph.xhtml#a41c3f59161734b8492782359f583b676">ITensorAccessorUPtr</a>&#160;</td>
          <td class="paramname"><em>anchors</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>&#160;</td>
          <td class="paramname"><em>out_quant_info</em> = <code><a class="el" href="classarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>()</code>&#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>Construct a detection output layer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">sub_stream_class_prediction</td><td>Class prediction graph sub-stream. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">detect_info</td><td>DetectionOutput parameters. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">anchors</td><td>Accessor to get anchors tensor data from. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">out_quant_info</td><td>(Optional) Output quantization info </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="_layers_8h_source.xhtml#l00507">507</a> of file <a class="el" href="_layers_8h_source.xhtml">Layers.h</a>.</p>
<div class="fragment"><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;        : _sub_stream_class_prediction(std::move(sub_stream_class_prediction)), _detect_info(detect_info), _anchors(std::move(anchors)), _out_quant_info(std::move(out_quant_info))</div><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;    }</div></div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a225fb162b43cbef27d5a1dbd7a51c60d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a225fb162b43cbef27d5a1dbd7a51c60d">&#9670;&nbsp;</a></span>create_layer()</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_1_1graph.xhtml#a56952a8591a9d8481450ae707ae355e7">NodeID</a> create_layer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_i_stream.xhtml">IStream</a> &amp;&#160;</td>
          <td class="paramname"><em>s</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create layer and add to the given stream. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">s</td><td><a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_stream.xhtml" title="Stream frontend class to construct simple graphs in a stream fashion.">Stream</a> to add layer to.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>ID of the created node. </dd></dl>

<p>Implements <a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml#afd0f42ef97e62ef3b6849bcbb8a7533a">ILayer</a>.</p>

<p class="definition">Definition at line <a class="el" href="_layers_8h_source.xhtml#l00513">513</a> of file <a class="el" href="_layers_8h_source.xhtml">Layers.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="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(_anchors == <span class="keyword">nullptr</span>);</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;        NodeParams  common_params          = { <a class="code" href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml#ad8227ba86a01f26e4f173cd5e219d5d1">name</a>(), s.hints().target_hint };</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;        NodeIdxPair input_box_encoding     = { s.tail_node(), 0 };</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;        NodeIdxPair input_class_prediction = { _sub_stream_class_prediction.<a class="code" href="classarm__compute_1_1graph_1_1frontend_1_1_i_stream.xhtml#a110fbabe5b6b600f0f5b1fec06ab1484">tail_node</a>(), 0 };</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1graph_1_1_graph_builder.xhtml#a17fe8b7f4dbd6cf0747ab9d328a56f88">GraphBuilder::add_detection_post_process_node</a>(s.graph(), common_params, input_box_encoding, input_class_prediction, _detect_info, std::move(_anchors), std::move(_out_quant_info));</div><div class="line"><a name="l00521"></a><span class="lineno">  521</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="classarm__compute_1_1graph_1_1frontend_1_1_i_stream_xhtml_a110fbabe5b6b600f0f5b1fec06ab1484"><div class="ttname"><a href="classarm__compute_1_1graph_1_1frontend_1_1_i_stream.xhtml#a110fbabe5b6b600f0f5b1fec06ab1484">arm_compute::graph::frontend::IStream::tail_node</a></div><div class="ttdeci">NodeID tail_node()</div><div class="ttdoc">Returns the tail node of the Stream.</div><div class="ttdef"><b>Definition:</b> <a href="_i_stream_8h_source.xhtml#l00065">IStream.h:65</a></div></div>
<div class="ttc" id="classarm__compute_1_1graph_1_1_graph_builder_xhtml_a17fe8b7f4dbd6cf0747ab9d328a56f88"><div class="ttname"><a href="classarm__compute_1_1graph_1_1_graph_builder.xhtml#a17fe8b7f4dbd6cf0747ab9d328a56f88">arm_compute::graph::GraphBuilder::add_detection_post_process_node</a></div><div class="ttdeci">static NodeID add_detection_post_process_node(Graph &amp;g, NodeParams params, NodeIdxPair input_box_encoding, NodeIdxPair input_class_prediction, const DetectionPostProcessLayerInfo &amp;detect_info, ITensorAccessorUPtr anchors_accessor=nullptr, const QuantizationInfo &amp;anchor_quant_info=QuantizationInfo())</div><div class="ttdoc">Adds a detection post process layer node to the graph.</div><div class="ttdef"><b>Definition:</b> <a href="_graph_builder_8cpp_source.xhtml#l00396">GraphBuilder.cpp:396</a></div></div>
<div class="ttc" id="classarm__compute_1_1graph_1_1frontend_1_1_i_layer_xhtml_ad8227ba86a01f26e4f173cd5e219d5d1"><div class="ttname"><a href="classarm__compute_1_1graph_1_1frontend_1_1_i_layer.xhtml#ad8227ba86a01f26e4f173cd5e219d5d1">arm_compute::graph::frontend::ILayer::name</a></div><div class="ttdeci">const std::string &amp; name() const</div><div class="ttdoc">Layer name accessor.</div><div class="ttdef"><b>Definition:</b> <a href="_i_layer_8h_source.xhtml#l00064">ILayer.h:64</a></div></div>
</div><!-- fragment -->
<p class="reference">References <a class="el" href="_graph_builder_8cpp_source.xhtml#l00396">GraphBuilder::add_detection_post_process_node()</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_i_stream.xhtml#a2f9edb3a23ff98069aaa52590d53bf5f">IStream::graph()</a>, <a class="el" href="_i_stream_8h_source.xhtml#l00073">IStream::hints()</a>, <a class="el" href="_i_layer_8h_source.xhtml#l00064">ILayer::name()</a>, <a class="el" href="_i_stream_8h_source.xhtml#l00065">IStream::tail_node()</a>, and <a class="el" href="arm__compute_2graph_2frontend_2_types_8h_source.xhtml#l00063">StreamHints::target_hint</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>arm_compute/graph/frontend/<a class="el" href="_layers_8h_source.xhtml">Layers.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespacearm__compute.xhtml">arm_compute</a></li><li class="navelem"><a class="el" href="namespacearm__compute_1_1graph.xhtml">graph</a></li><li class="navelem"><a class="el" href="namespacearm__compute_1_1graph_1_1frontend.xhtml">frontend</a></li><li class="navelem"><a class="el" href="classarm__compute_1_1graph_1_1frontend_1_1_detection_post_process_layer.xhtml">DetectionPostProcessLayer</a></li>
    <li class="footer">Generated on Mon Sep 2 2019 11:47:39 for Compute Library by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
  </ul>
</div>
</body>
</html>
