<!-- Copyright (c) 2020 ARM Limited. -->
<!--                                 -->
<!-- SPDX-License-Identifier: MIT    -->
<!--                                 -->
<!-- HTML header for doxygen 1.8.13-->
<!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.13"/>
<meta name="robots" content="NOINDEX, NOFOLLOW" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ArmNN: BiasAndWeightsTypesMatch Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</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" 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="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/>
  <td style="padding-left: 0.5em;">
   <div id="projectname">
   &#160;<span id="projectnumber">20.02</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<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">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('structarmnn_1_1_bias_and_weights_types_match.xhtml','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

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

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="structarmnn_1_1_bias_and_weights_types_match-members.xhtml">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">BiasAndWeightsTypesMatch Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="_layer_support_rules_8hpp_source.xhtml">LayerSupportRules.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for BiasAndWeightsTypesMatch:</div>
<div class="dyncontent">
 <div class="center">
  <img src="structarmnn_1_1_bias_and_weights_types_match.png" usemap="#BiasAndWeightsTypesMatch_map" alt=""/>
  <map id="BiasAndWeightsTypesMatch_map" name="BiasAndWeightsTypesMatch_map">
<area href="structarmnn_1_1_rule.xhtml" alt="Rule" shape="rect" coords="0,0,172,24"/>
</map>
 </div></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:ad651955377cd4053704938420a944a74"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_bias_and_weights_types_match.xhtml#ad651955377cd4053704938420a944a74">BiasAndWeightsTypesMatch</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &amp;biases, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &amp;weights)</td></tr>
<tr class="separator:ad651955377cd4053704938420a944a74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_structarmnn_1_1_rule"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_structarmnn_1_1_rule')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="structarmnn_1_1_rule.xhtml">Rule</a></td></tr>
<tr class="memitem:ac07d93c2c80e51349f3dec89a2e45c84 inherit pub_methods_structarmnn_1_1_rule"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_rule.xhtml#ac07d93c2c80e51349f3dec89a2e45c84">operator()</a> () const</td></tr>
<tr class="separator:ac07d93c2c80e51349f3dec89a2e45c84 inherit pub_methods_structarmnn_1_1_rule"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_attribs_structarmnn_1_1_rule"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_structarmnn_1_1_rule')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="structarmnn_1_1_rule.xhtml">Rule</a></td></tr>
<tr class="memitem:a56ff3471540bd0e390495d3537db42e6 inherit pub_attribs_structarmnn_1_1_rule"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarmnn_1_1_rule.xhtml#a56ff3471540bd0e390495d3537db42e6">m_Res</a> = <a class="el" href="_ref_layer_tests_8cpp.xhtml#a37f1c3ccc9fc906be85185350dd83d48">true</a></td></tr>
<tr class="separator:a56ff3471540bd0e390495d3537db42e6 inherit pub_attribs_structarmnn_1_1_rule"><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 class="definition">Definition at line <a class="el" href="_layer_support_rules_8hpp_source.xhtml#l00117">117</a> of file <a class="el" href="_layer_support_rules_8hpp_source.xhtml">LayerSupportRules.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ad651955377cd4053704938420a944a74"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad651955377cd4053704938420a944a74">&#9670;&nbsp;</a></span>BiasAndWeightsTypesMatch()</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="structarmnn_1_1_bias_and_weights_types_match.xhtml">BiasAndWeightsTypesMatch</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>biases</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>weights</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="_layer_support_rules_8hpp_source.xhtml#l00119">119</a> of file <a class="el" href="_layer_support_rules_8hpp_source.xhtml">LayerSupportRules.hpp</a>.</p>

<p class="reference">References <a class="el" href="_layer_support_rules_8hpp_source.xhtml#l00014">armnn::GetBiasTypeFromWeightsType()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00095">TensorInfo::GetDataType()</a>, and <a class="el" href="_layer_support_rules_8hpp_source.xhtml#l00054">Rule::m_Res</a>.</p>
<div class="fragment"><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;        <a class="code" href="structarmnn_1_1_rule.xhtml#a56ff3471540bd0e390495d3537db42e6">m_Res</a> = biases.GetDataType() == <a class="code" href="namespacearmnn.xhtml#a83c4a275acf59f62b8387f389d0929d5">GetBiasTypeFromWeightsType</a>(weights.GetDataType()).value();</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    }</div><div class="ttc" id="structarmnn_1_1_rule_xhtml_a56ff3471540bd0e390495d3537db42e6"><div class="ttname"><a href="structarmnn_1_1_rule.xhtml#a56ff3471540bd0e390495d3537db42e6">armnn::Rule::m_Res</a></div><div class="ttdeci">bool m_Res</div><div class="ttdef"><b>Definition:</b> <a href="_layer_support_rules_8hpp_source.xhtml#l00054">LayerSupportRules.hpp:54</a></div></div>
<div class="ttc" id="namespacearmnn_xhtml_a83c4a275acf59f62b8387f389d0929d5"><div class="ttname"><a href="namespacearmnn.xhtml#a83c4a275acf59f62b8387f389d0929d5">armnn::GetBiasTypeFromWeightsType</a></div><div class="ttdeci">armnn::Optional&lt; armnn::DataType &gt; GetBiasTypeFromWeightsType(armnn::Optional&lt; armnn::DataType &gt; weightsType)</div><div class="ttdef"><b>Definition:</b> <a href="_layer_support_rules_8hpp_source.xhtml#l00014">LayerSupportRules.hpp:14</a></div></div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>src/backends/backendsCommon/<a class="el" href="_layer_support_rules_8hpp_source.xhtml">LayerSupportRules.hpp</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="namespacearmnn.xhtml">armnn</a></li><li class="navelem"><a class="el" href="structarmnn_1_1_bias_and_weights_types_match.xhtml">BiasAndWeightsTypesMatch</a></li>
    <li class="footer">Generated on Fri Mar 13 2020 16:09:17 for ArmNN by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
