annotate code-docs/classVamp_1_1FFTComplex.html @ 7:66d125fb8b42 tip

Added tag vamp-plugin-sdk-v2.7 for changeset 27319718b1f8
author Chris Cannam
date Fri, 24 Feb 2017 16:45:00 +0000
parents 27319718b1f8
children
rev   line source
Chris@6 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Chris@6 2 <html xmlns="http://www.w3.org/1999/xhtml">
Chris@6 3 <head>
Chris@6 4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
Chris@6 5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
Chris@6 6 <meta name="generator" content="Doxygen 1.8.13"/>
Chris@6 7 <meta name="viewport" content="width=device-width, initial-scale=1"/>
Chris@6 8 <title>VampPluginSDK: Vamp::FFTComplex Class Reference</title>
Chris@6 9 <link href="tabs.css" rel="stylesheet" type="text/css"/>
Chris@6 10 <script type="text/javascript" src="jquery.js"></script>
Chris@6 11 <script type="text/javascript" src="dynsections.js"></script>
Chris@6 12 <link href="navtree.css" rel="stylesheet" type="text/css"/>
Chris@6 13 <script type="text/javascript" src="resize.js"></script>
Chris@6 14 <script type="text/javascript" src="navtreedata.js"></script>
Chris@6 15 <script type="text/javascript" src="navtree.js"></script>
Chris@6 16 <script type="text/javascript">
Chris@6 17 $(document).ready(initResizable);
Chris@6 18 </script>
Chris@6 19 <link href="doxygen.css" rel="stylesheet" type="text/css" />
Chris@6 20 </head>
Chris@6 21 <body>
Chris@6 22 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
Chris@6 23 <div id="titlearea">
Chris@6 24 <table cellspacing="0" cellpadding="0">
Chris@6 25 <tbody>
Chris@6 26 <tr style="height: 56px;">
Chris@6 27 <td id="projectalign" style="padding-left: 0.5em;">
Chris@6 28 <div id="projectname">VampPluginSDK
Chris@6 29 &#160;<span id="projectnumber">2.7</span>
Chris@6 30 </div>
Chris@6 31 </td>
Chris@6 32 </tr>
Chris@6 33 </tbody>
Chris@6 34 </table>
Chris@6 35 </div>
Chris@6 36 <!-- end header part -->
Chris@6 37 <!-- Generated by Doxygen 1.8.13 -->
Chris@6 38 <script type="text/javascript" src="menudata.js"></script>
Chris@6 39 <script type="text/javascript" src="menu.js"></script>
Chris@6 40 <script type="text/javascript">
Chris@6 41 $(function() {
Chris@6 42 initMenu('',false,false,'search.php','Search');
Chris@6 43 });
Chris@6 44 </script>
Chris@6 45 <div id="main-nav"></div>
Chris@6 46 </div><!-- top -->
Chris@6 47 <div id="side-nav" class="ui-resizable side-nav-resizable">
Chris@6 48 <div id="nav-tree">
Chris@6 49 <div id="nav-tree-contents">
Chris@6 50 <div id="nav-sync" class="sync"></div>
Chris@6 51 </div>
Chris@6 52 </div>
Chris@6 53 <div id="splitbar" style="-moz-user-select:none;"
Chris@6 54 class="ui-resizable-handle">
Chris@6 55 </div>
Chris@6 56 </div>
Chris@6 57 <script type="text/javascript">
Chris@6 58 $(document).ready(function(){initNavTree('classVamp_1_1FFTComplex.html','');});
Chris@6 59 </script>
Chris@6 60 <div id="doc-content">
Chris@6 61 <div class="header">
Chris@6 62 <div class="summary">
Chris@6 63 <a href="#pub-methods">Public Member Functions</a> &#124;
Chris@6 64 <a href="#pri-attribs">Private Attributes</a> &#124;
Chris@6 65 <a href="classVamp_1_1FFTComplex-members.html">List of all members</a> </div>
Chris@6 66 <div class="headertitle">
Chris@6 67 <div class="title">Vamp::FFTComplex Class Reference</div> </div>
Chris@6 68 </div><!--header-->
Chris@6 69 <div class="contents">
Chris@6 70
Chris@6 71 <p>A simple <a class="el" href="classVamp_1_1FFT.html" title="A simple FFT implementation provided for convenience of plugin authors. ">FFT</a> implementation provided for convenience of plugin authors.
Chris@6 72 <a href="classVamp_1_1FFTComplex.html#details">More...</a></p>
Chris@6 73
Chris@6 74 <p><code>#include &lt;<a class="el" href="FFT_8h_source.html">FFT.h</a>&gt;</code></p>
Chris@6 75 <table class="memberdecls">
Chris@6 76 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Chris@6 77 Public Member Functions</h2></td></tr>
Chris@6 78 <tr class="memitem:ab73b793c7d1bf5ed175ff4aa0cec5190"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1FFTComplex.html#ab73b793c7d1bf5ed175ff4aa0cec5190">FFTComplex</a> (unsigned int n)</td></tr>
Chris@6 79 <tr class="memdesc:ab73b793c7d1bf5ed175ff4aa0cec5190"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prepare to calculate transforms of size n. <a href="#ab73b793c7d1bf5ed175ff4aa0cec5190">More...</a><br /></td></tr>
Chris@6 80 <tr class="separator:ab73b793c7d1bf5ed175ff4aa0cec5190"><td class="memSeparator" colspan="2">&#160;</td></tr>
Chris@6 81 <tr class="memitem:a5b108c655e5c73ee3ba6881ddd7c40a6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1FFTComplex.html#a5b108c655e5c73ee3ba6881ddd7c40a6">~FFTComplex</a> ()</td></tr>
Chris@6 82 <tr class="separator:a5b108c655e5c73ee3ba6881ddd7c40a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
Chris@6 83 <tr class="memitem:ab09f93ce626fe41513f33dd9ab54518d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1FFTComplex.html#ab09f93ce626fe41513f33dd9ab54518d">forward</a> (const double *ci, double *co)</td></tr>
Chris@6 84 <tr class="memdesc:ab09f93ce626fe41513f33dd9ab54518d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate a forward transform of size n. <a href="#ab09f93ce626fe41513f33dd9ab54518d">More...</a><br /></td></tr>
Chris@6 85 <tr class="separator:ab09f93ce626fe41513f33dd9ab54518d"><td class="memSeparator" colspan="2">&#160;</td></tr>
Chris@6 86 <tr class="memitem:aa392c6a7dbcc2cc6a1edeac6da4c435b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1FFTComplex.html#aa392c6a7dbcc2cc6a1edeac6da4c435b">inverse</a> (const double *ci, double *co)</td></tr>
Chris@6 87 <tr class="memdesc:aa392c6a7dbcc2cc6a1edeac6da4c435b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate an inverse transform of size n. <a href="#aa392c6a7dbcc2cc6a1edeac6da4c435b">More...</a><br /></td></tr>
Chris@6 88 <tr class="separator:aa392c6a7dbcc2cc6a1edeac6da4c435b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Chris@6 89 </table><table class="memberdecls">
Chris@6 90 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Chris@6 91 Private Attributes</h2></td></tr>
Chris@6 92 <tr class="memitem:aa521eef4194d91d2c48d07ed5f6d7f5f"><td class="memItemLeft" align="right" valign="top">D *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1FFTComplex.html#aa521eef4194d91d2c48d07ed5f6d7f5f">m_d</a></td></tr>
Chris@6 93 <tr class="separator:aa521eef4194d91d2c48d07ed5f6d7f5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Chris@6 94 </table>
Chris@6 95 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
Chris@6 96 <div class="textblock"><p>A simple <a class="el" href="classVamp_1_1FFT.html" title="A simple FFT implementation provided for convenience of plugin authors. ">FFT</a> implementation provided for convenience of plugin authors. </p>
Chris@6 97 <p>This class provides double-precision complex-complex transforms.</p>
Chris@6 98 <p>Note: If the SDK has been compiled with the SINGLE_PRECISION_FFT flag, then all FFTs will use single precision internally. The default is double precision. The API uses doubles in either case.</p>
Chris@6 99 <p>The forward transform is unscaled; the inverse transform is scaled by 1/n. </p>
Chris@6 100
Chris@6 101 <p class="definition">Definition at line <a class="el" href="FFT_8h_source.html#l00109">109</a> of file <a class="el" href="FFT_8h_source.html">FFT.h</a>.</p>
Chris@6 102 </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
Chris@6 103 <a id="ab73b793c7d1bf5ed175ff4aa0cec5190"></a>
Chris@6 104 <h2 class="memtitle"><span class="permalink"><a href="#ab73b793c7d1bf5ed175ff4aa0cec5190">&#9670;&nbsp;</a></span>FFTComplex()</h2>
Chris@6 105
Chris@6 106 <div class="memitem">
Chris@6 107 <div class="memproto">
Chris@6 108 <table class="memname">
Chris@6 109 <tr>
Chris@6 110 <td class="memname">Vamp::FFTComplex::FFTComplex </td>
Chris@6 111 <td>(</td>
Chris@6 112 <td class="paramtype">unsigned int&#160;</td>
Chris@6 113 <td class="paramname"><em>n</em></td><td>)</td>
Chris@6 114 <td></td>
Chris@6 115 </tr>
Chris@6 116 </table>
Chris@6 117 </div><div class="memdoc">
Chris@6 118
Chris@6 119 <p>Prepare to calculate transforms of size n. </p>
Chris@6 120 <p>n must be a multiple of 2. </p>
Chris@6 121
Chris@6 122 </div>
Chris@6 123 </div>
Chris@6 124 <a id="a5b108c655e5c73ee3ba6881ddd7c40a6"></a>
Chris@6 125 <h2 class="memtitle"><span class="permalink"><a href="#a5b108c655e5c73ee3ba6881ddd7c40a6">&#9670;&nbsp;</a></span>~FFTComplex()</h2>
Chris@6 126
Chris@6 127 <div class="memitem">
Chris@6 128 <div class="memproto">
Chris@6 129 <table class="memname">
Chris@6 130 <tr>
Chris@6 131 <td class="memname">Vamp::FFTComplex::~FFTComplex </td>
Chris@6 132 <td>(</td>
Chris@6 133 <td class="paramname"></td><td>)</td>
Chris@6 134 <td></td>
Chris@6 135 </tr>
Chris@6 136 </table>
Chris@6 137 </div><div class="memdoc">
Chris@6 138
Chris@6 139 </div>
Chris@6 140 </div>
Chris@6 141 <h2 class="groupheader">Member Function Documentation</h2>
Chris@6 142 <a id="ab09f93ce626fe41513f33dd9ab54518d"></a>
Chris@6 143 <h2 class="memtitle"><span class="permalink"><a href="#ab09f93ce626fe41513f33dd9ab54518d">&#9670;&nbsp;</a></span>forward()</h2>
Chris@6 144
Chris@6 145 <div class="memitem">
Chris@6 146 <div class="memproto">
Chris@6 147 <table class="memname">
Chris@6 148 <tr>
Chris@6 149 <td class="memname">void Vamp::FFTComplex::forward </td>
Chris@6 150 <td>(</td>
Chris@6 151 <td class="paramtype">const double *&#160;</td>
Chris@6 152 <td class="paramname"><em>ci</em>, </td>
Chris@6 153 </tr>
Chris@6 154 <tr>
Chris@6 155 <td class="paramkey"></td>
Chris@6 156 <td></td>
Chris@6 157 <td class="paramtype">double *&#160;</td>
Chris@6 158 <td class="paramname"><em>co</em>&#160;</td>
Chris@6 159 </tr>
Chris@6 160 <tr>
Chris@6 161 <td></td>
Chris@6 162 <td>)</td>
Chris@6 163 <td></td><td></td>
Chris@6 164 </tr>
Chris@6 165 </table>
Chris@6 166 </div><div class="memdoc">
Chris@6 167
Chris@6 168 <p>Calculate a forward transform of size n. </p>
Chris@6 169 <p>ci must point to the interleaved complex input data of size n (that is, 2n doubles in total).</p>
Chris@6 170 <p>co must point to enough space to receive an interleaved complex output array of size n (that is, 2n doubles in total). </p>
Chris@6 171
Chris@6 172 </div>
Chris@6 173 </div>
Chris@6 174 <a id="aa392c6a7dbcc2cc6a1edeac6da4c435b"></a>
Chris@6 175 <h2 class="memtitle"><span class="permalink"><a href="#aa392c6a7dbcc2cc6a1edeac6da4c435b">&#9670;&nbsp;</a></span>inverse()</h2>
Chris@6 176
Chris@6 177 <div class="memitem">
Chris@6 178 <div class="memproto">
Chris@6 179 <table class="memname">
Chris@6 180 <tr>
Chris@6 181 <td class="memname">void Vamp::FFTComplex::inverse </td>
Chris@6 182 <td>(</td>
Chris@6 183 <td class="paramtype">const double *&#160;</td>
Chris@6 184 <td class="paramname"><em>ci</em>, </td>
Chris@6 185 </tr>
Chris@6 186 <tr>
Chris@6 187 <td class="paramkey"></td>
Chris@6 188 <td></td>
Chris@6 189 <td class="paramtype">double *&#160;</td>
Chris@6 190 <td class="paramname"><em>co</em>&#160;</td>
Chris@6 191 </tr>
Chris@6 192 <tr>
Chris@6 193 <td></td>
Chris@6 194 <td>)</td>
Chris@6 195 <td></td><td></td>
Chris@6 196 </tr>
Chris@6 197 </table>
Chris@6 198 </div><div class="memdoc">
Chris@6 199
Chris@6 200 <p>Calculate an inverse transform of size n. </p>
Chris@6 201 <p>ci must point to an interleaved complex input array of size n (that is, 2n doubles in total).</p>
Chris@6 202 <p>co must point to enough space to receive the interleaved complex output data of size n (that is, 2n doubles in total). The output is scaled by 1/n. </p>
Chris@6 203
Chris@6 204 </div>
Chris@6 205 </div>
Chris@6 206 <h2 class="groupheader">Member Data Documentation</h2>
Chris@6 207 <a id="aa521eef4194d91d2c48d07ed5f6d7f5f"></a>
Chris@6 208 <h2 class="memtitle"><span class="permalink"><a href="#aa521eef4194d91d2c48d07ed5f6d7f5f">&#9670;&nbsp;</a></span>m_d</h2>
Chris@6 209
Chris@6 210 <div class="memitem">
Chris@6 211 <div class="memproto">
Chris@6 212 <table class="mlabels">
Chris@6 213 <tr>
Chris@6 214 <td class="mlabels-left">
Chris@6 215 <table class="memname">
Chris@6 216 <tr>
Chris@6 217 <td class="memname">D* Vamp::FFTComplex::m_d</td>
Chris@6 218 </tr>
Chris@6 219 </table>
Chris@6 220 </td>
Chris@6 221 <td class="mlabels-right">
Chris@6 222 <span class="mlabels"><span class="mlabel">private</span></span> </td>
Chris@6 223 </tr>
Chris@6 224 </table>
Chris@6 225 </div><div class="memdoc">
Chris@6 226
Chris@6 227 <p class="definition">Definition at line <a class="el" href="FFT_8h_source.html#l00144">144</a> of file <a class="el" href="FFT_8h_source.html">FFT.h</a>.</p>
Chris@6 228
Chris@6 229 </div>
Chris@6 230 </div>
Chris@6 231 <hr/>The documentation for this class was generated from the following file:<ul>
Chris@6 232 <li><a class="el" href="FFT_8h_source.html">FFT.h</a></li>
Chris@6 233 </ul>
Chris@6 234 </div><!-- contents -->
Chris@6 235 </div><!-- doc-content -->
Chris@6 236 <!-- start footer part -->
Chris@6 237 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
Chris@6 238 <ul>
Chris@6 239 <li class="navelem"><a class="el" href="namespaceVamp.html">Vamp</a></li><li class="navelem"><a class="el" href="classVamp_1_1FFTComplex.html">FFTComplex</a></li>
Chris@6 240 <li class="footer">Generated by
Chris@6 241 <a href="http://www.doxygen.org/index.html">
Chris@6 242 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
Chris@6 243 </ul>
Chris@6 244 </div>
Chris@6 245 </body>
Chris@6 246 </html>