summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/includes/lapack.h2
-rw-r--r--src/signalProcessing/conv/cconva.c10
-rw-r--r--src/signalProcessing/conv/dconva.c6
-rw-r--r--src/signalProcessing/conv/sconva.c6
-rw-r--r--src/signalProcessing/conv/zconva.c10
-rw-r--r--src/signalProcessing/crossCorr/ccrossCorra.c2
-rw-r--r--src/signalProcessing/crossCorr/dcrossCorra.c2
-rw-r--r--src/signalProcessing/crossCorr/scrossCorra.c2
-rw-r--r--src/signalProcessing/crossCorr/zcrossCorra.c2
-rw-r--r--src/signalProcessing/fft/dfftmx.c2
-rw-r--r--src/signalProcessing/fft/r8tx.c4
-rw-r--r--src/signalProcessing/fft/zfftma.c12
-rw-r--r--src/signalProcessing/ifft/difftma.c4
-rw-r--r--src/signalProcessing/ifft/difftmx.c2
-rw-r--r--src/signalProcessing/ifft/ir8tx.c4
-rw-r--r--src/signalProcessing/ifft/sifftma.c4
-rw-r--r--src/signalProcessing/ifft/zifftma.c12
-rw-r--r--src/signalProcessing/includes/conv.h16
-rw-r--r--src/signalProcessing/includes/conv2d.h16
-rw-r--r--src/signalProcessing/includes/crossCorr.h17
-rw-r--r--src/signalProcessing/includes/dynlib_signalprocessing.h26
-rw-r--r--src/signalProcessing/includes/fft.h17
-rw-r--r--src/signalProcessing/includes/fftshift.h34
-rw-r--r--src/signalProcessing/includes/hilbert.h16
-rw-r--r--src/signalProcessing/includes/ifft.h16
-rw-r--r--src/signalProcessing/includes/lev.h27
-rw-r--r--src/signalProcessing/includes/levin.h12
-rw-r--r--src/signalProcessing/includes/lpc2cep.h17
-rw-r--r--src/signalProcessing/lev/cleva.c2
-rw-r--r--src/signalProcessing/lev/cleva2.c2
-rw-r--r--src/signalProcessing/lev/dleva.c2
-rw-r--r--src/signalProcessing/lev/dleva2.c2
-rw-r--r--src/signalProcessing/lev/sleva.c2
-rw-r--r--src/signalProcessing/lev/sleva2.c2
-rw-r--r--src/signalProcessing/lev/zleva.c2
-rw-r--r--src/signalProcessing/lev/zleva2.c2
-rw-r--r--src/signalProcessing/levin/dlevina.c16
-rw-r--r--src/signalProcessing/levin/slevina.c16
-rw-r--r--src/signalProcessing/lpc2cep/slpc2cepa.c2
-rw-r--r--src/signalProcessing/signalProcessing.vcproj1647
40 files changed, 1873 insertions, 124 deletions
diff --git a/src/includes/lapack.h b/src/includes/lapack.h
index 4b995bd0..0bee916e 100644
--- a/src/includes/lapack.h
+++ b/src/includes/lapack.h
@@ -140,7 +140,7 @@ extern int C2F(drot)();
extern int C2F(intexpm) ();
-extern int C2F(zcopy)();
+extern int C2F(zcopy)(int*,doubleComplex *,int*,doubleComplex*,int*);
extern int C2F(dgemm)(char *,char*,int*,int*,int*,double*,double*,int*,double*,int*,double*,double*,int*);
extern int C2F(idamax)() ;/* could be transcribe easily in c */
diff --git a/src/signalProcessing/conv/cconva.c b/src/signalProcessing/conv/cconva.c
index 99f0b1de..6debe139 100644
--- a/src/signalProcessing/conv/cconva.c
+++ b/src/signalProcessing/conv/cconva.c
@@ -17,16 +17,16 @@ void cconva(floatComplex *in1, int size1, floatComplex *in2,int size2, floatComp
floatComplex *in1b, *in2b, *result;
- m1=(int)floor(log(size1+size2-1)/log(2)+1);
- m1=(int)pow(2,m1);
+ m1=(int)floor( log(float(size1+size2-1)) / log((float)2) + 1 );
+ m1=(int)pow((float)2,(float)m1);
- in1b=malloc((unsigned int)(2*m1)*sizeof(float));
+ in1b=(floatComplex *)malloc((unsigned int)(2*m1)*sizeof(float));
for(i=0;i<m1;i++){
if (i<size1) in1b[i]=in1[i];
else in1b[i]=FloatComplex(0,0);
}
- in2b=malloc((unsigned int)(2*m1)*sizeof(float));
+ in2b=(floatComplex *)malloc((unsigned int)(2*m1)*sizeof(float));
for(i=0;i<m1;i++){
if (i<size2) in2b[i]=in2[i];
else in2b[i]=FloatComplex(0,0);
@@ -37,7 +37,7 @@ void cconva(floatComplex *in1, int size1, floatComplex *in2,int size2, floatComp
cfftma(in1b,m1,1,in1b);
cfftma(in2b,m1,1,in2b);
- result=malloc((unsigned int)(2*m1)*sizeof(float));
+ result=(floatComplex *)malloc((unsigned int)(2*m1)*sizeof(float));
cmula(in1b,in2b,m1,result);
cifftma(result,m1,1,result);
diff --git a/src/signalProcessing/conv/dconva.c b/src/signalProcessing/conv/dconva.c
index dc4294d0..975a5b19 100644
--- a/src/signalProcessing/conv/dconva.c
+++ b/src/signalProcessing/conv/dconva.c
@@ -17,15 +17,15 @@ void dconva(double *in1, int size1, double *in2,int size2, double *out){
int i;
doubleComplex *in1Cpx, *in2Cpx, *result;
- in1Cpx=malloc(2*(unsigned int)size1*sizeof(double));
- in2Cpx=malloc(2*(unsigned int)size2*sizeof(double));
+ in1Cpx=(doubleComplex*)malloc(2*(unsigned int)size1*sizeof(double));
+ in2Cpx=(doubleComplex*)malloc(2*(unsigned int)size2*sizeof(double));
for (i=0;i<size1;i++){
in1Cpx[i]=DoubleComplex(in1[i],0);
}
for (i=0;i<size2;i++){
in2Cpx[i]=DoubleComplex(in2[i],0);
}
- result=malloc(2*(unsigned int)(size1+size2-1)*sizeof(double));
+ result=(doubleComplex*)malloc(2*(unsigned int)(size1+size2-1)*sizeof(double));
zconva(in1Cpx,size1,in2Cpx,size2,result);
zreala(result,size1+size2-1,out);
diff --git a/src/signalProcessing/conv/sconva.c b/src/signalProcessing/conv/sconva.c
index 09288381..0c1ee5a4 100644
--- a/src/signalProcessing/conv/sconva.c
+++ b/src/signalProcessing/conv/sconva.c
@@ -18,8 +18,8 @@ void sconva(float *in1, int size1, float *in2,int size2, float *out){
int i;
floatComplex *in1Cpx, *in2Cpx, *result;
- in1Cpx=malloc(2*(unsigned int)size1*sizeof(float));
- in2Cpx=malloc(2*(unsigned int)size2*sizeof(float));
+ in1Cpx=(floatComplex *)malloc(2*(unsigned int)size1*sizeof(float));
+ in2Cpx=(floatComplex *)malloc(2*(unsigned int)size2*sizeof(float));
for (i=0;i<size1;i++){
in1Cpx[i]=FloatComplex(in1[i],0);
@@ -29,7 +29,7 @@ void sconva(float *in1, int size1, float *in2,int size2, float *out){
in2Cpx[i]=FloatComplex(in2[i],0);
}
- result=malloc(2*(unsigned int)(size1+size2-1)*sizeof(float));
+ result=(floatComplex *)malloc(2*(unsigned int)(size1+size2-1)*sizeof(float));
cconva(in1Cpx,size1,in2Cpx,size2,result);
diff --git a/src/signalProcessing/conv/zconva.c b/src/signalProcessing/conv/zconva.c
index 83c791ec..650a0491 100644
--- a/src/signalProcessing/conv/zconva.c
+++ b/src/signalProcessing/conv/zconva.c
@@ -18,16 +18,16 @@ void zconva(doubleComplex *in1, int size1, doubleComplex *in2,int size2, doubleC
doubleComplex *in1b, *in2b, *result;
- m1=(int)floor(log(size1+size2-1)/log(2)+1);
- m1=(int)pow(2,m1);
+ m1=(int)floor(log((double)(size1+size2-1))/log(double(2))+1);
+ m1=(int)pow((double)(2),double(m1));
- in1b=malloc(2*(unsigned int)m1*sizeof(double));
+ in1b=(doubleComplex *)malloc(2*(unsigned int)m1*sizeof(double));
for(i=0;i<m1;i++){
if (i<size1) in1b[i]=in1[i];
else in1b[i]=DoubleComplex(0,0);
}
- in2b=malloc(2*(unsigned int)m1*sizeof(double));
+ in2b=(doubleComplex *)malloc(2*(unsigned int)m1*sizeof(double));
for(i=0;i<m1;i++){
if (i<size2) in2b[i]=in2[i];
else in2b[i]=DoubleComplex(0,0);
@@ -37,7 +37,7 @@ void zconva(doubleComplex *in1, int size1, doubleComplex *in2,int size2, doubleC
zfftma(in1b,m1,1,in1b);
zfftma(in2b,m1,1,in2b);
- result=malloc(2*(unsigned int)m1*sizeof(double));
+ result=(doubleComplex *)malloc(2*(unsigned int)m1*sizeof(double));
zmula(in1b,in2b,m1,result);
zifftma(result,m1,1,result);
diff --git a/src/signalProcessing/crossCorr/ccrossCorra.c b/src/signalProcessing/crossCorr/ccrossCorra.c
index 9d8cd52e..53656f60 100644
--- a/src/signalProcessing/crossCorr/ccrossCorra.c
+++ b/src/signalProcessing/crossCorr/ccrossCorra.c
@@ -20,7 +20,7 @@ void ccrossCorra(floatComplex* in1, int rows1, int cols1, floatComplex* in2, int
floatComplex *in2Copy;
int i;
- in2Copy=malloc((unsigned int)rows2*sizeof(floatComplex));
+ in2Copy=(floatComplex *)malloc((unsigned int)rows2*sizeof(floatComplex));
/* We change in2 to be in appropriate form in in2Copy*/
for (i=0;i<(rows2*cols2);i++) in2Copy[i]=cconjs(in2[rows2*cols2-1-i]);
diff --git a/src/signalProcessing/crossCorr/dcrossCorra.c b/src/signalProcessing/crossCorr/dcrossCorra.c
index c981981a..42287ca3 100644
--- a/src/signalProcessing/crossCorr/dcrossCorra.c
+++ b/src/signalProcessing/crossCorr/dcrossCorra.c
@@ -21,7 +21,7 @@ void dcrossCorra(double* in1, int rows1, int cols1, double* in2, int rows2, int
double *in2Copy;
int i;
- in2Copy=malloc((unsigned int)(rows2*cols2)*sizeof(double));
+ in2Copy=(double*)malloc((unsigned int)(rows2*cols2)*sizeof(double));
/* We change in2 to be in appropriate form in in2Copy*/
for (i=0;i<(rows2*cols2);i++) in2Copy[i]=in2[rows2*cols2-1-i];
diff --git a/src/signalProcessing/crossCorr/scrossCorra.c b/src/signalProcessing/crossCorr/scrossCorra.c
index c38b90b7..fd0ed507 100644
--- a/src/signalProcessing/crossCorr/scrossCorra.c
+++ b/src/signalProcessing/crossCorr/scrossCorra.c
@@ -19,7 +19,7 @@ void scrossCorra(float* in1, int rows1, int cols1, float* in2, int rows2, int co
float *in2Copy;
int i;
- in2Copy=malloc((unsigned int)(rows2*cols2)*sizeof(float));
+ in2Copy=(float*)malloc((unsigned int)(rows2*cols2)*sizeof(float));
/* We change in2 to be in appropriate form in in2Copy*/
for (i=0;i<(rows2*cols2);i++) in2Copy[i]=in2[rows2*cols2-1-i];
diff --git a/src/signalProcessing/crossCorr/zcrossCorra.c b/src/signalProcessing/crossCorr/zcrossCorra.c
index ca66952b..4ff03f7b 100644
--- a/src/signalProcessing/crossCorr/zcrossCorra.c
+++ b/src/signalProcessing/crossCorr/zcrossCorra.c
@@ -20,7 +20,7 @@ void zcrossCorra(doubleComplex* in1, int rows1, int cols1, doubleComplex* in2, i
doubleComplex *in2Copy;
int i;
- in2Copy=malloc((unsigned int)(rows2*cols2)*sizeof(doubleComplex));
+ in2Copy=(doubleComplex *)malloc((unsigned int)(rows2*cols2)*sizeof(doubleComplex));
/* We change in2 to be in appropriate form in in2Copy*/
for (i=0;i<(rows2*cols2);i++) in2Copy[i]=zconjs(in2[rows2*cols2-1-i]);
diff --git a/src/signalProcessing/fft/dfftmx.c b/src/signalProcessing/fft/dfftmx.c
index 27061b91..f7d6ce30 100644
--- a/src/signalProcessing/fft/dfftmx.c
+++ b/src/signalProcessing/fft/dfftmx.c
@@ -141,7 +141,7 @@ int dfftmx ( double* _pdblA , double* _pdblB , int _iNtot, int _iN, int _iNspan,
inc = abs ( isn ) ;
nt = inc*ntot ;
ks = inc*nspan;
- rad = atan(1);
+ rad = atan((double)1);
c72 = cos (rad/0.6250);
s72 = sin (rad/0.6250);
s120= sqrt(0.750);
diff --git a/src/signalProcessing/fft/r8tx.c b/src/signalProcessing/fft/r8tx.c
index bafb4698..5f6628b3 100644
--- a/src/signalProcessing/fft/r8tx.c
+++ b/src/signalProcessing/fft/r8tx.c
@@ -30,8 +30,8 @@ void r8tx ( int nxtlt,int nthpo,int lengt,
int j , kk;
- double dblP7 = 1 / sqrt (2) ;
- double dblPi2 = 8 * atan (1);
+ double dblP7 = 1 / sqrt (double(2)) ;
+ double dblPi2 = 8 * atan (double(1));
double scale, arg;
double c1,c2,c3,c4,c5,c6,c7;
diff --git a/src/signalProcessing/fft/zfftma.c b/src/signalProcessing/fft/zfftma.c
index 56f13d2d..b126a0f3 100644
--- a/src/signalProcessing/fft/zfftma.c
+++ b/src/signalProcessing/fft/zfftma.c
@@ -48,10 +48,10 @@ void zfftma ( doubleComplex* in , int rows, int cols, doubleComplex* out)
if ( rows == 1 || cols == 1 )
{
- sizeTemp = (int) pow ( 2 , (int ) (log( size + 0.5 ) /log ( 2 ))) ;
+ sizeTemp = (int) pow ( double(2) , (int ) (log(double(size + 0.5) ) /log ( double(2) ))) ;
if ( size == sizeTemp )
{
- if ( size <= pow ( 2 , 15 ))
+ if ( size <= pow ( double(2) , double(15) ))
{
fft842 ( inCopy , size , 0 );
choosenAlgo = FFT842 ;
@@ -68,12 +68,12 @@ void zfftma ( doubleComplex* in , int rows, int cols, doubleComplex* out)
}
else
{
- rowsTemp = (int) pow ( 2 ,(int ) (log( rows + 0.5) /log ( 2 ))) ;
- colsTemp = (int) pow ( 2 ,(int ) (log( cols + 0.5) /log ( 2 ))) ;
+ rowsTemp = (int) pow ( (double)2 ,(int ) (log( double(rows + 0.5)) /log ( double(2) ))) ;
+ colsTemp = (int) pow ( (double)2 ,(int ) (log( double(cols + 0.5)) /log ( double(2) ))) ;
if ( rows == rowsTemp)
{
- if ( rows <= pow ( 2 , 15 ))
+ if ( rows <= pow ((double) 2 , (double)15 ))
{
for ( i = 0 ; i < cols ; i++ )
{
@@ -105,7 +105,7 @@ void zfftma ( doubleComplex* in , int rows, int cols, doubleComplex* out)
/*second call*/
if ( colsTemp == cols )
{
- if ( cols <= pow ( 2 ,15) )
+ if ( cols <= pow ( (double)2 ,(double)15) )
{
/*compute the fft on each line of the matrix */
for (i = 0 ; i < rows ; i++ )
diff --git a/src/signalProcessing/ifft/difftma.c b/src/signalProcessing/ifft/difftma.c
index e716c4b0..67981652 100644
--- a/src/signalProcessing/ifft/difftma.c
+++ b/src/signalProcessing/ifft/difftma.c
@@ -20,8 +20,8 @@ void difftma ( double* in , int rows, int cols, double* out){
doubleComplex* inCpx;
doubleComplex* outCpx;
- ZEROS = malloc((unsigned int)(rows*cols)*sizeof(double));
- outCpx = malloc((unsigned int)(rows*cols)*sizeof(doubleComplex));
+ ZEROS = (double*)malloc((unsigned int)(rows*cols)*sizeof(double));
+ outCpx = (doubleComplex*)malloc((unsigned int)(rows*cols)*sizeof(doubleComplex));
dzerosa(ZEROS,rows,cols);
inCpx=DoubleComplexMatrix(in,ZEROS,rows*cols);
diff --git a/src/signalProcessing/ifft/difftmx.c b/src/signalProcessing/ifft/difftmx.c
index a4aef2d4..5345f31a 100644
--- a/src/signalProcessing/ifft/difftmx.c
+++ b/src/signalProcessing/ifft/difftmx.c
@@ -142,7 +142,7 @@ int difftmx ( double* _pdblA , double* _pdblB , int _iNtot, int _iN, int _iNspan
inc = abs ( isn ) ;
nt = inc*ntot ;
ks = inc*nspan;
- rad = atan ( 1 );
+ rad = atan ( double(1) );
c72 = cos (rad/0.6250);
s72 = sin (rad/0.6250);
diff --git a/src/signalProcessing/ifft/ir8tx.c b/src/signalProcessing/ifft/ir8tx.c
index f628c1cb..325ae7a9 100644
--- a/src/signalProcessing/ifft/ir8tx.c
+++ b/src/signalProcessing/ifft/ir8tx.c
@@ -30,8 +30,8 @@ void ir8tx ( int nxtlt,int nthpo,int lengt,
int j , kk;
- double dblP7 = 1 / sqrt (2) ;
- double dblPi2 = 8 * atan (1);
+ double dblP7 = 1 / sqrt (double(2)) ;
+ double dblPi2 = 8 * atan (double(1));
double scale, arg;
double c1,c2,c3,c4,c5,c6,c7;
diff --git a/src/signalProcessing/ifft/sifftma.c b/src/signalProcessing/ifft/sifftma.c
index 0c9c2dd1..3d427917 100644
--- a/src/signalProcessing/ifft/sifftma.c
+++ b/src/signalProcessing/ifft/sifftma.c
@@ -20,8 +20,8 @@ void sifftma ( float* in , int rows, int cols, float* out){
floatComplex* inCpx;
floatComplex* outCpx;
- ZEROS = malloc((unsigned int)(rows*cols)*sizeof(float));
- outCpx = malloc((unsigned int)(rows*cols)*sizeof(floatComplex));
+ ZEROS = (float*)malloc((unsigned int)(rows*cols)*sizeof(float));
+ outCpx = (floatComplex*)malloc((unsigned int)(rows*cols)*sizeof(floatComplex));
szerosa(ZEROS,rows,cols);
inCpx=FloatComplexMatrix(in,ZEROS,rows*cols);
diff --git a/src/signalProcessing/ifft/zifftma.c b/src/signalProcessing/ifft/zifftma.c
index 3b1de4cb..1ad7c461 100644
--- a/src/signalProcessing/ifft/zifftma.c
+++ b/src/signalProcessing/ifft/zifftma.c
@@ -51,12 +51,12 @@ void zifftma ( doubleComplex* in , int rows, int cols, doubleComplex* out)
if ( rows == 1 || cols == 1 )
{
- sizeTemp = (int) pow ( 2 , (int ) (log( size + 0.5 ) /log ( 2 ))) ;
+ sizeTemp = (int) pow ( double(2) , (int ) (log(double( size + 0.5) ) /log ( double(2) ))) ;
if ( size == sizeTemp )
{
- if ( size <= pow ( 2 , 15 ))
+ if ( size <= pow ( double(2) , double(15) ))
{
ifft842 ( inCopy , size , 1 );
choosenAlgo = IFFT842 ;
@@ -77,12 +77,12 @@ void zifftma ( doubleComplex* in , int rows, int cols, doubleComplex* out)
else
{
- rowsTemp = (int) pow ( 2 ,(int) (log( rows + 0.5) /log ( 2 ))) ;
- colsTemp = (int) pow ( 2 ,(int) (log( cols + 0.5) /log ( 2 ))) ;
+ rowsTemp = (int) pow ( double(2) ,(int) (log( double(rows + 0.5)) /log ( double(2) ))) ;
+ colsTemp = (int) pow ( double(2) ,(int) (log( double(cols + 0.5)) /log ( double(2) ))) ;
if ( rows == rowsTemp)
{
- if ( rows <= pow ( 2 , 15 ))
+ if ( rows <= pow (double(2) , 15 ))
{
for ( i = 0 ; i < cols ; i++ )
{
@@ -106,7 +106,7 @@ void zifftma ( doubleComplex* in , int rows, int cols, doubleComplex* out)
/*second call*/
if ( colsTemp == cols )
{
- if ( cols <= pow ( 2 ,15) )
+ if ( cols <= pow ( double(2) ,15) )
{
/*compute the fft on each line of the matrix */
for (i = 0 ; i < rows ; i++ )
diff --git a/src/signalProcessing/includes/conv.h b/src/signalProcessing/includes/conv.h
index 90b23450..c7fd1d5e 100644
--- a/src/signalProcessing/includes/conv.h
+++ b/src/signalProcessing/includes/conv.h
@@ -15,21 +15,27 @@
#include <math.h>
#include <malloc.h>
+#include "dynlib_signalprocessing.h"
#include "floatComplex.h"
#include "doubleComplex.h"
#include "multiplication.h"
#include "ifft.h"
#include "fft.h"
-
+#ifdef __cplusplus
+extern "C" {
+#endif
/* Computes the convolution between VECTORS */
-void sconva(float *in1, int size1, float *in2,int size2, float *out);
+EXTERN_SIGPROC void sconva(float *in1, int size1, float *in2,int size2, float *out);
-void dconva(double *in1, int size1, double *in2,int size2, double *out);
+EXTERN_SIGPROC void dconva(double *in1, int size1, double *in2,int size2, double *out);
-void cconva(floatComplex *in1, int size1, floatComplex *in2,int size2, floatComplex *out);
+EXTERN_SIGPROC void cconva(floatComplex *in1, int size1, floatComplex *in2,int size2, floatComplex *out);
-void zconva(doubleComplex *in1, int size1, doubleComplex *in2,int size2, doubleComplex *out);
+EXTERN_SIGPROC void zconva(doubleComplex *in1, int size1, doubleComplex *in2,int size2, doubleComplex *out);
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
#endif /* !__CONV_H__ */
diff --git a/src/signalProcessing/includes/conv2d.h b/src/signalProcessing/includes/conv2d.h
index 7c7fc7a6..ed71d924 100644
--- a/src/signalProcessing/includes/conv2d.h
+++ b/src/signalProcessing/includes/conv2d.h
@@ -13,18 +13,26 @@
#ifndef __CONV2D_H__
#define __CONV2D_H__
+#include "dynlib_signalprocessing.h"
#include "floatComplex.h"
#include "doubleComplex.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
/* Computes the convolution between MATRICES */
-void sconv2da(float *in1, int lines1, int columns1, float *in2, int lines2, int columns2, float *out);
+EXTERN_SIGPROC void sconv2da(float *in1, int lines1, int columns1, float *in2, int lines2, int columns2, float *out);
-void dconv2da(double *in1, int lines1, int columns1, double *in2, int lines2, int columns2, double *out);
+EXTERN_SIGPROC void dconv2da(double *in1, int lines1, int columns1, double *in2, int lines2, int columns2, double *out);
-void cconv2da(floatComplex *in1, int lines1, int columns1, floatComplex *in2, int lines2, int columns2, floatComplex *out);
+EXTERN_SIGPROC void cconv2da(floatComplex *in1, int lines1, int columns1, floatComplex *in2, int lines2, int columns2, floatComplex *out);
-void zconv2da(doubleComplex *in1, int lines1, int columns1, doubleComplex *in2, int lines2, int columns2, doubleComplex *out);
+EXTERN_SIGPROC void zconv2da(doubleComplex *in1, int lines1, int columns1, doubleComplex *in2, int lines2, int columns2, doubleComplex *out);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
#endif /* !__CONV2D_H__ */
diff --git a/src/signalProcessing/includes/crossCorr.h b/src/signalProcessing/includes/crossCorr.h
index daabe52d..c44d6666 100644
--- a/src/signalProcessing/includes/crossCorr.h
+++ b/src/signalProcessing/includes/crossCorr.h
@@ -14,15 +14,24 @@
#ifndef __CROSSCORR_H__
#define __CROSSCORR_H__
+#include "dynlib_signalprocessing.h"
#include "floatComplex.h"
#include "doubleComplex.h"
-void scrossCorra(float* in1, int rows1, int cols1, float* in2, int rows2, int cols2, float* out);
+#ifdef __cplusplus
+extern "C" {
+#endif
-void dcrossCorra(double* in1, int rows1, int cols1, double* in2, int rows2, int cols2, double* out);
+EXTERN_SIGPROC void scrossCorra(float* in1, int rows1, int cols1, float* in2, int rows2, int cols2, float* out);
-void ccrossCorra(floatComplex* in1, int rows1, int cols1, floatComplex* in2, int rows2, int cols2, floatComplex* out);
+EXTERN_SIGPROC void dcrossCorra(double* in1, int rows1, int cols1, double* in2, int rows2, int cols2, double* out);
-void zcrossCorra(doubleComplex* in1, int rows1, int cols1, doubleComplex* in2, int rows2, int cols2, doubleComplex* out);
+EXTERN_SIGPROC void ccrossCorra(floatComplex* in1, int rows1, int cols1, floatComplex* in2, int rows2, int cols2, floatComplex* out);
+
+EXTERN_SIGPROC void zcrossCorra(doubleComplex* in1, int rows1, int cols1, doubleComplex* in2, int rows2, int cols2, doubleComplex* out);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
#endif /* __CROSSCORR_H__ */
diff --git a/src/signalProcessing/includes/dynlib_signalprocessing.h b/src/signalProcessing/includes/dynlib_signalprocessing.h
new file mode 100644
index 00000000..e01e8d85
--- /dev/null
+++ b/src/signalProcessing/includes/dynlib_signalprocessing.h
@@ -0,0 +1,26 @@
+/*
+* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+* Copyright (C) 2009 - DIGITEO - Allan CORNET
+*
+* This file must be used under the terms of the CeCILL.
+* This source file is licensed as described in the file COPYING, which
+* you should have received as part of this distribution. The terms
+* are also available at
+* http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+*
+*/
+
+#ifndef __DYNLIB_SIGNALPROCESSING_H__
+#define __DYNLIB_SIGNALPROCESSING_H__
+
+#ifdef _MSC_VER
+ #if SIGNALPROCESSING_EXPORTS
+ #define EXTERN_SIGPROC __declspec (dllexport)
+ #else
+ #define EXTERN_SIGPROC __declspec (dllimport)
+ #endif
+#else
+ #define EXTERN_SIGPROC
+#endif
+
+#endif /* __DYNLIB_SIGNALPROCESSING_H__ */ \ No newline at end of file
diff --git a/src/signalProcessing/includes/fft.h b/src/signalProcessing/includes/fft.h
index 79301325..efc85c09 100644
--- a/src/signalProcessing/includes/fft.h
+++ b/src/signalProcessing/includes/fft.h
@@ -13,6 +13,7 @@
#ifndef __FFT_H__
#define __FFT_H__
+#include "dynlib_signalprocessing.h"
#include "floatComplex.h"
#include "doubleComplex.h"
@@ -22,9 +23,13 @@
#define cffts(in) in
#define zffts(in) in
-void sfftma(float* in,int rows,int columns,float* out);
+#ifdef __cplusplus
+extern "C" {
+#endif
-void dfftma(double* in,int rows,int columns,double* out);
+EXTERN_SIGPROC void sfftma(float* in,int rows,int columns,float* out);
+
+EXTERN_SIGPROC void dfftma(double* in,int rows,int columns,double* out);
/*
** compute the fast fourier transform of a vector
@@ -34,7 +39,7 @@ void dfftma(double* in,int rows,int columns,double* out);
** param out : the transformed matrix in complex float precision
*/
-void cfftma ( floatComplex* in , int rows, int cols, floatComplex* out);
+EXTERN_SIGPROC void cfftma ( floatComplex* in , int rows, int cols, floatComplex* out);
/*
** compute the fast fourier transform of a vector
** param in : the input matrix in complex double precision
@@ -42,7 +47,11 @@ void cfftma ( floatComplex* in , int rows, int cols, floatComplex* out);
** param cols: number of cols of the input matrix
** param out : the transformed matrix in complex double precision
*/
-void zfftma ( doubleComplex* in , int rows, int cols, doubleComplex* out);
+EXTERN_SIGPROC void zfftma ( doubleComplex* in , int rows, int cols, doubleComplex* out);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
#endif /* !__FFT_H__ */
diff --git a/src/signalProcessing/includes/fftshift.h b/src/signalProcessing/includes/fftshift.h
index 3f3f6aa9..242e7ff7 100644
--- a/src/signalProcessing/includes/fftshift.h
+++ b/src/signalProcessing/includes/fftshift.h
@@ -14,6 +14,8 @@
#define __FFTSHIFT_H__
+#include "dynlib_signalprocessing.h"
+
/*
fftshift rearrange the result of fft(x)
it's call like that : fftshift(y), y=ff(x)
@@ -27,13 +29,17 @@
#define cfftshifts(in) in
#define zfftshifts(in) in
-void sfftshifta(float* in,int rows,int columns,float* out);
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+EXTERN_SIGPROC void sfftshifta(float* in,int rows,int columns,float* out);
-void dfftshifta(double* in,int rows,int columns,double* out);
+EXTERN_SIGPROC void dfftshifta(double* in,int rows,int columns,double* out);
-void cfftshifta ( floatComplex* in , int rows, int cols, floatComplex* out);
+EXTERN_SIGPROC void cfftshifta ( floatComplex* in , int rows, int cols, floatComplex* out);
-void zfftshifta ( doubleComplex* in , int rows, int cols, doubleComplex* out);
+EXTERN_SIGPROC void zfftshifta ( doubleComplex* in , int rows, int cols, doubleComplex* out);
#define srowfftshifts(in) in
@@ -41,28 +47,30 @@ void zfftshifta ( doubleComplex* in , int rows, int cols, doubleComplex* out);
#define crowfftshifts(in) in
#define zrowfftshifts(in) in
-void srowfftshifta(float* in,int rows,int columns,float* out);
+EXTERN_SIGPROC void srowfftshifta(float* in,int rows,int columns,float* out);
-void drowfftshifta(double* in,int rows,int columns,double* out);
+EXTERN_SIGPROC void drowfftshifta(double* in,int rows,int columns,double* out);
-void crowfftshifta ( floatComplex* in , int rows, int cols, floatComplex* out);
+EXTERN_SIGPROC void crowfftshifta ( floatComplex* in , int rows, int cols, floatComplex* out);
-void zrowfftshifta ( doubleComplex* in , int rows, int cols, doubleComplex* out);
+EXTERN_SIGPROC void zrowfftshifta ( doubleComplex* in , int rows, int cols, doubleComplex* out);
#define scolumnfftshifts(in) in
#define dcolumnfftshifts(in) in
#define ccolumnfftshifts(in) in
#define zcolumnfftshifts(in) in
-void scolumnfftshifta(float* in,int rows,int columns,float* out);
-
-void dcolumnfftshifta(double* in,int rows,int columns,double* out);
+EXTERN_SIGPROC void scolumnfftshifta(float* in,int rows,int columns,float* out);
-void ccolumnfftshifta ( floatComplex* in , int rows, int cols, floatComplex* out);
+EXTERN_SIGPROC void dcolumnfftshifta(double* in,int rows,int columns,double* out);
-void zcolumnfftshifta ( doubleComplex* in , int rows, int cols, doubleComplex* out);
+EXTERN_SIGPROC void ccolumnfftshifta ( floatComplex* in , int rows, int cols, floatComplex* out);
+EXTERN_SIGPROC void zcolumnfftshifta ( doubleComplex* in , int rows, int cols, doubleComplex* out);
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
#endif /* !__FFTSHIFT_H__ */
diff --git a/src/signalProcessing/includes/hilbert.h b/src/signalProcessing/includes/hilbert.h
index b011dab0..38264e3b 100644
--- a/src/signalProcessing/includes/hilbert.h
+++ b/src/signalProcessing/includes/hilbert.h
@@ -14,9 +14,13 @@
#ifndef __HILBERT_H__
#define __HILBERT_H__
+#include "dynlib_signalprocessing.h"
#include "floatComplex.h"
#include "doubleComplex.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
/* FIXME : input : real
output : complex
@@ -24,12 +28,16 @@
Or must we do input : real, output :real?
*/
-float shilberts(float in);
+EXTERN_SIGPROC float shilberts(float in);
-void shilberta (float* in, int rows, int cols, floatComplex *out);
+EXTERN_SIGPROC void shilberta (float* in, int rows, int cols, floatComplex *out);
-double dhilberts(double in);
+EXTERN_SIGPROC double dhilberts(double in);
-void dhilberta (double* in, int rows, int cols, doubleComplex *out);
+EXTERN_SIGPROC void dhilberta (double* in, int rows, int cols, doubleComplex *out);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
#endif /* __HILBERT_H__ */
diff --git a/src/signalProcessing/includes/ifft.h b/src/signalProcessing/includes/ifft.h
index 877ea88e..6954c7f9 100644
--- a/src/signalProcessing/includes/ifft.h
+++ b/src/signalProcessing/includes/ifft.h
@@ -13,6 +13,7 @@
#ifndef __IFFT_H__
#define __IFFT_H__
+#include "dynlib_signalprocessing.h"
#include "floatComplex.h"
#include "doubleComplex.h"
@@ -22,9 +23,13 @@
#define ziffts(in) in
-void sifftma ( float* in , int rows, int cols, float* out);
+#ifdef __cplusplus
+extern "C" {
+#endif
-void difftma ( double* in , int rows, int cols, double* out);
+EXTERN_SIGPROC void sifftma ( float* in , int rows, int cols, float* out);
+
+EXTERN_SIGPROC void difftma ( double* in , int rows, int cols, double* out);
/*
** compute the inverse fast fourier transform of a vector
@@ -35,7 +40,7 @@ void difftma ( double* in , int rows, int cols, double* out);
*/
-void zifftma ( doubleComplex* in , int rows, int cols, doubleComplex* out);
+EXTERN_SIGPROC void zifftma ( doubleComplex* in , int rows, int cols, doubleComplex* out);
/*
** compute the inverse fast fourier transform of a vector
** param in : the input matrix in complex float precision
@@ -44,8 +49,11 @@ void zifftma ( doubleComplex* in , int rows, int cols, doubleComplex* out);
** param out : the transformed matrix in complex float precision
*/
-void cifftma ( floatComplex* in , int rows, int cols, floatComplex* out);
+EXTERN_SIGPROC void cifftma ( floatComplex* in , int rows, int cols, floatComplex* out);
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
#endif /* !__IFFT_H__ */
diff --git a/src/signalProcessing/includes/lev.h b/src/signalProcessing/includes/lev.h
index 9e1a2862..32a81782 100644
--- a/src/signalProcessing/includes/lev.h
+++ b/src/signalProcessing/includes/lev.h
@@ -13,20 +13,23 @@
#ifndef __LEV_H__
#define __LEV_H__
+#include "dynlib_signalprocessing.h"
#include "floatComplex.h"
#include "doubleComplex.h"
-
+#ifdef __cplusplus
+extern "C" {
+#endif
/*
function Scilab :
[out1,y,out3]=lev(in)
y : result of the function
*/
-float sleva (float* in,int size, float* out1, float* out3);
-double dleva (double* in, int size, double* out1, double* out3);
-floatComplex cleva (floatComplex* in,int size, floatComplex* out1, floatComplex* out3);
-doubleComplex zleva (doubleComplex* in,int size, doubleComplex* out1, doubleComplex* out3);
+EXTERN_SIGPROC float sleva (float* in,int size, float* out1, float* out3);
+EXTERN_SIGPROC double dleva (double* in, int size, double* out1, double* out3);
+EXTERN_SIGPROC floatComplex cleva (floatComplex* in,int size, floatComplex* out1, floatComplex* out3);
+EXTERN_SIGPROC doubleComplex zleva (doubleComplex* in,int size, doubleComplex* out1, doubleComplex* out3);
/*
@@ -34,12 +37,14 @@ doubleComplex zleva (doubleComplex* in,int size, doubleComplex* out1, doubleComp
[out1,y]=lev(in)
y : result of the function
*/
-float sleva2 (float* in,int size, float* out1);
-double dleva2 (double* in, int size, double* out1);
-floatComplex cleva2 (floatComplex* in,int size, floatComplex* out1);
-doubleComplex zleva2 (doubleComplex* in,int size, doubleComplex* out1);
-
-
+EXTERN_SIGPROC float sleva2 (float* in,int size, float* out1);
+EXTERN_SIGPROC double dleva2 (double* in, int size, double* out1);
+EXTERN_SIGPROC floatComplex cleva2 (floatComplex* in,int size, floatComplex* out1);
+EXTERN_SIGPROC doubleComplex zleva2 (doubleComplex* in,int size, doubleComplex* out1);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
#endif /*__LEV_H__*/
diff --git a/src/signalProcessing/includes/levin.h b/src/signalProcessing/includes/levin.h
index c39206f9..864fb076 100644
--- a/src/signalProcessing/includes/levin.h
+++ b/src/signalProcessing/includes/levin.h
@@ -13,13 +13,19 @@
#ifndef __LEVIN_H__
#define __LEVIN_H__
+#include "dynlib_signalprocessing.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
-void dlevina (int n, double* cov, int lCov, int cCov, double* la, double* sig, double* lb);
-
-void slevina (int n, float* cov, int lCov, int cCov, float* la, float* sig, float* lb);
+EXTERN_SIGPROC void dlevina (int n, double* cov, int lCov, int cCov, double* la, double* sig, double* lb);
+EXTERN_SIGPROC void slevina (int n, float* cov, int lCov, int cCov, float* la, float* sig, float* lb);
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
#endif /*__LEVIN_H__*/
diff --git a/src/signalProcessing/includes/lpc2cep.h b/src/signalProcessing/includes/lpc2cep.h
index 31484d2d..bfb3a357 100644
--- a/src/signalProcessing/includes/lpc2cep.h
+++ b/src/signalProcessing/includes/lpc2cep.h
@@ -13,6 +13,7 @@
#ifndef __LPC2CEP_H__
#define __LPC2CEP_H__
+#include "dynlib_signalprocessing.h"
#include "floatComplex.h"
#include "doubleComplex.h"
@@ -23,13 +24,21 @@
rows(or columns)
*/
-void slpc2cepa(float* in, int size, float* out);
+#ifdef __cplusplus
+extern "C" {
+#endif
-void dlpc2cepa(double* in, int size, double* out);
+EXTERN_SIGPROC void slpc2cepa(float* in, int size, float* out);
-void clpc2cepa(floatComplex* in, int size, floatComplex* out);
+EXTERN_SIGPROC void dlpc2cepa(double* in, int size, double* out);
-void zlpc2cepa(doubleComplex* in, int size, doubleComplex* out);
+EXTERN_SIGPROC void clpc2cepa(floatComplex* in, int size, floatComplex* out);
+
+EXTERN_SIGPROC void zlpc2cepa(doubleComplex* in, int size, doubleComplex* out);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
#endif /*__LPC2CEP_H__*/
diff --git a/src/signalProcessing/lev/cleva.c b/src/signalProcessing/lev/cleva.c
index 3390505c..96a36d12 100644
--- a/src/signalProcessing/lev/cleva.c
+++ b/src/signalProcessing/lev/cleva.c
@@ -45,7 +45,7 @@ floatComplex cleva(floatComplex* in,int size, floatComplex* ar, floatComplex* rc
floatComplex sigma2;
/* FIXME : malloc here */
- ak1=malloc((uint)size*sizeof(floatComplex));
+ ak1=(floatComplex*)malloc((unsigned int)size*sizeof(floatComplex));
/* initialize levinson's algorithm */
temp=crdivs(in[1],in[0]);
diff --git a/src/signalProcessing/lev/cleva2.c b/src/signalProcessing/lev/cleva2.c
index e5eb57cf..190484a5 100644
--- a/src/signalProcessing/lev/cleva2.c
+++ b/src/signalProcessing/lev/cleva2.c
@@ -45,7 +45,7 @@ floatComplex cleva2(floatComplex* in,int size, floatComplex* ar){
floatComplex sigma2;
/* FIXME : malloc here */
- ak1=malloc((uint)size*sizeof(floatComplex));
+ ak1=(floatComplex*)malloc((unsigned int)size*sizeof(floatComplex));
/* initialize levinson's algorithm */
temp=crdivs(in[1],in[0]);
diff --git a/src/signalProcessing/lev/dleva.c b/src/signalProcessing/lev/dleva.c
index fea5f867..49f757c8 100644
--- a/src/signalProcessing/lev/dleva.c
+++ b/src/signalProcessing/lev/dleva.c
@@ -39,7 +39,7 @@ double dleva(double* in,int size, double* ar, double* rc){
double sigma2;
/* FIXME : malloc here */
- ak1=malloc((uint)size*sizeof(double));
+ ak1=(double*)malloc((unsigned int)size*sizeof(double));
/* initialize levinson's algorithm */
ar[0]=-in[1]/in[0];
diff --git a/src/signalProcessing/lev/dleva2.c b/src/signalProcessing/lev/dleva2.c
index 34a304a6..8b2ab8ae 100644
--- a/src/signalProcessing/lev/dleva2.c
+++ b/src/signalProcessing/lev/dleva2.c
@@ -39,7 +39,7 @@ double dleva2(double* in,int size, double* ar){
double sigma2;
/* FIXME : malloc here */
- ak1=malloc((uint)size*sizeof(double));
+ ak1=(double*)malloc((unsigned int)size*sizeof(double));
/* initialize levinson's algorithm */
ar[0]=-in[1]/in[0];
diff --git a/src/signalProcessing/lev/sleva.c b/src/signalProcessing/lev/sleva.c
index 4d3ec0fb..c1d1ab2b 100644
--- a/src/signalProcessing/lev/sleva.c
+++ b/src/signalProcessing/lev/sleva.c
@@ -39,7 +39,7 @@ float sleva(float* in,int size, float* ar, float* rc){
float sigma2;
/* FIXME : malloc here */
- ak1=malloc((uint)size*sizeof(float));
+ ak1=(float*)malloc((unsigned int)size*sizeof(float));
/* initialize levinson's algorithm */
ar[0]=-in[1]/in[0];
diff --git a/src/signalProcessing/lev/sleva2.c b/src/signalProcessing/lev/sleva2.c
index ee70c68e..06d73405 100644
--- a/src/signalProcessing/lev/sleva2.c
+++ b/src/signalProcessing/lev/sleva2.c
@@ -39,7 +39,7 @@ float sleva2(float* in,int size, float* ar){
float sigma2;
/* FIXME : malloc here */
- ak1=malloc((uint)size*sizeof(float));
+ ak1=(float*)malloc((unsigned int)size*sizeof(float));
/* initialize levinson's algorithm */
ar[0]=-in[1]/in[0];
diff --git a/src/signalProcessing/lev/zleva.c b/src/signalProcessing/lev/zleva.c
index e33d0eae..053e7b4a 100644
--- a/src/signalProcessing/lev/zleva.c
+++ b/src/signalProcessing/lev/zleva.c
@@ -44,7 +44,7 @@ doubleComplex zleva(doubleComplex* in,int size, doubleComplex* ar, doubleComplex
doubleComplex sigma2;
/* FIXME : malloc here */
- ak1=malloc((uint)size*sizeof(doubleComplex));
+ ak1=(doubleComplex*)malloc((unsigned int)size*sizeof(doubleComplex));
/* initialize levinson's algorithm */
temp=zrdivs(in[1],in[0]);
diff --git a/src/signalProcessing/lev/zleva2.c b/src/signalProcessing/lev/zleva2.c
index 4145a9e8..0f445ce2 100644
--- a/src/signalProcessing/lev/zleva2.c
+++ b/src/signalProcessing/lev/zleva2.c
@@ -44,7 +44,7 @@ doubleComplex zleva2(doubleComplex* in,int size, doubleComplex* ar){
doubleComplex sigma2;
/* FIXME : malloc here */
- ak1=malloc((uint)size*sizeof(doubleComplex));
+ ak1=(doubleComplex*)malloc((unsigned int)size*sizeof(doubleComplex));
/* initialize levinson's algorithm */
temp=zrdivs(in[1],in[0]);
diff --git a/src/signalProcessing/levin/dlevina.c b/src/signalProcessing/levin/dlevina.c
index d19efbc6..48388689 100644
--- a/src/signalProcessing/levin/dlevina.c
+++ b/src/signalProcessing/levin/dlevina.c
@@ -85,14 +85,14 @@ void dlevina (int n, double* cov, int lCov, int cCov, double* la, double* sig, d
/* FIXME : malloc here */
- tmp1=malloc((unsigned int)((n+1)*cCov*cCov)*sizeof(double));
- tmp2=malloc((unsigned int)((n+1)*cCov*cCov)*sizeof(double));
- sig1=malloc((unsigned int)(cCov*cCov)*sizeof(double));
- gam=malloc((unsigned int)(cCov*cCov)*sizeof(double));
- R1=malloc((unsigned int)(n*cCov*cCov)*sizeof(double));
- R2=malloc((unsigned int)(n*cCov*cCov)*sizeof(double));
- R3=malloc((unsigned int)(n*cCov*cCov)*sizeof(double));
- R4=malloc((unsigned int)(n*cCov*cCov)*sizeof(double));
+ tmp1=(double *)malloc((unsigned int)((n+1)*cCov*cCov)*sizeof(double));
+ tmp2=(double *)malloc((unsigned int)((n+1)*cCov*cCov)*sizeof(double));
+ sig1=(double *)malloc((unsigned int)(cCov*cCov)*sizeof(double));
+ gam=(double *)malloc((unsigned int)(cCov*cCov)*sizeof(double));
+ R1=(double *)malloc((unsigned int)(n*cCov*cCov)*sizeof(double));
+ R2=(double *)malloc((unsigned int)(n*cCov*cCov)*sizeof(double));
+ R3=(double *)malloc((unsigned int)(n*cCov*cCov)*sizeof(double));
+ R4=(double *)malloc((unsigned int)(n*cCov*cCov)*sizeof(double));
diff --git a/src/signalProcessing/levin/slevina.c b/src/signalProcessing/levin/slevina.c
index 8d3ef1d2..cafc21be 100644
--- a/src/signalProcessing/levin/slevina.c
+++ b/src/signalProcessing/levin/slevina.c
@@ -85,14 +85,14 @@ void slevina (int n, float* cov, int lCov, int cCov, float* la, float* sig, floa
/* FIXME : malloc here */
- tmp1=malloc((unsigned int)((n+1)*cCov*cCov)*sizeof(float));
- tmp2=malloc((unsigned int)((n+1)*cCov*cCov)*sizeof(float));
- sig1=malloc((unsigned int)(cCov*cCov)*sizeof(float));
- gam=malloc((unsigned int)(cCov*cCov)*sizeof(float));
- R1=malloc((unsigned int)(n*cCov*cCov)*sizeof(float));
- R2=malloc((unsigned int)(n*cCov*cCov)*sizeof(float));
- R3=malloc((unsigned int)(n*cCov*cCov)*sizeof(float));
- R4=malloc((unsigned int)(n*cCov*cCov)*sizeof(float));
+ tmp1=(float*)malloc((unsigned int)((n+1)*cCov*cCov)*sizeof(float));
+ tmp2=(float*)malloc((unsigned int)((n+1)*cCov*cCov)*sizeof(float));
+ sig1=(float*)malloc((unsigned int)(cCov*cCov)*sizeof(float));
+ gam=(float*)malloc((unsigned int)(cCov*cCov)*sizeof(float));
+ R1=(float*)malloc((unsigned int)(n*cCov*cCov)*sizeof(float));
+ R2=(float*)malloc((unsigned int)(n*cCov*cCov)*sizeof(float));
+ R3=(float*)malloc((unsigned int)(n*cCov*cCov)*sizeof(float));
+ R4=(float*)malloc((unsigned int)(n*cCov*cCov)*sizeof(float));
diff --git a/src/signalProcessing/lpc2cep/slpc2cepa.c b/src/signalProcessing/lpc2cep/slpc2cepa.c
index dc974a09..97236fc9 100644
--- a/src/signalProcessing/lpc2cep/slpc2cepa.c
+++ b/src/signalProcessing/lpc2cep/slpc2cepa.c
@@ -21,7 +21,7 @@ void slpc2cepa(float *in, int size, float*out){
floatComplex* inCpx;
/* Copy in in a FloatComplex*/
- inCpx=malloc((unsigned int)(size*size)*sizeof(floatComplex));
+ inCpx=(floatComplex*)malloc((unsigned int)(size*size)*sizeof(floatComplex));
for (i=0;i<size*size;i++)
inCpx[i]=FloatComplex(in[i],0);
diff --git a/src/signalProcessing/signalProcessing.vcproj b/src/signalProcessing/signalProcessing.vcproj
new file mode 100644
index 00000000..2b4893b1
--- /dev/null
+++ b/src/signalProcessing/signalProcessing.vcproj
@@ -0,0 +1,1647 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9,00"
+ Name="signalProcessing"
+ ProjectGUID="{F7E8DF1B-CC81-4B2A-B5F0-1A247BE59CC4}"
+ RootNamespace="signalProcessing"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="196613"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="includes;../type;../operations/includes;../matrixOperations/includes;../auxiliaryFunctions/includes;../includes;../elementaryFunctions/includes"
+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;SIGNALPROCESSING_EXPORTS"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(SolutionDir)bin\$(ProjectName).dll"
+ LinkIncremental="2"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ ImportLibrary="$(SolutionDir)bin\$(ProjectName).lib"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="1"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="2"
+ EnableIntrinsicFunctions="true"
+ AdditionalIncludeDirectories="includes;../type;../operations/includes;../matrixOperations/includes;../auxiliaryFunctions/includes;../includes;../elementaryFunctions/includes"
+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;SIGNALPROCESSING_EXPORTS"
+ RuntimeLibrary="2"
+ EnableFunctionLevelLinking="true"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(SolutionDir)bin\$(ProjectName).dll"
+ LinkIncremental="1"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ ImportLibrary="$(SolutionDir)bin\$(ProjectName).lib"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <Filter
+ Name="cepstrum"
+ >
+ </Filter>
+ <Filter
+ Name="conv"
+ >
+ <File
+ RelativePath=".\conv\cconva.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\conv\dconva.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\conv\Makefile.am"
+ >
+ </File>
+ <File
+ RelativePath=".\conv\sconva.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\conv\zconva.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <Filter
+ Name="conv2d"
+ >
+ <File
+ RelativePath=".\conv2d\cconv2da.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\conv2d\dconv2da.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\conv2d\Makefile.am"
+ >
+ </File>
+ <File
+ RelativePath=".\conv2d\sconv2da.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\conv2d\zconv2da.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <Filter
+ Name="crossCorr"
+ >
+ <File
+ RelativePath=".\crossCorr\ccrossCorra.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\crossCorr\dcrossCorra.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\crossCorr\Makefile.am"
+ >
+ </File>
+ <File
+ RelativePath=".\crossCorr\scrossCorra.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\crossCorr\zcrossCorra.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <Filter
+ Name="fft"
+ >
+ <File
+ RelativePath=".\fft\cfftma.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fft\dfft2.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fft\dfftbi.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fft\dfftma.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fft\dfftmx.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fft\fft842.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fft\Makefile.am"
+ >
+ </File>
+ <File
+ RelativePath=".\fft\r2tx.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fft\r4tx.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fft\r8tx.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fft\sfftma.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fft\zfftma.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <Filter
+ Name="fftshift"
+ >
+ <File
+ RelativePath=".\fftshift\ccolumnfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\cfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\crowfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\dcolumnfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\dfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\drowfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\Makefile.am"
+ >
+ </File>
+ <File
+ RelativePath=".\fftshift\scolumnfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\sfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\srowfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\zcolumnfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\zfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\fftshift\zrowfftshifta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <Filter
+ Name="hilbert"
+ >
+ <File
+ RelativePath=".\hilbert\dhilberta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\hilbert\dhilberts.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\hilbert\Makefile.am"
+ >
+ </File>
+ <File
+ RelativePath=".\hilbert\shilberta.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\hilbert\shilberts.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <Filter
+ Name="ifft"
+ >
+ <File
+ RelativePath=".\ifft\cifftma.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\diffbi_lavraie.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\difft2.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\difftbi.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\difftma.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\difftmx.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\ifft842.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\ir2tx.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\ir4tx.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\ir8tx.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\Makefile.am"
+ >
+ </File>
+ <File
+ RelativePath=".\ifft\sifftma.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\ifft\zifftma.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <Filter
+ Name="lev"
+ >
+ <File
+ RelativePath=".\lev\cleva.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\lev\cleva2.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\lev\dleva.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\lev\dleva2.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\lev\Makefile.am"
+ >
+ </File>
+ <File
+ RelativePath=".\lev\sleva.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\lev\sleva2.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\lev\zleva.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\lev\zleva2.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <Filter
+ Name="lpc2cep"
+ >
+ <File
+ RelativePath=".\lpc2cep\clpc2cepa.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\lpc2cep\dlpc2cepa.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\lpc2cep\Makefile.am"
+ >
+ </File>
+ <File
+ RelativePath=".\lpc2cep\slpc2cepa.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\lpc2cep\zlpc2cepa.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <Filter
+ Name="levin"
+ >
+ <File
+ RelativePath=".\levin\dlevina.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\levin\levinUtils.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath=".\levin\Makefile.am"
+ >
+ </File>
+ <File
+ RelativePath=".\levin\slevina.c"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ CompileAs="2"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+ >
+ <File
+ RelativePath=".\includes\conv.h"
+ >
+ </File>
+ <File
+ RelativePath=".\includes\conv2d.h"
+ >
+ </File>
+ <File
+ RelativePath=".\includes\crossCorr.h"
+ >
+ </File>
+ <File
+ RelativePath=".\includes\dynlib_signalprocessing.h"
+ >
+ </File>
+ <File
+ RelativePath=".\includes\fft.h"
+ >
+ </File>
+ <File
+ RelativePath=".\includes\fftshift.h"
+ >
+ </File>
+ <File
+ RelativePath=".\includes\hilbert.h"
+ >
+ </File>
+ <File
+ RelativePath=".\includes\ifft.h"
+ >
+ </File>
+ <File
+ RelativePath=".\includes\lev.h"
+ >
+ </File>
+ <File
+ RelativePath=".\includes\levin.h"
+ >
+ </File>
+ <File
+ RelativePath=".\includes\lpc2cep.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Resource Files"
+ Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+ UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+ >
+ </Filter>
+ <File
+ RelativePath="..\..\bin\blasplus.lib"
+ >
+ </File>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>