diff options
Diffstat (limited to '2.3-1/src/c/operations/interfaces/int_OpLogNe.h')
-rw-r--r-- | 2.3-1/src/c/operations/interfaces/int_OpLogNe.h | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/2.3-1/src/c/operations/interfaces/int_OpLogNe.h b/2.3-1/src/c/operations/interfaces/int_OpLogNe.h new file mode 100644 index 00000000..56cafefa --- /dev/null +++ b/2.3-1/src/c/operations/interfaces/int_OpLogNe.h @@ -0,0 +1,136 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008 - INRIA - Aranud Torset + * + * 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 + * + */ + +/* Idem that OpLogEq with a !(negation) behind*/ + +#ifndef __OPLOGNE_H__ +#define __OPLOGNE_H__ + +#include "floatComplex.h" +#include "doubleComplex.h" + +#define s0s0OpLogNes0(in1,in2) (float) !(in1 == in2) +#define d0d0OpLogNed0(in1,in2) (double) !(in1 == in2) +#define c0c0OpLogNes0(in1,in2) (float) !((creals(in1) == creals(in2)) && (cimags(in1) == cimags(in2))) +#define z0z0OpLogNed0(in1,in2) (double) !((zreals(in1) == zreals(in2)) && (zimags(in1) == zimags(in2))) +#define u80u80OpLogNeu80(in1,in2) (uint8) !(in1 == in2) +#define i80i80OpLogNei80(in1,in2) (int8) !(in1 == in2) +#define u160u160OpLogNeu160(in1,in2) (uint16) !(in1 == in2) +#define i160i160OpLogNei160(in1,in2) (int16) !(in1 == in2) + +#define s0c0OpLogNes0(in1,in2) (float) !((in1==creals(in2)) && (0==cimags(in2))) +#define d0z0OpLogNed0(in1,in2) (double) !((in1==zreals(in2)) && (0==zimags(in2))) +#define c0s0OpLogNes0(in1,in2) s0c0OpLogNes0(in2,in1) +#define z0d0OpLogNed0(in1,in2) d0z0OpLogNed0(in2,in1) + + + +#define s2s0OpLogNes2(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=(float)!(in1[i]==in2);\ + } +#define d2d0OpLogNed2(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=(double)!(in1[i]==in2);\ + } +#define c2c0OpLogNes2(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=(float)!((creals(in1[i])==creals(in2))&&(cimags(in1[i])==cimags(in2)));\ + } +#define z2z0OpLogNed2(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=(double)!((zreals(in1[i])==zreals(in2))&&(zimags(in1[i])==zimags(in2)));\ + } + + +#define c2s0OpLogNes2(in1,size,in2,out) c2c0OpLogNes2(in1,size,FloatComplex(in2,0),out) +#define z2d0OpLogNed2(in1,size,in2,out) z2z0OpLogNed2(in1,size,DoubleComplex(in2,0),out) + +#define s2c0OpLogNes2(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=(float)!((in1[i]==creals(in2))&&(cimags(in2)==0));\ + } + +#define d2z0OpLogNed2(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=(double)!((in1[i]==zreals(in2))&&(zimags(in2)==0));\ + } + +#define u82u80OpLogNeu82(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=(uint8)!(in1[i]==in2);\ + } + +#define i82i80OpLogNei82(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=(int8)!(in1[i]==in2);\ + } + +#define u162u160OpLogNeu162(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=(uint16)!(in1[i]==in2);\ + } + +#define i162i160OpLogNei162(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=(int16)!(in1[i]==in2);\ + } + +#define s0s2OpLogNes2(in1,in2,inSize,out) s2s0OpLogNes2(in2,inSize,in1,out) +#define c0s2OpLogNes2(in1,in2,inSize,out) s2c0OpLogNes2(in2,inSize,in1,out) +#define d0d2OpLogNed2(in1,in2,inSize,out) d2d0OpLogNed2(in2,inSize,in1,out) +#define z0d2OpLogNed2(in1,in2,inSize,out) d2z0OpLogNed2(in2,inSize,in1,out) +#define s0c2OpLogNes2(in1,in2,inSize,out) c2s0OpLogNes2(in2,inSize,in1,out) +#define c0c2OpLogNes2(in1,in2,inSize,out) c2c0OpLogNes2(in2,inSize,in1,out) +#define d0z2OpLogNed2(in1,in2,inSize,out) z2d0OpLogNed2(in2,inSize,in1,out) +#define z0z2OpLogNed2(in1,in2,inSize,out) z2z0OpLogNed2(in2,inSize,in1,out) +#define u80u82OpLogNeu82(in1,in2,inSize,out) u82u80OpLogNeu82(in2,inSize,in1,out) +#define i80i82OpLogNei82(in1,in2,inSize,out) i82i80OpLogNei82(in2,inSize,in1,out) +#define u160u162OpLogNeu162(in1,in2,inSize,out) u162u160OpLogNeu162(in2,inSize,in1,out) +#define i160i162OpLogNei162(in1,in2,inSize,out) i162i160OpLogNei162(in2,inSize,in1,out) + +/* we must have size1=size2 */ + +#define s2s2OpLogNes2(in1,size1,in2,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) out[i]=(float)!(in1[i]==in2[i]);\ + } +#define d2d2OpLogNed2(in1,size1,in2,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) out[i]=(double)!(in1[i]==in2[i]);\ + } +#define c2c2OpLogNes2(in1,size1,in2,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) \ + out[i]=(float)!((creals(in1[i])==creals(in2[i]))&&(cimags(in1[i])==cimags(in2[i])));\ + } +#define z2z2OpLogNed2(in1,size1,in2,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) \ + out[i]=(double)!((zreals(in1[i])==zreals(in2[i]))&&(zimags(in1[i])==zimags(in2[i])));\ + } + +#define s2c2OpLogNes2(in1,size1,in2,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) \ + out[i]=(float)!((in1[i]==creals(in2[i]))&&(0==cimags(in2[i])));\ + } +#define d2z2OpLogNed2(in1,size1,in2,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) \ + out[i]=(double)!((in1[i]==zreals(in2[i]))&&(0==zimags(in2[i])));\ + } + +#define c2s2OpLogNes2(in1,size1,in2,size2,out) s2c2OpLogNes2(in2,size2,in1,size1,out) +#define z2d2OpLogNed2(in1,size1,in2,size2,out) d2z2OpLogNed2(in2,size2,in1,size1,out) + +#define u82u82OpLogNeu82(in1,size1,in2,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) out[i]=(uint8)!(in1[i]==in2[i]);\ + } + +#define i82i82OpLogNei82(in1,size1,in2,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) out[i]=(int8)!(in1[i]==in2[i]);\ + } + +#define u162u162OpLogNeu162(in1,size1,in2,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) out[i]=(uint16)!(in1[i]==in2[i]);\ + } + +#define i162i162OpLogNei162(in1,size1,in2,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) out[i]=(int16)!(in1[i]==in2[i]);\ + } + +#endif /* !__OPLOGNE_H__ */ |