<!-- 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/tosaCommon/operatorMappings/ReshapeOperator.cpp Source File</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('_reshape_operator_8cpp_source.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="headertitle">
<div class="title">ReshapeOperator.cpp</div>  </div>
</div><!--header-->
<div class="contents">
<a href="_reshape_operator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">//</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Copyright © 2022-2024 Arm Ltd and Contributors. All rights reserved.</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// SPDX-License-Identifier: MIT</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">//</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_reshape_operator_8hpp.html">ReshapeOperator.hpp</a>&quot;</span></div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
<div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="_reshape_operator_8hpp.html#afce169c8927468aab621fe3400a8d317">    8</a></span>&#160;TosaSerializationBasicBlock* <a class="code" href="_reshape_operator_8cpp.html#afce169c8927468aab621fe3400a8d317">ConvertReshapeToTosaOperator</a>(<span class="keyword">const</span> <a class="code" href="classarmnn_1_1_layer.html">Layer</a>* layer,</div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;                                                          <span class="keyword">const</span> std::vector&lt;const TensorInfo*&gt;&amp; inputs,</div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;                                                          <span class="keyword">const</span> std::vector&lt;const TensorInfo*&gt;&amp; outputs,</div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;                                                          <span class="keyword">const</span> <a class="code" href="structarmnn_1_1_reshape_descriptor.html">ReshapeDescriptor</a>* reshapeDescriptor)</div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;{</div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    std::string inputName = std::string(<span class="stringliteral">&quot;input_&quot;</span>);</div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    std::string outputName = std::string(<span class="stringliteral">&quot;output0_&quot;</span>);</div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    std::string blockName  = std::string(<span class="stringliteral">&quot;Op_RESHAPE_block_&quot;</span>) + <a class="code" href="_tosa_operator_utils_8hpp.html#aadc5d73bd0cb81999bcfdc62bce020e8">GetUniqueTosaMappingID</a>();</div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    <span class="comment">// If a layer is present then the block will be used for execution, so input and output names need to be determined</span></div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <span class="comment">// using the previous and following layers so the graph is connected correctly. For validation this doesn&#39;t matter.</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <span class="keywordflow">if</span>(layer != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    {</div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        inputName  = <a class="code" href="_tosa_operator_utils_8hpp.html#a8863b57c08a748fd2dd16880337f4b69">GenerateUniqueInputName</a>(layer-&gt;<a class="code" href="classarmnn_1_1_layer.html#acf8b8e23bf647836592982f97088d375">GetInputSlot</a>(0));</div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        outputName = <a class="code" href="_tosa_operator_utils_8hpp.html#a1e5b1f8dcc21f10bc7b0d8517e05049d">GenerateUniqueOutputName</a>(*layer);</div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    }</div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    TosaReshapeAttribute attribute(<a class="code" href="_tosa_operator_utils_8hpp.html#a7d97964a65be4eb4a5b4109904f2e7f7">GetTosaTensorShape</a>(reshapeDescriptor-&gt;<a class="code" href="structarmnn_1_1_reshape_descriptor.html#a1178f4dafdda81f59c15145ec327f7d9">m_TargetShape</a>));</div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    <span class="keyword">auto</span>* op = <span class="keyword">new</span> TosaSerializationOperator(Op_RESHAPE,</div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                                             Attribute_ReshapeAttribute,</div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                                             &amp;attribute,</div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;                                             {inputName},</div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                                             {outputName});</div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    std::vector&lt;TosaSerializationTensor*&gt; tensors;</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="comment">// Only add input tensors if connected layer is an input layer.</span></div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="comment">// As intermediate or constant tensors will be created separately.</span></div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="comment">// There also can&#39;t be duplicate tensor.</span></div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <span class="keywordflow">if</span>(inputName.find(<span class="stringliteral">&quot;input_&quot;</span>) != std::string::npos)</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;        std::vector&lt;int32_t&gt; inputShape = <a class="code" href="_tosa_operator_utils_8hpp.html#a7d97964a65be4eb4a5b4109904f2e7f7">GetTosaTensorShape</a>(inputs[0]-&gt;GetShape());</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        DType inputDType = <a class="code" href="_tosa_operator_utils_8hpp.html#a45d66f17ad6b0469e469f443b3e03226">ArmNNToDType</a>(inputs[0]-&gt;GetDataType());</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;        tensors.push_back(<span class="keyword">new</span> TosaSerializationTensor(inputName, inputShape, inputDType, {}));</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;    std::vector&lt;int32_t&gt; outputShape = <a class="code" href="_tosa_operator_utils_8hpp.html#a7d97964a65be4eb4a5b4109904f2e7f7">GetTosaTensorShape</a>(outputs[0]-&gt;GetShape());</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    DType outputDType = <a class="code" href="_tosa_operator_utils_8hpp.html#a45d66f17ad6b0469e469f443b3e03226">ArmNNToDType</a>(outputs[0]-&gt;GetDataType());</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;    tensors.push_back(<span class="keyword">new</span> TosaSerializationTensor(outputName, outputShape, outputDType, {}));</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="comment">// operatorInputNames/operatorOutputNames ends up being the same as</span></div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <span class="comment">// blockInputNames/blockOutputNames for one-to-one ArmNN to TOSA mappings</span></div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">new</span> TosaSerializationBasicBlock(blockName, <span class="comment">// name</span></div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                                           <a class="code" href="_tosa_operator_utils_8hpp.html#a28514b014a4fe0841044f1868064bc65">mainName</a>, <span class="comment">// region name</span></div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                                           {op}, <span class="comment">// operators</span></div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                                           tensors, <span class="comment">// tensors</span></div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                                           {inputName}, <span class="comment">// inputs</span></div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                                           {outputName}); <span class="comment">// outputs</span></div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="a_reshape_operator_8cpp_html_afce169c8927468aab621fe3400a8d317"><div class="ttname"><a href="_reshape_operator_8cpp.html#afce169c8927468aab621fe3400a8d317">ConvertReshapeToTosaOperator</a></div><div class="ttdeci">TosaSerializationBasicBlock * ConvertReshapeToTosaOperator(const Layer *layer, const std::vector&lt; const TensorInfo * &gt; &amp;inputs, const std::vector&lt; const TensorInfo * &gt; &amp;outputs, const ReshapeDescriptor *reshapeDescriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_reshape_operator_8cpp_source.html#l00008">ReshapeOperator.cpp:8</a></div></div>
<div class="ttc" id="a_tosa_operator_utils_8hpp_html_a1e5b1f8dcc21f10bc7b0d8517e05049d"><div class="ttname"><a href="_tosa_operator_utils_8hpp.html#a1e5b1f8dcc21f10bc7b0d8517e05049d">GenerateUniqueOutputName</a></div><div class="ttdeci">std::string GenerateUniqueOutputName(const Layer &amp;layer, uint32_t layerSlot=0)</div><div class="ttdef"><b>Definition:</b> <a href="_tosa_operator_utils_8hpp_source.html#l00120">TosaOperatorUtils.hpp:120</a></div></div>
<div class="ttc" id="aclassarmnn_1_1_layer_html_acf8b8e23bf647836592982f97088d375"><div class="ttname"><a href="classarmnn_1_1_layer.html#acf8b8e23bf647836592982f97088d375">armnn::Layer::GetInputSlot</a></div><div class="ttdeci">const InputSlot &amp; GetInputSlot(unsigned int index) const override</div><div class="ttdoc">Get a const input slot handle by slot index.</div><div class="ttdef"><b>Definition:</b> <a href="_layer_8hpp_source.html#l00337">Layer.hpp:337</a></div></div>
<div class="ttc" id="aclassarmnn_1_1_layer_html"><div class="ttname"><a href="classarmnn_1_1_layer.html">armnn::Layer</a></div><div class="ttdef"><b>Definition:</b> <a href="_layer_8hpp_source.html#l00230">Layer.hpp:230</a></div></div>
<div class="ttc" id="a_tosa_operator_utils_8hpp_html_a28514b014a4fe0841044f1868064bc65"><div class="ttname"><a href="_tosa_operator_utils_8hpp.html#a28514b014a4fe0841044f1868064bc65">mainName</a></div><div class="ttdeci">const std::string mainName</div><div class="ttdef"><b>Definition:</b> <a href="_tosa_operator_utils_8hpp_source.html#l00019">TosaOperatorUtils.hpp:19</a></div></div>
<div class="ttc" id="a_tosa_operator_utils_8hpp_html_a45d66f17ad6b0469e469f443b3e03226"><div class="ttname"><a href="_tosa_operator_utils_8hpp.html#a45d66f17ad6b0469e469f443b3e03226">ArmNNToDType</a></div><div class="ttdeci">DType ArmNNToDType(const DataType &amp;type)</div><div class="ttdef"><b>Definition:</b> <a href="_tosa_operator_utils_8hpp_source.html#l00022">TosaOperatorUtils.hpp:22</a></div></div>
<div class="ttc" id="astructarmnn_1_1_reshape_descriptor_html"><div class="ttname"><a href="structarmnn_1_1_reshape_descriptor.html">armnn::ReshapeDescriptor</a></div><div class="ttdoc">A ReshapeDescriptor for the ReshapeLayer.</div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.html#l01023">Descriptors.hpp:1023</a></div></div>
<div class="ttc" id="astructarmnn_1_1_reshape_descriptor_html_a1178f4dafdda81f59c15145ec327f7d9"><div class="ttname"><a href="structarmnn_1_1_reshape_descriptor.html#a1178f4dafdda81f59c15145ec327f7d9">armnn::ReshapeDescriptor::m_TargetShape</a></div><div class="ttdeci">TensorShape m_TargetShape</div><div class="ttdoc">Target shape value.</div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.html#l01039">Descriptors.hpp:1039</a></div></div>
<div class="ttc" id="a_tosa_operator_utils_8hpp_html_a7d97964a65be4eb4a5b4109904f2e7f7"><div class="ttname"><a href="_tosa_operator_utils_8hpp.html#a7d97964a65be4eb4a5b4109904f2e7f7">GetTosaTensorShape</a></div><div class="ttdeci">std::vector&lt; int32_t &gt; GetTosaTensorShape(const TensorShape &amp;shape)</div><div class="ttdef"><b>Definition:</b> <a href="_tosa_operator_utils_8hpp_source.html#l00079">TosaOperatorUtils.hpp:79</a></div></div>
<div class="ttc" id="a_reshape_operator_8hpp_html"><div class="ttname"><a href="_reshape_operator_8hpp.html">ReshapeOperator.hpp</a></div></div>
<div class="ttc" id="a_tosa_operator_utils_8hpp_html_a8863b57c08a748fd2dd16880337f4b69"><div class="ttname"><a href="_tosa_operator_utils_8hpp.html#a8863b57c08a748fd2dd16880337f4b69">GenerateUniqueInputName</a></div><div class="ttdeci">std::string GenerateUniqueInputName(const armnn::InputSlot &amp;slot)</div><div class="ttdef"><b>Definition:</b> <a href="_tosa_operator_utils_8hpp_source.html#l00109">TosaOperatorUtils.hpp:109</a></div></div>
<div class="ttc" id="a_tosa_operator_utils_8hpp_html_aadc5d73bd0cb81999bcfdc62bce020e8"><div class="ttname"><a href="_tosa_operator_utils_8hpp.html#aadc5d73bd0cb81999bcfdc62bce020e8">GetUniqueTosaMappingID</a></div><div class="ttdeci">std::string GetUniqueTosaMappingID()</div><div class="ttdef"><b>Definition:</b> <a href="_tosa_operator_utils_8hpp_source.html#l00138">TosaOperatorUtils.hpp:138</a></div></div>
<!-- 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_3eeadfb79f8e6e284b92aba47a7684a1.html">tosaCommon</a></li><li class="navelem"><a class="el" href="dir_44a5c203710327e1068d2575c20cb7c6.html">operatorMappings</a></li><li class="navelem"><a class="el" href="_reshape_operator_8cpp.html">ReshapeOperator.cpp</a></li>
    <li class="footer">Generated on Thu May 16 2024 09:31:49 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>
