From 277d1edfa17bf3719d90ddbac8e31f6181e952c3 Mon Sep 17 00:00:00 2001
From: Sandeep Gupta
Date: Sun, 18 Jun 2017 23:55:40 +0530
Subject: First commit

---
 src/c/signalProcessing/interfaces/int_xcorr.h | 176 ++++++++++++++++++++++++++
 1 file changed, 176 insertions(+)
 create mode 100644 src/c/signalProcessing/interfaces/int_xcorr.h

(limited to 'src/c/signalProcessing/interfaces/int_xcorr.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