From db464f35f5a10b58d9ed1085e0b462689adee583 Mon Sep 17 00:00:00 2001
From: Siddhesh Wani
Date: Mon, 25 May 2015 14:46:31 +0530
Subject: Original Version

---
 src/c/signalProcessing/interfaces/int_cepstrum.h |  34 +++++
 src/c/signalProcessing/interfaces/int_convol.h   | 153 ++++++++++++++++++++
 src/c/signalProcessing/interfaces/int_fft.h      |  71 +++++++++
 src/c/signalProcessing/interfaces/int_fftshift.h |  51 +++++++
 src/c/signalProcessing/interfaces/int_hilbert.h  |  26 ++++
 src/c/signalProcessing/interfaces/int_ifft.h     |  52 +++++++
 src/c/signalProcessing/interfaces/int_lev.h      |  53 +++++++
 src/c/signalProcessing/interfaces/int_levin.h    |  60 ++++++++
 src/c/signalProcessing/interfaces/int_lpc2cep.h  |  27 ++++
 src/c/signalProcessing/interfaces/int_xcorr.h    | 176 +++++++++++++++++++++++
 10 files changed, 703 insertions(+)
 create mode 100644 src/c/signalProcessing/interfaces/int_cepstrum.h
 create mode 100644 src/c/signalProcessing/interfaces/int_convol.h
 create mode 100644 src/c/signalProcessing/interfaces/int_fft.h
 create mode 100644 src/c/signalProcessing/interfaces/int_fftshift.h
 create mode 100644 src/c/signalProcessing/interfaces/int_hilbert.h
 create mode 100644 src/c/signalProcessing/interfaces/int_ifft.h
 create mode 100644 src/c/signalProcessing/interfaces/int_lev.h
 create mode 100644 src/c/signalProcessing/interfaces/int_levin.h
 create mode 100644 src/c/signalProcessing/interfaces/int_lpc2cep.h
 create mode 100644 src/c/signalProcessing/interfaces/int_xcorr.h

(limited to 'src/c/signalProcessing/interfaces')

