root/doc/html/classitpp_1_1AR__Filter.html @ 354

Revision 353, 10.6 kB (checked in by smidl, 15 years ago)

doc

Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3<title>mixpp: itpp::AR_Filter&lt; T1, T2, T3 &gt; Class Template Reference</title>
4<link href="tabs.css" rel="stylesheet" type="text/css">
5<link href="doxygen.css" rel="stylesheet" type="text/css">
6</head><body>
7<!-- Generated by Doxygen 1.5.8 -->
8<script type="text/javascript">
9<!--
10function changeDisplayState (e){
11  var num=this.id.replace(/[^[0-9]/g,'');
12  var button=this.firstChild;
13  var sectionDiv=document.getElementById('dynsection'+num);
14  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
15    sectionDiv.style.display='block';
16    button.src='open.gif';
17  }else{
18    sectionDiv.style.display='none';
19    button.src='closed.gif';
20  }
21}
22function initDynSections(){
23  var divs=document.getElementsByTagName('div');
24  var sectionCounter=1;
25  for(var i=0;i<divs.length-1;i++){
26    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
27      var header=divs[i];
28      var section=divs[i+1];
29      var button=header.firstChild;
30      if (button!='IMG'){
31        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
32        button=document.createElement('img');
33        divs[i].insertBefore(button,divs[i].firstChild);
34      }
35      header.style.cursor='pointer';
36      header.onclick=changeDisplayState;
37      header.id='dynheader'+sectionCounter;
38      button.src='closed.gif';
39      section.id='dynsection'+sectionCounter;
40      section.style.display='none';
41      section.style.marginLeft='14px';
42      sectionCounter++;
43    }
44  }
45}
46window.onload = initDynSections;
47-->
48</script>
49<div class="navigation" id="top">
50  <div class="tabs">
51    <ul>
52      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
53      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
54      <li><a href="modules.html"><span>Modules</span></a></li>
55      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
56      <li><a href="files.html"><span>Files</span></a></li>
57    </ul>
58  </div>
59  <div class="tabs">
60    <ul>
61      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
62      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
63      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
64      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
65    </ul>
66  </div>
67  <div class="navpath"><b>itpp</b>::<a class="el" href="classitpp_1_1AR__Filter.html">AR_Filter</a>
68  </div>
69</div>
70<div class="contents">
71<h1>itpp::AR_Filter&lt; T1, T2, T3 &gt; Class Template Reference<br>
72<small>
73[<a class="el" href="group__filters.html">Filtering</a>]</small>
74</h1><!-- doxytag: class="itpp::AR_Filter" --><!-- doxytag: inherits="Filter&lt; T1, T2, T3 &gt;" -->Autoregressive (AR) <a class="el" href="classitpp_1_1Filter.html" title="Virtual Filter Base Class.The class is templated as follows:.">Filter</a> Base Class.<p>
75This class implements a autoregressive (AR) filter according to <p class="formulaDsp">
76<img class="formulaDsp" alt="\[ a(0)*y(n) = x(n) - a(1)*y(n-1) - ... - a(N)*y(n-N) \]" src="form_345.png">
77<p>
78 where <em>a</em> is the filter coefficients, <em>x</em> is the input and <em>y</em> is the output. 
79<a href="#_details">More...</a>
80<p>
81<code>#include &lt;<a class="el" href="filter_8h-source.html">filter.h</a>&gt;</code>
82<p>
83
84<p>
85<a href="classitpp_1_1AR__Filter-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
86<tr><td></td></tr>
87<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
88<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d4bbbb9c68dbcdb1d2acb27591d3478f"></a><!-- doxytag: member="itpp::AR_Filter::AR_Filter" ref="d4bbbb9c68dbcdb1d2acb27591d3478f" args="()" -->
89&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1AR__Filter.html#d4bbbb9c68dbcdb1d2acb27591d3478f">AR_Filter</a> ()</td></tr>
90
91<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Class constructor. <br></td></tr>
92<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4da86cbf6d1cbd96287403b65606cd7e"></a><!-- doxytag: member="itpp::AR_Filter::AR_Filter" ref="4da86cbf6d1cbd96287403b65606cd7e" args="(const Vec&lt; T2 &gt; &amp;a)" -->
93&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1AR__Filter.html#4da86cbf6d1cbd96287403b65606cd7e">AR_Filter</a> (const <a class="el" href="classitpp_1_1Vec.html">Vec</a>&lt; T2 &gt; &amp;a)</td></tr>
94
95<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Class constructor setting the coefficients in the filter. <br></td></tr>
96<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b7f8bac43c56a5d8ae4120996ba015e2"></a><!-- doxytag: member="itpp::AR_Filter::~AR_Filter" ref="b7f8bac43c56a5d8ae4120996ba015e2" args="()" -->
97virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1AR__Filter.html#b7f8bac43c56a5d8ae4120996ba015e2">~AR_Filter</a> ()</td></tr>
98
99<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Class destructor. <br></td></tr>
100<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e19c0b9d2f9ad6e1ef55d00732c63647"></a><!-- doxytag: member="itpp::AR_Filter::get_coeffs" ref="e19c0b9d2f9ad6e1ef55d00732c63647" args="() const " -->
101<a class="el" href="classitpp_1_1Vec.html">Vec</a>&lt; T2 &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1AR__Filter.html#e19c0b9d2f9ad6e1ef55d00732c63647">get_coeffs</a> () const </td></tr>
102
103<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classitpp_1_1Filter.html" title="Virtual Filter Base Class.The class is templated as follows:.">Filter</a> coefficient access function. <br></td></tr>
104<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2b79ddae2be397afccd7378acabc66ac"></a><!-- doxytag: member="itpp::AR_Filter::set_coeffs" ref="2b79ddae2be397afccd7378acabc66ac" args="(const Vec&lt; T2 &gt; &amp;a)" -->
105void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1AR__Filter.html#2b79ddae2be397afccd7378acabc66ac">set_coeffs</a> (const <a class="el" href="classitpp_1_1Vec.html">Vec</a>&lt; T2 &gt; &amp;a)</td></tr>
106
107<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the filter coefficients (and order). <br></td></tr>
108<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d6b4bae57efb96ef3b1f8dade5ee6b1f"></a><!-- doxytag: member="itpp::AR_Filter::clear" ref="d6b4bae57efb96ef3b1f8dade5ee6b1f" args="()" -->
109void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1AR__Filter.html#d6b4bae57efb96ef3b1f8dade5ee6b1f">clear</a> ()</td></tr>
110
111<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clears the filter memory. <br></td></tr>
112<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c906193a7404e682589eac0086c2bf65"></a><!-- doxytag: member="itpp::AR_Filter::get_state" ref="c906193a7404e682589eac0086c2bf65" args="() const " -->
113<a class="el" href="classitpp_1_1Vec.html">Vec</a>&lt; T3 &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1AR__Filter.html#c906193a7404e682589eac0086c2bf65">get_state</a> () const </td></tr>
114
115<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get state of filter. <br></td></tr>
116<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="87d527b183bb99f36943dec4a6d5f6db"></a><!-- doxytag: member="itpp::AR_Filter::set_state" ref="87d527b183bb99f36943dec4a6d5f6db" args="(const Vec&lt; T3 &gt; &amp;state)" -->
117void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1AR__Filter.html#87d527b183bb99f36943dec4a6d5f6db">set_state</a> (const <a class="el" href="classitpp_1_1Vec.html">Vec</a>&lt; T3 &gt; &amp;state)</td></tr>
118
119<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set state of filter. <br></td></tr>
120<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ea7eed601d6c4e32da3b1cd038aa9328"></a><!-- doxytag: member="itpp::AR_Filter::operator()" ref="ea7eed601d6c4e32da3b1cd038aa9328" args="(const T1Sample)" -->
121virtual T3&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1Filter.html#ea7eed601d6c4e32da3b1cd038aa9328">operator()</a> (const T1Sample)</td></tr>
122
123<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Filter a single sample. <br></td></tr>
124<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="188d1c2e11dc544c5d88218d61a1f02c"></a><!-- doxytag: member="itpp::AR_Filter::operator()" ref="188d1c2e11dc544c5d88218d61a1f02c" args="(const Vec&lt; T1 &gt; &amp;v)" -->
125virtual <a class="el" href="classitpp_1_1Vec.html">Vec</a>&lt; T3 &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1Filter.html#188d1c2e11dc544c5d88218d61a1f02c">operator()</a> (const <a class="el" href="classitpp_1_1Vec.html">Vec</a>&lt; T1 &gt; &amp;v)</td></tr>
126
127<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Filter a vector. <br></td></tr>
128</table>
129<hr><a name="_details"></a><h2>Detailed Description</h2>
130<h3>template&lt;class T1, class T2, class T3&gt;<br>
131 class itpp::AR_Filter&lt; T1, T2, T3 &gt;</h3>
132
133Autoregressive (AR) <a class="el" href="classitpp_1_1Filter.html" title="Virtual Filter Base Class.The class is templated as follows:.">Filter</a> Base Class.<p>
134This class implements a autoregressive (AR) filter according to <p class="formulaDsp">
135<img class="formulaDsp" alt="\[ a(0)*y(n) = x(n) - a(1)*y(n-1) - ... - a(N)*y(n-N) \]" src="form_345.png">
136<p>
137 where <em>a</em> is the filter coefficients, <em>x</em> is the input and <em>y</em> is the output.
138<p>
139When filtering a vector, the length of the output vector equals the length of the input vector. Internal states are kept in a filter memory. The first time the filter is used the internal states have been set to zero.<p>
140The class is templated as follows: <ul>
141<li>
142<code>T1</code> is the type of the input samples </li>
143<li>
144<code>T2</code> is the type of the filter coefficients </li>
145<li>
146<code>T3</code> is the type of the output samples </li>
147</ul>
148<hr>The documentation for this class was generated from the following file:<ul>
149<li><a class="el" href="filter_8h-source.html">filter.h</a></ul>
150</div>
151<hr size="1"><address style="text-align: right;"><small>Generated on Tue Jun 2 10:02:19 2009 for mixpp by&nbsp;
152<a href="http://www.doxygen.org/index.html">
153<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
154</body>
155</html>
Note: See TracBrowser for help on using the browser.