From a9209daadd31846f6e18b7bcc186998433dd3607 Mon Sep 17 00:00:00 2001 From: torset Date: Fri, 6 Feb 2009 15:33:32 +0000 Subject: Modify some headers and interfaces --- src/signalProcessing/includes/ifft.h | 12 ++- src/signalProcessing/interfaces/int_convol.h | 126 ++++++++++++++++++++++++++- src/signalProcessing/interfaces/int_ifft.h | 4 +- 3 files changed, 134 insertions(+), 8 deletions(-) diff --git a/src/signalProcessing/includes/ifft.h b/src/signalProcessing/includes/ifft.h index e599b22a..a0c06ef4 100644 --- a/src/signalProcessing/includes/ifft.h +++ b/src/signalProcessing/includes/ifft.h @@ -21,8 +21,16 @@ #define ciffts(in) in #define ziffts(in) in -#define sifftma(in,rows,columns,out) cifftma(FloatComplexMatrix(in,0),rows,columns,out) -#define difftma(in,rows,columns,out) zifftma(DoubleComplexMatrix(in,0),rows,columns,out) +#define sifftma(in,rows,columns,out) {float* temp;\ + temp=malloc((uint)(rows*columns)*sizeof(float));\ + sfilla(temp,rows,columns,0);\ + cifftma(FloatComplexMatrix(in,temp,rows*columns),rows,columns,out);\ + } +#define difftma(in,rows,columns,out) {double* temp;\ + temp=malloc((uint)(rows*columns)*sizeof(double));\ + dfilla(temp,rows,columns,0);\ + zifftma(DoubleComplexMatrix(in,temp,rows*columns),rows,columns,out);\ + } /* ** compute the inverse fast fourier transform of a vector diff --git a/src/signalProcessing/interfaces/int_convol.h b/src/signalProcessing/interfaces/int_convol.h index 9c0b730a..80ec65b1 100644 --- a/src/signalProcessing/interfaces/int_convol.h +++ b/src/signalProcessing/interfaces/int_convol.h @@ -15,6 +15,9 @@ #ifndef __INT_CONVOL_H__ #define __INT_CONVOL_H__ + +/* Scalar - Scalar */ + #define s0s0convols0(in1,in2) in1*in2 #define d0d0convold0(in1,in2) in1*in2 @@ -23,13 +26,128 @@ #define z0z0convolz0(in1,in2) zmuls(in1,in2) +#define s0c0convolc0(in1,in2) cmuls(FloatComplex(in1,0),in2) + +#define d0z0convolz0(in1,in2) zmuls(DoubleComplex(in1,0),in2) + +#define c0s0convolc0(in1,in2) cmuls(in1,FloatComplex(in2,0)) + +#define z0d0convolz0(in1,in2) zmuls(in1,DoubleComplex(in2,0)) + +/* Scalar - Matrix */ + +#define s0s2convols2(in1,in2,size,out) {int i;\ + for (i=0;i