diff --git a/src/c/signalProcessing/interfaces/int_cepstrum.h b/src/c/signalProcessing/interfaces/int_cepstrum.h
new file mode 100644
index 00000000..af1991ba
--- /dev/null
+++ b/src/c/signalProcessing/interfaces/int_cepstrum.h
@@ -0,0 +1,34 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ * 
+ * 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
+ *
+ */
+
+/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */
+
+#ifndef __INT_CEPSTRUM_H__
+#define __INT_CEPSTRUM_H__
+
+#define s0cepstrums0(in)			scepstrums(in)
+
+#define d0cepstrumd0(in)			dcepstrums(in)
+
+#define c0cepstrumc0(in)			ccepstrums(in)
+
+#define z0cepstrumz0(in)			zcepstrums(in)
+
+#define s2cepstrums2(in,size,out)		scepstruma(in, size[0]*size[1], out)
+
+#define d2cepstrumd2(in,size,out)		dcepstruma(in, size[0]*size[1], out)
+
+#define c2cepstrumc2(in,size,out)		ccepstruma(in, size[0]*size[1], out)
+
+#define z2cepstrumz2(in,size,out)		zcepstruma(in, size[0]*size[1], out)
+
+#endif /* !__INT_CEPSTRUM_H__ */
diff --git a/src/c/signalProcessing/interfaces/int_convol.h b/src/c/signalProcessing/interfaces/int_convol.h
new file mode 100644
index 00000000..80ec65b1
--- /dev/null
+++ b/src/c/signalProcessing/interfaces/int_convol.h
@@ -0,0 +1,153 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ * 
+ * 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
+ *
+ */
+
+/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */
+
+#ifndef __INT_CONVOL_H__
+#define __INT_CONVOL_H__
+
+
+/* Scalar - Scalar */
+
+#define s0s0convols0(in1,in2)			in1*in2
+
+#define d0d0convold0(in1,in2)			in1*in2
+
+#define c0c0convolc0(in1,in2)			cmuls(in1,in2)
+
+#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<size[0]*size[1];i++) out[i]=in1*in2[i];\
+									}										
+
+#define d0d2convold2(in1,in2,size,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=in1*in2[i];\
+									}
+
+#define c0c2convolc2(in1,in2,size,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=cmuls(in1,in2[i]);\
+									}
+
+#define z0z2convolz2(in1,in2,size,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=zmuls(in1,in2[i]);\
+									}
+
+#define s0c2convolc2(in1,in2,size,out)			c0c2convolc2(FloatComplex(in1,0),in2,size,out)
+
+#define d0z2convolz2(in1,in2,size,out)			z0z2convolz2(DoubleComplex(in1,0),in2,size,out)
+
+#define c0s2convolc2(in1,in2,size,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=cmuls(in1,FloatComplex(in2[i],0));\
+									}
+
+#define z0d2convolz2(in1,in2,size,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=zmuls(in1,DoubleComplex(in2[i],0));\
+									}
+
+/* Matrix - Scalar */
+
+#define s2s0convols2(in1,size,in2,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=in1[i]*in2;\
+									}
+										
+#define d2d0convold2(in1,size,in2,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=in1[i]*in2;\
+									}	
+
+#define c2c0convolc2(in1,size,in2,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=cmuls(in1[i],in2);\
+									}	
+
+#define z2z0convolz2(in1,size,in2,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=zmuls(in1[i],in2);\
+									}	
+
+#define s2c0convolc2(in1,size,in2,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=cmuls(FloatComplex(in1[i],0),in2);\
+									}	
+
+#define d2z0convolz2(in1,size,in2,out)			{int i;\
+									for (i=0;i<size[0]*size[1];i++) out[i]=zmuls(DoubleComplex(in1[i],0),in2);\
+									}	
+
+#define c2s0convolc2(in1,size,in2,out)			c2c0convolc2(in1,size,FloatComplex(in2,0),out)	
+
+#define z2d0convolz2(in1,size,in2,out)			z2z0convolz2(in1,size,DoubleComplex(in2,0),out)	
+
+
+/* Matrix - Matrix */
+
+#define s2s2convols2(in1,size1,in2,size2,out)				if(((size1[0]==1)||(size1[1]==1))&&((size2[0]==1)||(size2[1]==1))){\
+												sconva(in1,size1[0]*size1[1],in2,size2[0]*size2[1],out);\
+											}else{\
+												sconv2da(in1,size1[0],size1[1],in2,size2[0],size2[1],out);\
+											}
+
+#define d2d2convold2(in1,size1,in2,size2,out)				if(((size1[0]==1)||(size1[1]==1))&&((size2[0]==1)||(size2[1]==1))){\
+												dconva(in1,size1[0]*size1[1],in2,size2[0]*size2[1],out);\
+											}else{\
+												dconv2da(in1,size1[0],size1[1],in2,size2[0],size2[1],out);\
+											}
+
+#define c2c2convolc2(in1,size1,in2,size2,out)				if(((size1[0]==1)||(size1[1]==1))&&((size2[0]==1)||(size2[1]==1))){\
+												cconva(in1,size1[0]*size1[1],in2,size2[0]*size2[1],out);\
+											}else{\
+												cconv2da(in1,size1[0],size1[1],in2,size2[0],size2[1],out);\
+											}
+
+#define z2z2convolz2(in1,size1,in2,size2,out)				if(((size1[0]==1)||(size1[1]==1))&&((size2[0]==1)||(size2[1]==1))){\
+												zconva(in1,size1[0]*size1[1],in2,size2[0]*size2[1],out);\
+											}else{\
+												zconv2da(in1,size1[0],size1[1],in2,size2[0],size2[1],out);\
+											}
+
+#define s2c2convolc2(in1,size1,in2,size2,out)				{float* temp;\
+											temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\
+											sfilla(temp,size1[0],size1[1],0);\
+											c2c2convolc2(FloatComplexMatrix(in1,temp,size1[0]*size1[1]),size1,in2,size2,out);\
+											free(temp);\
+											}
+											
+#define d2z2convolz2(in1,size1,in2,size2,out)				{double* temp;\
+											temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\
+											dfilla(temp,size1[0],size1[1],0);\
+											z2z2convolz2(DoubleComplexMatrix(in1,temp,size1[0]*size1[1]),size1,in2,size2,out);\
+											free(temp);\
+											}
+
+#define c2s2convolc2(in1,size1,in2,size2,out)				{float* temp;\
+											temp=malloc((uint)(size2[0]*size2[1])*sizeof(float));\
+											sfilla(temp,size2[0],size2[1],0);\
+											c2c2convolc2(in1,size1,FloatComplexMatrix(in2,temp,size2[0]*size2[1]),size2,out);\
+											free(temp);\
+											}
+
+
+#define z2d2convolz2(in1,size1,in2,size2,out)				{double* temp;\
+											temp=malloc((uint)(size2[0]*size2[1])*sizeof(double));\
+											dfilla(temp,size2[0],size2[1],0);\
+											z2z2convolz2(in1,size1,DoubleComplexMatrix(in2,temp,size2[0]*size2[1]),size2,out);\
+											free(temp);\
+											}
+
+#endif /* !__INT_CONVOL_H__ */
diff --git a/src/c/signalProcessing/interfaces/int_fft.h b/src/c/signalProcessing/interfaces/int_fft.h
new file mode 100644
index 00000000..ea2c69b9
--- /dev/null
+++ b/src/c/signalProcessing/interfaces/int_fft.h
@@ -0,0 +1,71 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ * 
+ * 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
+ *
+ */
+
+/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */
+
+#ifndef __INT_FFT_H__
+#define __INT_FFT_H__
+
+#define s0ffts0(in)			sffts(in)
+
+#define d0fftd0(in)			dffts(in)
+
+#define c0fftc0(in)			cffts(in)
+
+#define z0fftz0(in)			zffts(in)
+
+
+#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 s0s0ffts0(in1,in2)			(in2==-1.0f) ? s0ffts0(in1) : s0iffts0(in1)
+
+#define d0d0fftd0(in1,in2)			(in2==-1.0) ? d0fftd0(in1) : d0ifftd0(in1)
+
+#define c0s0fftc0(in1,in2)			(in2==-1.0f) ? c0fftc0(in1) : c0ifftc0(in1)
+
+#define z0d0fftz0(in1,in2)			(in2==-1.0) ? z0fftz0(in1) : z0ifftz0(in1)
+
+#define s2s0ffts2(in1,size,in2,out)		(in2==-1.0f) ? s2ffts2(in1,size,out) : s2iffts2(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.0f) ? c2fftc2(in1,size,out) : c2ifftc2(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/c/signalProcessing/interfaces/int_fftshift.h b/src/c/signalProcessing/interfaces/int_fftshift.h
new file mode 100644
index 00000000..d490657e
--- /dev/null
+++ b/src/c/signalProcessing/interfaces/int_fftshift.h
@@ -0,0 +1,51 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ * 
+ * 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
+ *
+ */
+
+/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */
+
+#ifndef __INT_FFTSHIFT_H__
+#define __INT_FFTSHIFT_H__
+
+#define s0fftshifts0(in)			sfftshifts(in)
+
+#define d0fftshiftd0(in)			dfftshifts(in)
+
+#define c0fftshiftc0(in)			cfftshifts(in)
+
+#define z0fftshiftz0(in)			zfftshifts(in)
+
+#define s2fftshifts2(in,size,out)		sfftshifta(in, size[0], size[1], out)
+
+#define d2fftshiftd2(in,size,out)		dfftshifta(in, size[0], size[1], out)
+
+#define c2fftshiftc2(in,size,out)		cfftshifta(in, size[0], size[1], out)
+
+#define z2fftshiftz2(in,size,out)		zfftshifta(in, size[0], size[1], out)
+
+
+#define s0s0fftshifts0(in1,in2)			sfftshifts(in1)
+
+#define d0d0fftshiftd0(in1,in2)			dfftshifts(in1)
+
+#define c0s0fftshiftc0(in1,in2)			cfftshifts(in1)
+
+#define z0d0fftshiftz0(in1,in2)			zfftshifts(in1)
+
+#define s2s0fftshifts2(in,size,in2,out)		(in2==1) ? srowfftshifta(in, size[0], size[1], out) : scolumnfftshifta(in, size[0], size[1], out)
+
+#define d2d0fftshiftd2(in,size,in2,out)		(in2==1) ? drowfftshifta(in, size[0], size[1], out) : dcolumnfftshifta(in, size[0], size[1], out)
+
+#define c2s0fftshiftc2(in,size,in2,out)		(in2==1) ? crowfftshifta(in, size[0], size[1], out) : ccolumnfftshifta(in, size[0], size[1], out)
+
+#define z2d0fftshiftz2(in,size,in2,out)		(in2==1) ? zrowfftshifta(in, size[0], size[1], out) : zcolumnfftshifta(in, size[0], size[1], out)
+
+#endif /* !__INT_FFTSHIFT_H__ */
diff --git a/src/c/signalProcessing/interfaces/int_hilbert.h b/src/c/signalProcessing/interfaces/int_hilbert.h
new file mode 100644
index 00000000..c4c9c7e9
--- /dev/null
+++ b/src/c/signalProcessing/interfaces/int_hilbert.h
@@ -0,0 +1,26 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ * 
+ * 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
+ *
+ */
+
+/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */
+
+#ifndef __INT_HILBERT_H__
+#define __INT_HILBERT_H__
+
+#define s0hilberts0(in)			shilberts(in)
+
+#define d0hilbertd0(in)			dhilberts(in)
+
+#define s2hilbertc2(in,size,out)		shilberta(in, size[0], size[1], out)
+
+#define d2hilbertz2(in,size,out)		dhilberta(in, size[0], size[1], out)
+
+#endif /* !__INT_HILBERT_H__ */
diff --git a/src/c/signalProcessing/interfaces/int_ifft.h b/src/c/signalProcessing/interfaces/int_ifft.h
new file mode 100644
index 00000000..78e63753
--- /dev/null
+++ b/src/c/signalProcessing/interfaces/int_ifft.h
@@ -0,0 +1,52 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ * 
+ * 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
+ *
+ */
+
+/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */
+
+#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)
+
+#define c0ifftc0(in)			ciffts(in)
+
+#define z0ifftz0(in)			ziffts(in)
+
+#define s2iffts2(in,size,out)		sifftma(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__ */
diff --git a/src/c/signalProcessing/interfaces/int_lev.h b/src/c/signalProcessing/interfaces/int_lev.h
new file mode 100644
index 00000000..f15f9ea0
--- /dev/null
+++ b/src/c/signalProcessing/interfaces/int_lev.h
@@ -0,0 +1,53 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ * 
+ * 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
+ *
+ */
+
+/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */
+
+#ifndef __INT_LEV_H__
+#define __INT_LEV_H__
+
+#define s2levs2(in,size,out)				{float sigma2;\
+								sigma2=sleva2(in,size[0]*size[1],out);\
+								}	
+			
+#define s2levs2s0(in,size,out)			sleva2(in,size[0]*size[1],out);
+			
+#define s2levs2s0s2(in,size,out1,out2)		sleva(in,size[0]*size[1],out1,out2);
+
+
+#define d2levd2(in,size,out)				{double sigma2;\
+								sigma2=dleva2(in,size[0]*size[1],out);\
+								}
+			
+#define d2levd2d0(in,size,out)			dleva2(in,size[0]*size[1],out);
+			
+#define d2levd2d0d2(in,size,out1,out2)		dleva(in,size[0]*size[1],out1,out2);
+
+
+#define c2levc2(in,size,out)				{floatComplex sigma2;\
+								sigma2=cleva2(in,size[0]*size[1],out);\
+								}
+			
+#define c2levc2c0(in,size,out)			cleva2(in,size[0]*size[1],out);
+			
+#define c2levc2c0c2(in,size,out1,out2)		cleva(in,size[0]*size[1],out1,out2);
+
+
+#define z2levz2(in,size,out)				{doubleComplex sigma2;\
+								sigma2=zleva2(in,size[0]*size[1],out);\
+								}
+			
+#define z2levz2z0(in,size,out)			zleva2(in,size[0]*size[1],out);
+			
+#define z2levz2z0z2(in,size,out1,out2)		zleva(in,size[0]*size[1],out1,out2);
+
+#endif /* !__INT_LEV_H__ */
diff --git a/src/c/signalProcessing/interfaces/int_levin.h b/src/c/signalProcessing/interfaces/int_levin.h
new file mode 100644
index 00000000..b48b5785
--- /dev/null
+++ b/src/c/signalProcessing/interfaces/int_levin.h
@@ -0,0 +1,60 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ * 
+ * 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
+ *
+ */
+
+/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */
+
+#ifndef __INT_LEVIN_H__
+#define __INT_LEVIN_H__
+
+/* FIXME : many malloc here */
+		
+#define s0s2levins2(in1,in2,size,out1,out2)		{float* out2;\
+									float* out3;\
+									out2 = malloc((uint)*(size[1]*size[1]*in1)*sizeof(float));\
+									out3 = malloc((uint)*(size[1]*size[1]*in1*(in1+1))*sizeof(float));\
+									slevina (in1, in2, size[0], size[1], out1, out2, out3);\
+									free(out3);\
+									free(out2);\
+									}
+
+
+#define s0s2levins2(in1,in2,size,out1,out2)		{double* out2;\
+									double* out3;\
+									out2 = malloc((uint)*(size[1]*size[1]*in1)*sizeof(double));\
+									out3 = malloc((uint)*(size[1]*size[1]*in1*(in1+1))*sizeof(double));\
+									slevina (in1, in2, size[0], size[1], out1, out2, out3);\
+									free(out3);\
+									free(out2);\
+									}
+
+
+
+#define s0s2levins2s2(in1,in2,size,out1,out2)		{float* out3;\
+									out3 = malloc((uint)*(size[1]*size[1]*in1*(in1+1))*sizeof(float));\
+									slevina (in1, in2, size[0], size[1], out1, out2, out3);\
+									free(out3);\
+									}
+
+#define d0d2levind2d2(in1,in2,size,out1,out2)		{double* out3;\
+									out3 = malloc((uint)*(size[1]*size[1]*in1*(in1+1))*sizeof(double));\
+									dlevina (in1, in2, size[0], size[1], out1, out2, out3);\
+									free(out3);\
+									}
+
+
+
+#define s0s2levins2s2s2(in1,in2,size,out1,out2,out3)		slevina (in1, in2, size[0], size[1], out1, out2, out3);
+
+#define d0d2levind2d2d2(in1,in2,size,out1,out2,out3)		dlevina (in1, in2, size[0], size[1], out1, out2, out3);
+
+
+#endif /* !__INT_LEVIN_H__ */
diff --git a/src/c/signalProcessing/interfaces/int_lpc2cep.h b/src/c/signalProcessing/interfaces/int_lpc2cep.h
new file mode 100644
index 00000000..6e6e719f
--- /dev/null
+++ b/src/c/signalProcessing/interfaces/int_lpc2cep.h
@@ -0,0 +1,27 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ * 
+ * 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
+ *
+ */
+
+/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */
+
+#ifndef __INT_LPC2CEP_H__
+#define __INT_LPC2CEP_H__
+
+
+#define s2lpc2ceps2(in,size,out)		slpc2cepa(in, size[0]*size[1], out)
+
+#define d2lpc2cepd2(in,size,out)		dlpc2cepa(in, size[0]*size[1], out)
+
+#define c2lpc2cepc2(in,size,out)		clpc2cepa(in, size[0]*size[1], out)
+
+#define z2lpc2cepz2(in,size,out)		zlpc2cepa(in, size[0]*size[1], out)
+
+#endif /* !__INT_LPC2CEP_H__ */
diff --git a/src/c/signalProcessing/interfaces/int_xcorr.h b/src/c/signalProcessing/interfaces/int_xcorr.h
new file mode 100644
index 00000000..50a99d74
--- /dev/null
+++ b/src/c/signalProcessing/interfaces/int_xcorr.h
@@ -0,0 +1,176 @@
+/*
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET
+ * 
+ * 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
+ *
+ */
+
+/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */
+
+#ifndef __INT_XCORR_H__
+#define __INT_XCORR_H__
+
+#define s0xcorrs0(in)			in*in
+
+#define d0xcorrd0(in)			in*in
+
+#define c0xcorrc0(in)			cmuls(in,cconjs(in))
+
+#define z0xcorrz0(in)			zmuls(in,zconjs(in))
+
+#define s2xcorrs2(in,size)		s2s2xcorrs2(in,size,in,size,out)
+
+#define d2xcorrd2(in,size)		d2d2xcorrd2(in,size,in,size,out)
+
+#define c2xcorrc2(in,size)		c2c2xcorrc2(in,size,in,size,out)
+
+#define z2xcorrz2(in,size)		z2z2xcorrz2(in,size,in,size,out)
+
+
+/* Scalar - Scalar */
+
+#define s0s0xcorrs0(in1,in2)			in1*in2
+
+#define d0d0xcorrd0(in1,in2)			in1*in2
+
+#define c0c0xcorrc0(in1,in2)			cmuls(in1,cconjs(in2))
+
+#define z0z0xcorrz0(in1,in2)			zmuls(in1,zconjs(in2))
+
+#define s0c0xcorrs0(in1,in2)			cmuls(FloatComplex(in1,0),cconjs(in2))
+
+#define d0z0xcorrd0(in1,in2)			zmuls(DoubleComplex(in1,0),zconjs(in2))
+
+#define c0s0xcorrc0(in1,in2)			cmuls(in1,FloatComplex(in2,0))
+
+#define z0d0xcorrz0(in1,in2)			zmuls(in1,DoubleComplex(in2,0))
+
+/* Scalar - Scalar*/
+
+#define s0s2xcorrs2(in1,in2,size,out) 		{int i;\
+								int mn=size[0]*size[1];\
+								for (i=1;i<=mn;i++) out[i]=in1*in2[mn-i];\
+								}
+
+#define d0d2xcorrd2(in1,in2,size,out) 		{int i;\
+								int mn=size[0]*size[1];\
+								for (i=1;i<=mn;i++) out[i]=in1*in2[mn-i];\
+								}
+
+#define c0c2xcorrc2(in1,in2,size,out) 		{int i;\
+								int mn=size[0]*size[1];\
+								for (i=1;i<=mn;i++) out[i]=cmuls(in1,cconjs(in2[mn-i]));\
+								}
+
+#define z0z2xcorrz2(in1,in2,size,out) 		{int i;\
+								int mn=size[0]*size[1];\
+								for (i=1;i<=mn;i++) out[i]=zmuls(in1,zconjs(in2[mn-i]));\
+								}
+								
+#define s0c2xcorrs2(in1,in2,size,out) 		{int i;\
+								int mn=size[0]*size[1];\
+								for (i=1;i<=mn;i++) out[i]=cmuls(FloatComplex(in1,0),cconjs(in2[mn-i]));\
+								}
+
+#define d0z2xcorrd2(in1,in2,size,out) 		{int i;\
+								int mn=size[0]*size[1];\
+								for (i=1;i<=mn;i++) out[i]=zmuls(DoubleComplex(in1,0),zconjs(in2[mn-i]));\
+								}
+
+#define c0s2xcorrc2(in1,in2,size,out) 		{int i;\
+								int mn=size[0]*size[1];\
+								for (i=1;i<=mn;i++) out[i]=cmuls(in1,FloatComplex(in2[mn-i],0));\
+								}
+
+#define z0d2xcorrz2(in1,in2,size,out) 		{int i;\
+								int mn=size[0]*size[1];\
+								for (i=1;i<=mn;i++) out[i]=zmuls(in1,DoubleComplex(in2[mn-i],0)));\
+								}
+
+
+
+
+
+/* Matrix - Scalar*/
+
+#define s2s0xcorrs2(in1,size,in2,out)		{int i;\
+								for (i=0;i<size[0]*size[1];i++) out[i]=in1[i]*in2;\
+								}	
+
+#define d2d0xcorrd2(in1,size,in2,out)		{int i;\
+								for (i=0;i<size[0]*size[1];i++) out[i]=in1[i]*in2;\
+								}	
+
+#define c2c0xcorrc2(in1,size,in2,out)		{int i;\
+								for (i=0;i<size[0]*size[1];i++) out[i]=cmuls(in1[i],cconjs(in2));\
+								}
+
+#define z2z0xcorrz2(in1,size,in2,out)		{int i;\
+								for (i=0;i<size[0]*size[1];i++) out[i]=zmuls(in1[i],zconjs(in2));\
+								}
+
+#define s2c0xcorrc2(in1,size,in2,out)		{int i;\
+								for (i=0;i<size[0]*size[1];i++) out[i]=in1[i]*in2;\
+								}	
+
+#define d2z0xcorrz2(in1,size,in2,out)		{int i;\
+								for (i=0;i<size[0]*size[1];i++) out[i]=in1[i]*in2;\
+								}	
+
+#define c2s0xcorrc2(in1,size,in2,out)		{int i;\
+								for (i=0;i<size[0]*size[1];i++) out[i]=cmuls(in1[i],FloatComplex(in2,0));\
+								}
+
+#define z2d0xcorrz2(in1,size,in2,out)		{int i;\
+								for (i=0;i<size[0]*size[1];i++) out[i]=zmuls(in1[i],DoubleComplex(in2,0));\
+								}
+
+
+
+/* Matrix - Matrix */
+
+#define s2s2xcorrs2(in1,size1,in2,size2,out)		scrossCorra(in1, size1[0], size1[1], in2, size2[0], size2[1], out)
+
+#define d2d2xcorrd2(in1,size1,in2,size2,out)		dcrossCorra(in1, size1[0], size1[1], in2, size2[0], size2[1], out)
+
+#define c2c2xcorrc2(in1,size1,in2,size2,out)		ccrossCorra(in1, size1[0], size1[1], in2, size2[0], size2[1], out)
+
+#define z2z2xcorrz2(in1,size1,in2,size2,out)		zcrossCorra(in1, size1[0], size1[1], in2, size2[0], size2[1], out)
+
+
+/*FIXME : malloc here*/
+#define s2c2xcorrc2(in1,size1,in2,size2,out)		{float* temp;\
+									temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\
+									sfilla(temp,size1[0],size1[1],0);\
+									c2c2xcorrc2(FloatComplex(in1,0,size1[0]*size1[1]),size1,in2,size2,out);\
+									free(temp);\
+									}
+
+#define d2z2xcorrz2(in1,size1,in2,size2,out)		{double* temp;\
+									temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\
+									dfilla(temp,size[0],size[1],0);\
+									z2z2xcorrz2(DoubleComplex(in1,0,size1[0]*size1[1]),size1,in2,size2,out);\
+									free(temp);\
+									}
+
+
+#define c2s2xcorrc2(in1,size1,in2,size2,out)		{float* temp;\
+									temp=malloc((uint)(size2[0]*size2[1])*sizeof(float));\
+									sfilla(temp,size2[0],size2[1],0);\
+									c2c2xcorrc2(in1,size1,FloatComplex(in2,0,size2[0]*size2[1]),size2,out);\
+									free(temp);\
+									}
+
+#define z2d2xcorrz2(in1,size1,in2,size2,out)		{double* temp;\
+									temp=malloc((uint)(size2[0]*size2[1])*sizeof(double));\
+									sfilla(temp,size2[0],size2[1],0);\
+									c2c2xcorrc2(in1,size1,DoubleComplex(in2,0,size2[0]*size2[1]),size2,out);\
+									free(temp);\
+									}
+
+#endif /* !__INT_XCORR_H__ */
-- 
cgit