<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRResult" id="SR_delta">
 <div class="SREntry">
  <a id="Item0" onkeydown="return searchResults.Nav(event,0)" onkeypress="return searchResults.Nav(event,0)" onkeyup="return searchResults.Nav(event,0)" class="SRSymbol" href="javascript:searchResults.Toggle('SR_delta')">DELTA</a>
  <div class="SRChildren">
    <a id="Item0_c0" onkeydown="return searchResults.NavChild(event,0,0)" onkeypress="return searchResults.NavChild(event,0,0)" onkeyup="return searchResults.NavChild(event,0,0)" class="SRScope" href="../arm__convolution__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495" target="_parent">DELTA():&#160;arm_convolution_example_f32.c</a>
    <a id="Item0_c1" onkeydown="return searchResults.NavChild(event,0,1)" onkeypress="return searchResults.NavChild(event,0,1)" onkeyup="return searchResults.NavChild(event,0,1)" class="SRScope" href="../arm__dotproduct__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495" target="_parent">DELTA():&#160;arm_dotproduct_example_f32.c</a>
    <a id="Item0_c2" onkeydown="return searchResults.NavChild(event,0,2)" onkeypress="return searchResults.NavChild(event,0,2)" onkeyup="return searchResults.NavChild(event,0,2)" class="SRScope" href="../arm__sin__cos__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495" target="_parent">DELTA():&#160;arm_sin_cos_example_f32.c</a>
    <a id="Item0_c3" onkeydown="return searchResults.NavChild(event,0,3)" onkeypress="return searchResults.NavChild(event,0,3)" onkeyup="return searchResults.NavChild(event,0,3)" class="SRScope" href="../arm__variance__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495" target="_parent">DELTA():&#160;arm_variance_example_f32.c</a>
  </div>
 </div>
</div>
<div class="SRResult" id="SR_delta_5fcoeff">
 <div class="SREntry">
  <a id="Item1" onkeydown="return searchResults.Nav(event,1)" onkeypress="return searchResults.Nav(event,1)" onkeyup="return searchResults.Nav(event,1)" class="SRSymbol" href="../arm__signal__converge__example__f32_8c.html#a9156349d99957ded15d8aa3aa11723de" target="_parent">DELTA_COEFF</a>
  <span class="SRScope">arm_signal_converge_example_f32.c</span>
 </div>
</div>
<div class="SRResult" id="SR_delta_5ferror">
 <div class="SREntry">
  <a id="Item2" onkeydown="return searchResults.Nav(event,2)" onkeypress="return searchResults.Nav(event,2)" onkeyup="return searchResults.Nav(event,2)" class="SRSymbol" href="../arm__signal__converge__example__f32_8c.html#a6d3c6a4484dcaac72fbfe5100c39b9b6" target="_parent">DELTA_ERROR</a>
  <span class="SRScope">arm_signal_converge_example_f32.c</span>
 </div>
</div>
<div class="SRResult" id="SR_delta_5fq15">
 <div class="SREntry">
  <a id="Item3" onkeydown="return searchResults.Nav(event,3)" onkeypress="return searchResults.Nav(event,3)" onkeyup="return searchResults.Nav(event,3)" class="SRSymbol" href="../arm__math_8h.html#a663277ff19ad0b409fb98b64b2c2750b" target="_parent">DELTA_Q15</a>
  <span class="SRScope">arm_math.h</span>
 </div>
</div>
<div class="SRResult" id="SR_delta_5fq31">
 <div class="SREntry">
  <a id="Item4" onkeydown="return searchResults.Nav(event,4)" onkeypress="return searchResults.Nav(event,4)" onkeyup="return searchResults.Nav(event,4)" class="SRSymbol" href="../arm__math_8h.html#aad77ae594e95c5af6ae4129bd6a483c2" target="_parent">DELTA_Q31</a>
  <span class="SRScope">arm_math.h</span>
 </div>
</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
--></script>
</div>
</body>
</html>
