diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/signalProcessing/interfaces/int_fft.h | 40 | ||||
-rw-r--r-- | src/signalProcessing/interfaces/int_ifft.h | 22 |
2 files changed, 48 insertions, 14 deletions
diff --git a/src/signalProcessing/interfaces/int_fft.h b/src/signalProcessing/interfaces/int_fft.h index fb09f9f0..ea2c69b9 100644 --- a/src/signalProcessing/interfaces/int_fft.h +++ b/src/signalProcessing/interfaces/int_fft.h @@ -15,41 +15,57 @@ #ifndef __INT_FFT_H__ #define __INT_FFT_H__ -#define s0fftc0(in) FloatComplex(sffts(in),0) +#define s0ffts0(in) sffts(in) -#define d0fftz0(in) DoubleComplex(dffts(in),0) +#define d0fftd0(in) dffts(in) #define c0fftc0(in) cffts(in) #define z0fftz0(in) zffts(in) -#define s2fftc2(in,size,out) sfftma(in, size[0], size[1], out) -#define d2fftz2(in,size,out) dfftma(in, size[0], size[1], out) +#define s2ffts2(in,size,out) sfftma(in, size[0], size[1], out) + +#define d2fftd2(in,size,out) dfftma(in, size[0], size[1], out) #define c2fftc2(in,size,out) cfftma(in, size[0], size[1], out) #define z2fftz2(in,size,out) zfftma(in, size[0], size[1], out) +/* FIXME : malloc here */ +#define s2fftc2(in,size,out) {float* ZEROS;\ + ZEROS=malloc((uint)(size[0]*size[1]*sizeof(float));\ + szerosa(ZEROS,size[0],size[1]);\ + cfftma(FloatComplexMatrix(in,ZEROS,size[0]*size[1]), size[0], size[1], out);\ + } +/* FIXME : malloc here */ +#define d2fftz2(in,size,out) {double* ZEROS;\ + ZEROS=malloc((uint)(size[0]*size[1]*sizeof(double));\ + dzerosa(ZEROS,size[0],size[1]);\ + zfftma(DoubleComplexMatrix(in,ZEROS,size[0]*size[1]), size[0], size[1], out);\ + } -#define s0s0fftc0(in1,in2) (in2==-1) ? s0fftc0(in1) : s0ifftc0(in1) + +#define s0s0ffts0(in1,in2) (in2==-1.0f) ? s0ffts0(in1) : s0iffts0(in1) -#define d0d0fftz0(in1,in2) (in2==-1) ? d0fftz0(in1) : d0ifftz0(in1) +#define d0d0fftd0(in1,in2) (in2==-1.0) ? d0fftd0(in1) : d0ifftd0(in1) -#define c0s0fftc0(in1,in2) (in2==-1) ? c0fftc0(in1) : c0ifftc0(in1) +#define c0s0fftc0(in1,in2) (in2==-1.0f) ? c0fftc0(in1) : c0ifftc0(in1) -#define z0d0fftz0(in1,in2) (in2==-1) ? z0fftz0(in1) : z0ifftz0(in1) +#define z0d0fftz0(in1,in2) (in2==-1.0) ? z0fftz0(in1) : z0ifftz0(in1) -#define s2s0fftc2(in1,size,in2,out) (in2==-1) ? s2fftc2(in1,size,out) : s2ifftc2(in1,size,out) +#define s2s0ffts2(in1,size,in2,out) (in2==-1.0f) ? s2ffts2(in1,size,out) : s2iffts2(in1,size,out) -#define d2d0fftz2(in1,size,in2,out) (in2==-1) ? d2fftz2(in1,size,out) : d2ifftz2(in1,size,out) +#define d2d0fftd2(in1,size,in2,out) (in2==-1.0) ? d2fftd2(in1,size,out) : d2ifftd2(in1,size,out) -#define c2s0fftc2(in1,size,in2,out) (in2==-1) ? c2fftc2(in1,size,out) : c2ifftc2(in1,size,out) +#define c2s0fftc2(in1,size,in2,out) (in2==-1.0f) ? c2fftc2(in1,size,out) : c2ifftc2(in1,size,out) -#define z2d0fftz2(in1,size,in2,out) (in2==-1) ? z2fftz2(in1,size,out) : z2ifftz2(in1,size,out) +#define z2d0fftz2(in1,size,in2,out) (in2==-1.0) ? z2fftz2(in1,size,out) : z2ifftz2(in1,size,out) +#define s2s0fftc2(in1,size,in2,out) (in2==-1.0f) ? s2fftc2(in1,size,out) : s2ifftc2(in1,size,out) +#define d2d0fftz2(in1,size,in2,out) (in2==-1.0) ? d2fftz2(in1,size,out) : d2ifftz2(in1,size,out) #endif /* !__INT_FFT_H__ */ diff --git a/src/signalProcessing/interfaces/int_ifft.h b/src/signalProcessing/interfaces/int_ifft.h index 87aa138f..e541b0ee 100644 --- a/src/signalProcessing/interfaces/int_ifft.h +++ b/src/signalProcessing/interfaces/int_ifft.h @@ -15,6 +15,11 @@ #ifndef __INT_IFFT_H__ #define __INT_IFFT_H__ + +#define s0iffts0(in) siffts(in) + +#define d0ifftd0(in) diffts(in) + #define s0ifftc0(in) FloatComplex(siffts(in),0) #define d0ifftz0(in) DoubleComplex(diffts(in),0) @@ -23,12 +28,25 @@ #define z0ifftz0(in) ziffts(in) -#define s2ifftc2(in,size,out) sifftma(in, size[0], size[1], out) +#define s2iffts2(in,size,out) sifftma(in, size[0], size[1], out) -#define d2ifftz2(in,size,out) difftma(in, size[0], size[1], out) +#define d2ifftd2(in,size,out) difftma(in, size[0], size[1], out) #define c2ifftc2(in,size,out) cifftma(in, size[0], size[1], out) #define z2ifftz2(in,size,out) zifftma(in, size[0], size[1], out) +/* FIXME : malloc here */ +#define s2ifftc2(in,size,out) {float* ZEROS;\ + ZEROS=malloc((uint)(size[0]*size[1]*sizeof(float));\ + szerosa(ZEROS,size[0],size[1]);\ + cifftma(FloatComplexMatrix(in,ZEROS,size[0]*size[1]), size[0], size[1], out);\ + } +/* FIXME : malloc here */ +#define d2ifftz2(in,size,out) {double* ZEROS;\ + ZEROS=malloc((uint)(size[0]*size[1]*sizeof(double));\ + dzerosa(ZEROS,size[0],size[1]);\ + zifftma(DoubleComplexMatrix(in,ZEROS,size[0]*size[1]), size[0], size[1], out);\ + } + #endif /* !__INT_IFFT_H__ */ |