~ubuntu-branches/ubuntu/quantal/linpsk/quantal

« back to all changes in this revision

Viewing changes to linpsk/fft.h

  • Committer: Bazaar Package Importer
  • Author(s): Bruce Walker
  • Date: 2002-02-06 11:43:38 UTC
  • Revision ID: james.westby@ubuntu.com-20020206114338-xqmjmhh01lpjm0g4
Tags: upstream-0.6.2
ImportĀ upstreamĀ versionĀ 0.6.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// fft.h: interface for the Cfft class.
 
2
//
 
3
//  This is a slightly modified version of Takuya OOURA's
 
4
//     original radix 4 FFT package.
 
5
//Copyright(C) 1996-1998 Takuya OOURA
 
6
//    (email: ooura@mmm.t.u-tokyo.ac.jp).
 
7
//////////////////////////////////////////////////////////////////////
 
8
 
 
9
#ifndef FFT_H
 
10
#define FFT_H
 
11
 
 
12
#include <stddef.h>
 
13
#include "constants.h"
 
14
 
 
15
class Cfft  
 
16
{
 
17
public:
 
18
        bool CalcFFT(double * InPut, int start, int stop,double gain, int Ave, int* OutBuf);
 
19
        Cfft();
 
20
        virtual ~Cfft();
 
21
private:
 
22
        bool m_AverageOn;
 
23
        int m_AveSize;
 
24
        double *SinCosTbl;
 
25
        double *WindowTbl;
 
26
        double *pFFTAveBuf;
 
27
        double *InBuf;
 
28
        int *WorkArea;
 
29
        void makewt(int nw, int *ip, double *w);
 
30
        void makect(int nc, int *ip, double *c);
 
31
        void bitrv2(int n, int *ip, double *a);
 
32
        void cftfsub(int n, double *a, double *w);
 
33
        void rftfsub(int n, double *a, int nc, double *c);
 
34
    void cft1st(int n, double *a, double *w);
 
35
    void cftmdl(int n, int l, double *a, double *w);
 
36
};
 
37
 
 
38
#endif