diff options
author | John Glover <glover.john@gmail.com> | 2011-06-24 18:17:23 +0100 |
---|---|---|
committer | John Glover <glover.john@gmail.com> | 2011-06-24 18:17:23 +0100 |
commit | 416bd737074a287ea47106c73ea6bcfde40a75a8 (patch) | |
tree | 74562303d4f4f2f2e010f7e13cba41dc4852b50c /sndobj/FFT.h | |
parent | d26519464dcbf8c3682348167c29454961facefe (diff) | |
download | simpl-416bd737074a287ea47106c73ea6bcfde40a75a8.tar.gz simpl-416bd737074a287ea47106c73ea6bcfde40a75a8.tar.bz2 simpl-416bd737074a287ea47106c73ea6bcfde40a75a8.zip |
Change to using distutils.
Currently only builds the simplsndobj module
Diffstat (limited to 'sndobj/FFT.h')
-rw-r--r-- | sndobj/FFT.h | 93 |
1 files changed, 0 insertions, 93 deletions
diff --git a/sndobj/FFT.h b/sndobj/FFT.h deleted file mode 100644 index f8aa97e..0000000 --- a/sndobj/FFT.h +++ /dev/null @@ -1,93 +0,0 @@ - -//////////////////////////////////////////////////////////////////////// -// This file is part of the SndObj library -// -// This program is free software; you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation; either version 2 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// Copyright (c)Victor Lazzarini, 1997-2004 -// See License.txt for a disclaimer of all warranties -// and licensing information - -////////////////////////////////////////////////////// -// FFT.h: interface of the FFT class: -// short-time fast fourier transform -// using the FFTW library (v. 2.1.3) -// Victor Lazzarini, 2003 -///////////////////////////////////////////////////////// - -#ifndef _FFT_H -#define _FFT_H -#include "SndObj.h" -#include "Table.h" -#include <rfftw/rfftw.h> - -class FFT : public SndObj { - - protected: - - // m_vecsize is FFT size - // m_hopsize should always be set to the time-domain - // vector size - int m_fftsize; - int m_hopsize; // hopsize - int m_halfsize; // 1/2 fftsize - int *m_counter; // counter - rfftw_plan m_plan; // FFTW initialisation - double m_fund; - - double m_scale; // scaling factor - double m_norm; // norm factor - int m_frames; // frame overlaps - double** m_sigframe; // signal frames - double* m_ffttmp; // tmp vector for fft transform - int m_cur; // index into current frame - - Table* m_table; // window - - private: - // fft wrapper method - void inline fft(double* signal); - - // reset memory and initialisation - void ReInit(); - - public: - - FFT(); - FFT(Table* window, SndObj* input, double scale=1.f, - int fftsize=DEF_FFTSIZE, int hopsize=DEF_VECSIZE, - double m_sr=DEF_SR); - - ~FFT(); - - int GetFFTSize() { return m_fftsize; } - int GetHopSize() { return m_hopsize; } - void SetWindow(Table* window){ m_table = window;} - int Connect(char* mess, void* input); - int Set(char* mess, double value); - void SetScale(double scale){ m_scale = scale; m_norm = m_fftsize/m_scale;} - virtual void SetFFTSize(int fftsize); - virtual void SetHopSize(int hopsize); - - short DoProcess(); - -}; - -#endif - - - - - |