diff options
Diffstat (limited to 'externals/grill/fftease/src/pv.h')
-rw-r--r-- | externals/grill/fftease/src/pv.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/externals/grill/fftease/src/pv.h b/externals/grill/fftease/src/pv.h new file mode 100644 index 00000000..b945e72e --- /dev/null +++ b/externals/grill/fftease/src/pv.h @@ -0,0 +1,60 @@ +/* + * This file is part of the pv-lib + * + * The pv-lib can be used by everyone as desired + * + * (c) Eric Lyon and Christopher Penrose + */ + +#include <stdio.h> + +// ------------------------------------- +// modifications by Thomas Grill + +//#include <fts/fts.h> +#include <math.h> + +#ifdef _MSC_VER +#pragma warning(disable: 4305) +#pragma warning(disable: 4244) +#pragma warning(disable: 4101) +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +// ------------------------------------- + + +#define FORWARD 1 +#define INVERSE 0 + +typedef struct { + float min; + float max; +} Bound; + +void init_rdft(int n, int *ip, float *w); +void rdft(int n, int isgn, float *a, int *ip, float *w); +void fold( float *I, float *W, int Nw, float *O, int N, int n ); +void overlapadd(float *I, int N, float *W, float *O, int Nw, int n ); +void makehanning( float *H, float *A, float *S, int Nw, int N, int I, int osc, int odd ); +void makewindows( float *H, float *A, float *S, int Nw, int N, int I, int osc ); +void leanconvert( float *S, float *C, int N2 ); +void leanunconvert( float *C, float *S, int N2 ); +void rfft( float *x, int N, int forward ); +void cfft( float *x, int NC, int forward ); +void convert_new(float *S, float *C, int N2, float *lastphase, float fundamental, float factor ); +void convert(float *S, float *C, int N2, float *lastphase, float fundamental, float factor ); +void unconvert(float *C, float *S, int N2, float *lastphase, float fundamental, float factor ); + + +// ------------------------------------- + +#ifdef __cplusplus +} +#endif + +// ------------------------------------- + |