<!-- HTML header for doxygen 1.8.17-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Arm NN: src/backends/reference/workloads/Debug.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<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="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 15rem; margin-top: .5rem; margin-left 13px"/>
  <td id="projectalign" style="padding-left: 0.9em;">
   <div id="projectname">
   &#160;<span id="projectnumber">24.05</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<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('_debug_8cpp.html',''); initResizable(); });
/* @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="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Debug.cpp File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="_debug_8hpp_source.html">Debug.hpp</a>&quot;</code><br />
<code>#include &lt;common/include/ProfilingGuid.hpp&gt;</code><br />
<code>#include &lt;<a class="el" href="_filesystem_8hpp_source.html">armnnUtils/Filesystem.hpp</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="_b_float16_8hpp_source.html">BFloat16.hpp</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="_half_8hpp_source.html">Half.hpp</a>&gt;</code><br />
<code>#include &lt;algorithm&gt;</code><br />
<code>#include &lt;iostream&gt;</code><br />
<code>#include &lt;iosfwd&gt;</code><br />
<code>#include &lt;fstream&gt;</code><br />
<code>#include &lt;sys/stat.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for Debug.cpp:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="_debug_8cpp__incl.svg" width="2050" height="440"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
<p><a href="_debug_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacearmnn"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearmnn.html">armnn</a></td></tr>
<tr class="memdesc:namespacearmnn"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copyright (c) 2021 ARM Limited and Contributors. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a2b942b6b36b2f6df709b544e01bbdbb0"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a2b942b6b36b2f6df709b544e01bbdbb0"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearmnn.html#a2b942b6b36b2f6df709b544e01bbdbb0">PrintOutput</a> (const TensorInfo &amp;inputInfo, const T *inputData, <a class="el" href="_types_8hpp.html#af22094b802160f09f7c89ad9eee10084">LayerGuid</a> guid, const std::string &amp;layerName, unsigned int slotIndex, std::ostream &amp;os)</td></tr>
<tr class="separator:a2b942b6b36b2f6df709b544e01bbdbb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a181ecb133401da6ff2916c192ca04d48"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a181ecb133401da6ff2916c192ca04d48"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearmnn.html#a181ecb133401da6ff2916c192ca04d48">Debug</a> (const TensorInfo &amp;inputInfo, const T *inputData, <a class="el" href="_types_8hpp.html#af22094b802160f09f7c89ad9eee10084">LayerGuid</a> guid, const std::string &amp;layerName, unsigned int slotIndex, bool outputsToFile)</td></tr>
<tr class="separator:a181ecb133401da6ff2916c192ca04d48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acea0491173b09308ca626ea65e70e1d8"><td class="memItemLeft" align="right" valign="top">template void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearmnn.html#acea0491173b09308ca626ea65e70e1d8">Debug&lt; BFloat16 &gt;</a> (const TensorInfo &amp;inputInfo, const BFloat16 *inputData, <a class="el" href="_types_8hpp.html#af22094b802160f09f7c89ad9eee10084">LayerGuid</a> guid, const std::string &amp;layerName, unsigned int slotIndex, bool outputsToFile)</td></tr>
<tr class="separator:acea0491173b09308ca626ea65e70e1d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dbfaabd2d65dc91bc8bd4d0b5e1ed07"><td class="memItemLeft" align="right" valign="top">template void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearmnn.html#a4dbfaabd2d65dc91bc8bd4d0b5e1ed07">Debug&lt; Half &gt;</a> (const TensorInfo &amp;inputInfo, const Half *inputData, <a class="el" href="_types_8hpp.html#af22094b802160f09f7c89ad9eee10084">LayerGuid</a> guid, const std::string &amp;layerName, unsigned int slotIndex, bool outputsToFile)</td></tr>
<tr class="separator:a4dbfaabd2d65dc91bc8bd4d0b5e1ed07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af34b15ddc0dcee095162820e88d84808"><td class="memItemLeft" align="right" valign="top">template void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearmnn.html#af34b15ddc0dcee095162820e88d84808">Debug&lt; float &gt;</a> (const TensorInfo &amp;inputInfo, const float *inputData, <a class="el" href="_types_8hpp.html#af22094b802160f09f7c89ad9eee10084">LayerGuid</a> guid, const std::string &amp;layerName, unsigned int slotIndex, bool outputsToFile)</td></tr>
<tr class="separator:af34b15ddc0dcee095162820e88d84808"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5cd3e7fcb637ffad7644cdd2e19a8ae"><td class="memItemLeft" align="right" valign="top">template void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearmnn.html#af5cd3e7fcb637ffad7644cdd2e19a8ae">Debug&lt; uint8_t &gt;</a> (const TensorInfo &amp;inputInfo, const uint8_t *inputData, <a class="el" href="_types_8hpp.html#af22094b802160f09f7c89ad9eee10084">LayerGuid</a> guid, const std::string &amp;layerName, unsigned int slotIndex, bool outputsToFile)</td></tr>
<tr class="separator:af5cd3e7fcb637ffad7644cdd2e19a8ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31a77914be2a7b9d8c6d22036df869d8"><td class="memItemLeft" align="right" valign="top">template void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearmnn.html#a31a77914be2a7b9d8c6d22036df869d8">Debug&lt; int8_t &gt;</a> (const TensorInfo &amp;inputInfo, const int8_t *inputData, <a class="el" href="_types_8hpp.html#af22094b802160f09f7c89ad9eee10084">LayerGuid</a> guid, const std::string &amp;layerName, unsigned int slotIndex, bool outputsToFile)</td></tr>
<tr class="separator:a31a77914be2a7b9d8c6d22036df869d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62669f61a81677f5ca4b1f21bb7d45d8"><td class="memItemLeft" align="right" valign="top">template void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearmnn.html#a62669f61a81677f5ca4b1f21bb7d45d8">Debug&lt; int16_t &gt;</a> (const TensorInfo &amp;inputInfo, const int16_t *inputData, <a class="el" href="_types_8hpp.html#af22094b802160f09f7c89ad9eee10084">LayerGuid</a> guid, const std::string &amp;layerName, unsigned int slotIndex, bool outputsToFile)</td></tr>
<tr class="separator:a62669f61a81677f5ca4b1f21bb7d45d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77e5a9b94927bee9c48010efd2dec2b0"><td class="memItemLeft" align="right" valign="top">template void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearmnn.html#a77e5a9b94927bee9c48010efd2dec2b0">Debug&lt; int32_t &gt;</a> (const TensorInfo &amp;inputInfo, const int32_t *inputData, <a class="el" href="_types_8hpp.html#af22094b802160f09f7c89ad9eee10084">LayerGuid</a> guid, const std::string &amp;layerName, unsigned int slotIndex, bool outputsToFile)</td></tr>
<tr class="separator:a77e5a9b94927bee9c48010efd2dec2b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43a27d876cf8cab5f5d45163a05908e9"><td class="memItemLeft" align="right" valign="top">template void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearmnn.html#a43a27d876cf8cab5f5d45163a05908e9">Debug&lt; int64_t &gt;</a> (const TensorInfo &amp;inputInfo, const int64_t *inputData, <a class="el" href="_types_8hpp.html#af22094b802160f09f7c89ad9eee10084">LayerGuid</a> guid, const std::string &amp;layerName, unsigned int slotIndex, bool outputsToFile)</td></tr>
<tr class="separator:a43a27d876cf8cab5f5d45163a05908e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_0f3cdec46afbc61a1ded8e1687c9c9a0.html">backends</a></li><li class="navelem"><a class="el" href="dir_efae4012d0e357ebeaba7d02491d70e5.html">reference</a></li><li class="navelem"><a class="el" href="dir_d2f3b8e2e64df3181ebe92efcc0a3012.html">workloads</a></li><li class="navelem"><a class="el" href="_debug_8cpp.html">Debug.cpp</a></li>
    <li class="footer">Generated on Thu May 16 2024 09:31:53 for Arm NN by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
  </ul>
</div>
</body>
</html>
