summaryrefslogtreecommitdiff
path: root/src/auxiliaryFunctions/interfaces
diff options
context:
space:
mode:
Diffstat (limited to 'src/auxiliaryFunctions/interfaces')
-rw-r--r--src/auxiliaryFunctions/interfaces/int_find.h39
1 files changed, 21 insertions, 18 deletions
diff --git a/src/auxiliaryFunctions/interfaces/int_find.h b/src/auxiliaryFunctions/interfaces/int_find.h
index 78b326a1..7d620e6c 100644
--- a/src/auxiliaryFunctions/interfaces/int_find.h
+++ b/src/auxiliaryFunctions/interfaces/int_find.h
@@ -17,13 +17,13 @@
/* 1 input, 1 output */
-#define s0finds0(in) (in == 0) ? -1 : in
+#define s0finds0(in) (in == 0) ? -1 : 1
-#define d0findd0(in) (in == 0) ? -1 : in
+#define d0findd0(in) (in == 0) ? -1 : 1
+
+#define c0finds0(in) ((creals(in) == 0) && (cimags(in) == 0)) ? -1 : 1
-#define c0finds0(in) ((creals(in) == 0) && (cimags(in) == 0)) ? -1 : in
-
-#define z0findd0(in) ((zreals(in) == 0) && (zimags(in) == 0)) ? -1 : in
+#define z0findd0(in) ((zreals(in) == 0) && (zimags(in) == 0)) ? -1 : 1
#define s2finds2(in,size,out,sizeOut) sfinda(in, size[0]*size[1], out, sizeOut)
@@ -35,21 +35,22 @@
/* 1 input, 2 outputs */
-#define s0finds0s0(in,out1,out2) if (in==0) {out1=0;out2=0;}
+#define s0finds0s0(in,out2) *out2 = s0finds0(in);s0finds0(in)
+
+#define d0findd0d0(in,out2) *out2 = d0findd0(in);d0findd0(in)
-#define d0findd0d0(in,out1,out2) if (in==0) {out1=0;out2=0;}
+#define c0finds0s0(in,out2) if ((creals(in)==0) && (cimags(in)==0)) {out2=0;} else {out2=1;}
-#define c0finds0s0(in,out1,out2) if ((creals(in)==0) && (cimags(in)==0)) {out1=0;out2=0;}
+#define z0findd0d0(in,out2) if ((zreals(in)==0) && (zimags(in)==0)) {out2=0;} else {out2=1;}
-#define z0findd0d0(in,out1,out2) if ((zreals(in)==0) && (zimags(in)==0)) {out1=0;out2=0;}
-#define s2finds2s2(in,size,out1,out2) sfind2d(in,size[0],size[1],&out1,&out2)
+#define s2finds2s2(in,size,out1,sizeOut1,out2,sizeOut2) sfind2da(in,size[0],size[1],out1,sizeOut1,out2,sizeOut2)
-#define d2findd2d2(in,size,out1,out2) dfind2d(in,size[0],size[1],&out1,&out2)
+#define d2findd2d2(in,size,out1,sizeOut1,out2,sizeOut2) dfind2da(in,size[0],size[1],out1,sizeOut1,out2,sizeOut2)
-#define c2finds2s2(in,size,out1,out2) cfind2d(in,size[0],size[1],&out1,&out2)
+#define c2finds2s2(in,size,out1,sizeOut1,out2,sizeOut2) cfind2da(in,size[0],size[1],out1,sizeOut1,out2,sizeOut2)
-#define z2finds2s2(in,size,out1,out2) zfind2d(in,size[0],size[1],&out1,&out2)
+#define z2finds2s2(in,size,out1,sizeOut1,out2,sizeOut2) zfind2da(in,size[0],size[1],out1,sizeOut1,out2,sizeOut2)
/* 2 inputs, 1 output */
@@ -60,7 +61,7 @@
#define c0s0finds0(in1,in2) c0finds0(in1)
#define z0d0findd0(in1,in2) z0findd0(in1)
-
+
#define s2s0finds2(in1,size,in2,out) s2finds2(in1,size,out_tmp);for(int i=0;i<in2;i++) out[i]=out_tmp[i];
#define d2d0findd2(in1,size,in2,out) d2findd2(in1,size,out_tmp);for(int i=0;i<in2;i++) out[i]=out_tmp[i];
@@ -71,14 +72,16 @@
/* 2 inputs, 2 outputs */
-#define s0s0finds0s0(in1,in2,out1,out2) s0finds0s0(in1,out1,out2)
+#define s0s0finds0s0(in1,in2,out2) s0finds0s0(in1,out2)
+
+#define d0d0findd0d0(in1,in2,out2) d0findd0d0(in1,out2)
-#define d0d0findd0d0(in1,in2,out1,out2) d0findd0d0(in1,out1,out2)
+#define c0s0finds0s0(in1,in2,out2) c0finds0s0(in1,out2)
-#define c0s0finds0s0(in1,in2,out1,out2) c0finds0s0(in1,out1,out2)
+#define z0d0findd0d0(in1,in2,out2) z0findd0d0(in1,out2)
-#define z0d0findd0d0(in1,in2,out1,out2) z0findd0d0(in1,out1,out2)
+/*FIXME : prototypes are wrong*/
#define s2s0finds2s2(in1,size,in2,out1,out2) s2finds2s2(in1,size,out1_tmp,out_tmp2);for(int i=0;i<in2;i++) {out1[i]=out1_tmp[i];out2[i]= out2_tmp[i];}
#define d2d0findd2d2(in1,size,in2,out1,out2) d2findd2d2(in1,size,out1_tmp,out_tmp2);for(int i=0;i<in2;i++) {out1[i]=out1_tmp[i];out2[i]= out2_tmp[i];}