From 1c5c5704b2c0a6e6f6650f74968261a6842f2038 Mon Sep 17 00:00:00 2001 From: Brijeshcr Date: Wed, 12 Jul 2017 20:00:18 +0530 Subject: Isequal added --- 2.3-1/includes/sci2clib.h | 4 +++ 2.3-1/jar/scilab_en_US_help.jar | Bin 11210 -> 11210 bytes 2.3-1/macros/ASTManagement/lib | Bin 2008 -> 2008 bytes 2.3-1/macros/CCodeGeneration/lib | Bin 1056 -> 1056 bytes 2.3-1/macros/ErrorMessages/lib | Bin 520 -> 520 bytes 2.3-1/macros/FunctionAnnotation/lib | Bin 2412 -> 2412 bytes 2.3-1/macros/FunctionList/lib | Bin 588 -> 588 bytes 2.3-1/macros/GeneralFunctions/lib | Bin 1132 -> 1132 bytes 2.3-1/macros/Hardware/AVR/lib | Bin 972 -> 972 bytes 2.3-1/macros/Hardware/RasberryPi/lib | Bin 976 -> 976 bytes 2.3-1/macros/ImageProcessing/core/lib | Bin 524 -> 524 bytes 2.3-1/macros/ImageProcessing/highgui/lib | Bin 584 -> 584 bytes 2.3-1/macros/ImageProcessing/imgproc/lib | Bin 752 -> 752 bytes 2.3-1/macros/Scilab-Arduino/lib | Bin 716 -> 716 bytes 2.3-1/macros/SymbolTable/lib | Bin 752 -> 752 bytes .../ToolInitialization/INIT_FillSCI2LibCDirs.sci | 36 +++++++++++++++++++ 2.3-1/macros/findDeps/getAllHeaders.sci | 1 + 2.3-1/macros/findDeps/getAllInterfaces.sci | 1 + 2.3-1/macros/findDeps/getAllSources.sci | 8 +++++ 2.3-1/src/c/elementaryFunctions/includes/isequal.h | 38 ++++++++++++++++++++ .../c/elementaryFunctions/interfaces/int_isequal.h | 35 ++++++++++++++++++ .../src/c/elementaryFunctions/isequal/disequala.c | 39 ++++++++++++++++++++ .../src/c/elementaryFunctions/isequal/disequals.c | 24 +++++++++++++ .../src/c/elementaryFunctions/isequal/sisequala.c | 39 ++++++++++++++++++++ .../src/c/elementaryFunctions/isequal/sisequals.c | 24 +++++++++++++ .../c/elementaryFunctions/isequal/u16isequala.c | 40 +++++++++++++++++++++ .../c/elementaryFunctions/isequal/u16isequals.c | 25 +++++++++++++ .../src/c/elementaryFunctions/isequal/zisequala.c | 40 +++++++++++++++++++++ .../src/c/elementaryFunctions/isequal/zisequals.c | 25 +++++++++++++ 29 files changed, 379 insertions(+) create mode 100644 2.3-1/src/c/elementaryFunctions/includes/isequal.h create mode 100644 2.3-1/src/c/elementaryFunctions/interfaces/int_isequal.h create mode 100644 2.3-1/src/c/elementaryFunctions/isequal/disequala.c create mode 100644 2.3-1/src/c/elementaryFunctions/isequal/disequals.c create mode 100644 2.3-1/src/c/elementaryFunctions/isequal/sisequala.c create mode 100644 2.3-1/src/c/elementaryFunctions/isequal/sisequals.c create mode 100644 2.3-1/src/c/elementaryFunctions/isequal/u16isequala.c create mode 100644 2.3-1/src/c/elementaryFunctions/isequal/u16isequals.c create mode 100644 2.3-1/src/c/elementaryFunctions/isequal/zisequala.c create mode 100644 2.3-1/src/c/elementaryFunctions/isequal/zisequals.c diff --git a/2.3-1/includes/sci2clib.h b/2.3-1/includes/sci2clib.h index b070a904..7b691a00 100644 --- a/2.3-1/includes/sci2clib.h +++ b/2.3-1/includes/sci2clib.h @@ -359,6 +359,10 @@ extern "C" { #include "lcm.h" #include "int_lcm.h" +/*interfacing isequal*/ +#include "isequal.h" +#include "int_isequal.h" + /* IMPLICIT LISTS */ /* interfacing implicitList/OpColon */ diff --git a/2.3-1/jar/scilab_en_US_help.jar b/2.3-1/jar/scilab_en_US_help.jar index d8c468f5..0b187e27 100644 Binary files a/2.3-1/jar/scilab_en_US_help.jar and b/2.3-1/jar/scilab_en_US_help.jar differ diff --git a/2.3-1/macros/ASTManagement/lib b/2.3-1/macros/ASTManagement/lib index 5978ea72..dee4362f 100644 Binary files a/2.3-1/macros/ASTManagement/lib and b/2.3-1/macros/ASTManagement/lib differ diff --git a/2.3-1/macros/CCodeGeneration/lib b/2.3-1/macros/CCodeGeneration/lib index 31819793..3d4fed1d 100644 Binary files a/2.3-1/macros/CCodeGeneration/lib and b/2.3-1/macros/CCodeGeneration/lib differ diff --git a/2.3-1/macros/ErrorMessages/lib b/2.3-1/macros/ErrorMessages/lib index 794d4c01..ba3b9a5a 100644 Binary files a/2.3-1/macros/ErrorMessages/lib and b/2.3-1/macros/ErrorMessages/lib differ diff --git a/2.3-1/macros/FunctionAnnotation/lib b/2.3-1/macros/FunctionAnnotation/lib index bb1f47c6..239105c8 100644 Binary files a/2.3-1/macros/FunctionAnnotation/lib and b/2.3-1/macros/FunctionAnnotation/lib differ diff --git a/2.3-1/macros/FunctionList/lib b/2.3-1/macros/FunctionList/lib index c3274f18..1c722dd0 100644 Binary files a/2.3-1/macros/FunctionList/lib and b/2.3-1/macros/FunctionList/lib differ diff --git a/2.3-1/macros/GeneralFunctions/lib b/2.3-1/macros/GeneralFunctions/lib index 1cf5c1f5..7586a91b 100644 Binary files a/2.3-1/macros/GeneralFunctions/lib and b/2.3-1/macros/GeneralFunctions/lib differ diff --git a/2.3-1/macros/Hardware/AVR/lib b/2.3-1/macros/Hardware/AVR/lib index 069c520e..ed4c52b8 100644 Binary files a/2.3-1/macros/Hardware/AVR/lib and b/2.3-1/macros/Hardware/AVR/lib differ diff --git a/2.3-1/macros/Hardware/RasberryPi/lib b/2.3-1/macros/Hardware/RasberryPi/lib index 4c85475b..eec912f5 100644 Binary files a/2.3-1/macros/Hardware/RasberryPi/lib and b/2.3-1/macros/Hardware/RasberryPi/lib differ diff --git a/2.3-1/macros/ImageProcessing/core/lib b/2.3-1/macros/ImageProcessing/core/lib index d80305c4..40b7b0a1 100644 Binary files a/2.3-1/macros/ImageProcessing/core/lib and b/2.3-1/macros/ImageProcessing/core/lib differ diff --git a/2.3-1/macros/ImageProcessing/highgui/lib b/2.3-1/macros/ImageProcessing/highgui/lib index 1e7f7507..0d7f88a9 100644 Binary files a/2.3-1/macros/ImageProcessing/highgui/lib and b/2.3-1/macros/ImageProcessing/highgui/lib differ diff --git a/2.3-1/macros/ImageProcessing/imgproc/lib b/2.3-1/macros/ImageProcessing/imgproc/lib index a83978b5..63b5e7e9 100644 Binary files a/2.3-1/macros/ImageProcessing/imgproc/lib and b/2.3-1/macros/ImageProcessing/imgproc/lib differ diff --git a/2.3-1/macros/Scilab-Arduino/lib b/2.3-1/macros/Scilab-Arduino/lib index f3d5b2fc..a62fd4e4 100644 Binary files a/2.3-1/macros/Scilab-Arduino/lib and b/2.3-1/macros/Scilab-Arduino/lib differ diff --git a/2.3-1/macros/SymbolTable/lib b/2.3-1/macros/SymbolTable/lib index e66158d4..4379c83d 100644 Binary files a/2.3-1/macros/SymbolTable/lib and b/2.3-1/macros/SymbolTable/lib differ diff --git a/2.3-1/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci b/2.3-1/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci index 7dcae8a8..56ba4173 100644 --- a/2.3-1/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci +++ b/2.3-1/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci @@ -4836,6 +4836,42 @@ INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,E INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +//------------------------------------ +//---- Class ISEQUAL ---------------- +//------------------------------------ +ClassName = 'isequal'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +//Was FA_TP_USER +//Cause some trouble if user specify some precision and if input(and also output) is complex. +PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'g0',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'isequal'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + // ------------------- // --- Class Spec. --- // ------------------- diff --git a/2.3-1/macros/findDeps/getAllHeaders.sci b/2.3-1/macros/findDeps/getAllHeaders.sci index 67444f93..ed4a9958 100644 --- a/2.3-1/macros/findDeps/getAllHeaders.sci +++ b/2.3-1/macros/findDeps/getAllHeaders.sci @@ -137,6 +137,7 @@ function allHeaders = getAllHeaders(SharedInfo) "src/c/elementaryFunctions/includes/ismatrix.h" "src/c/elementaryFunctions/includes/asind.h" "src/c/elementaryFunctions/includes/atand.h" + "src/c/elementaryFunctions/includes/isequal.h" "src/c/statisticsFunctions/includes/variance.h" "src/c/statisticsFunctions/includes/sum.h" "src/c/statisticsFunctions/includes/mean.h" diff --git a/2.3-1/macros/findDeps/getAllInterfaces.sci b/2.3-1/macros/findDeps/getAllInterfaces.sci index da910a0e..e9f19a29 100644 --- a/2.3-1/macros/findDeps/getAllInterfaces.sci +++ b/2.3-1/macros/findDeps/getAllInterfaces.sci @@ -128,6 +128,7 @@ function allInterfaces = getAllInterfaces(SharedInfo) "src/c/elementaryFunctions/interfaces/int_atand.h" "src/c/elementaryFunctions/interfaces/int_gcd.h" "src/c/elementaryFunctions/interfaces/int_lcm.h" + "src/c/elementaryFunctions/interfaces/int_isequal.h" "src/c/statisticsFunctions/interfaces/int_mean.h" "src/c/statisticsFunctions/interfaces/int_meanf.h" "src/c/statisticsFunctions/interfaces/int_stdevf.h" diff --git a/2.3-1/macros/findDeps/getAllSources.sci b/2.3-1/macros/findDeps/getAllSources.sci index ddb3e47e..12ce1be5 100644 --- a/2.3-1/macros/findDeps/getAllSources.sci +++ b/2.3-1/macros/findDeps/getAllSources.sci @@ -855,6 +855,14 @@ function allSources = getAllSources(SharedInfo,BuildTool) "src/c/elementaryFunctions/atand/satands.c" "src/c/elementaryFunctions/discrete_mathematics/gcd/u8gcda.c" "src/c/elementaryFunctions/discrete_mathematics/lcm/u8lcma.c" + "src/c/elementaryFunctions/isequal/disequals.c" + "src/c/elementaryFunctions/isequal/disequala.c" + "src/c/elementaryFunctions/isequal/sisequals.c" + "src/c/elementaryFunctions/isequal/sisequala.c" + "src/c/elementaryFunctions/isequal/zisequals.c" + "src/c/elementaryFunctions/isequal/zisequala.c" + "src/c/elementaryFunctions/isequal/u16isequals.c" + "src/c/elementaryFunctions/isequal/u16isequala.c" "src/c/statisticsFunctions/max/dmaxa.c" "src/c/statisticsFunctions/max/smaxa.c" "src/c/statisticsFunctions/max/srowmaxa.c" diff --git a/2.3-1/src/c/elementaryFunctions/includes/isequal.h b/2.3-1/src/c/elementaryFunctions/includes/isequal.h new file mode 100644 index 00000000..d22a8047 --- /dev/null +++ b/2.3-1/src/c/elementaryFunctions/includes/isequal.h @@ -0,0 +1,38 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Brijesh Gupta C R + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ + +#ifndef __ISEQUAL_H__ +#define __ISEQUAL_H__ +#include "types.h" +#include "doubleComplex.h" +#include "floatComplex.h" +#include "uint16.h" + +#ifdef __cplusplus +extern "C" { +#endif + +char disequals(double inp1, double inp2); +char disequala(double* inp1, int size1r, int size1c, double* inp2, int size2r, int size2c); +char sisequals(float inp1, float inp2); +char sisequala(float* inp1, int size1r, int size1c, float* inp2, int size2r, int size2c); +char zisequals(doubleComplex inp1, doubleComplex inp2); +char zisequala(doubleComplex* inp1, int size1r, int size1c, doubleComplex* inp2, int size2r, int size2c); +char u16isequals(uint16 inp1, uint16 inp2); +char u16isequala(uint16* inp1, int size1r, int size1c, uint16* inp2, int size2r, int size2c); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__ISEQUAL_H__*/ diff --git a/2.3-1/src/c/elementaryFunctions/interfaces/int_isequal.h b/2.3-1/src/c/elementaryFunctions/interfaces/int_isequal.h new file mode 100644 index 00000000..d22ab65d --- /dev/null +++ b/2.3-1/src/c/elementaryFunctions/interfaces/int_isequal.h @@ -0,0 +1,35 @@ + /* Copyright (C) 2017 - IIT Bombay - FOSSEE + + 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 + Author: Brijesh Gupta C R + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in + */ +#ifndef __INT_ISEQUAL_H__ +#define __INT_ISEQUAL_H__ + +#ifdef __cplusplus +extern "C" { +#endif + + + +#define d0d0isequalg0(in1,in2) disequals(in1,in2) +#define d2d2isequalg0(in1, s1, in2, s2) disequala(in1, s1[0], s1[1], in2, s2[0], s2[1]) +#define s0s0isequalg0(in1,in2) sisequals(in1,in2) +#define s2s2isequalg0(in1, s1, in2, s2) sisequala(in1, s1[0], s1[1], in2, s2[0], s2[1]) +#define z0z0isequalg0(in1,in2) zisequals(in1,in2) +#define z2z2isequalg0(in1, s1, in2, s2) zisequala(in1, s1[0], s1[1], in2, s2[0], s2[1]) +#define u160u160isequalg0(in1,in2) u16isequals(in1,in2) +#define u162u162isequalg0(in1, s1, in2, s2) u16isequala(in1, s1[0], s1[1], in2, s2[0], s2[1]) + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /*__INT_ISEQUAL_H__*/ diff --git a/2.3-1/src/c/elementaryFunctions/isequal/disequala.c b/2.3-1/src/c/elementaryFunctions/isequal/disequala.c new file mode 100644 index 00000000..8781ac7b --- /dev/null +++ b/2.3-1/src/c/elementaryFunctions/isequal/disequala.c @@ -0,0 +1,39 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + 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 + Author: Brijesh Gupta C R + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include +#include +#include + +char disequala(double* inp1, int size1r, int size1c, double* inp2, int size2r, int size2c) +{ + if ((size1r != size2r) && (size1c != size2c)) + return 'F'; + else + { + int i, f = 0; + for (i = 0; i +#include +#include + +char disequals(double inp1, double inp2) +{ + if (inp1 == inp2) + return 'T'; + else + return 'F'; +} + diff --git a/2.3-1/src/c/elementaryFunctions/isequal/sisequala.c b/2.3-1/src/c/elementaryFunctions/isequal/sisequala.c new file mode 100644 index 00000000..2634efd5 --- /dev/null +++ b/2.3-1/src/c/elementaryFunctions/isequal/sisequala.c @@ -0,0 +1,39 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + 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 + Author: Brijesh Gupta C R + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include +#include +#include + +char sisequala(float* inp1, int size1r, int size1c, float* inp2, int size2r, int size2c) +{ + if ((size1r != size2r) && (size1c != size2c)) + return 'F'; + else + { + int i, f = 0; + for (i = 0; i +#include +#include + +char sisequals(float inp1, float inp2) +{ + if (inp1 == inp2) + return 'T'; + else + return 'F'; +} + diff --git a/2.3-1/src/c/elementaryFunctions/isequal/u16isequala.c b/2.3-1/src/c/elementaryFunctions/isequal/u16isequala.c new file mode 100644 index 00000000..62de1e86 --- /dev/null +++ b/2.3-1/src/c/elementaryFunctions/isequal/u16isequala.c @@ -0,0 +1,40 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + 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 + Author: Brijesh Gupta C R + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include +#include +#include +#include "uint16.h" + +char u16isequala(uint16* inp1, int size1r, int size1c, uint16* inp2, int size2r, int size2c) +{ + if ((size1r != size2r) && (size1c != size2c)) + return 'F'; + else + { + int i, f = 0; + for (i = 0; i +#include +#include +#include "uint16.h" + +char u16isequals(uint16 inp1, uint16 inp2) +{ + if (inp1 == inp2) + return 'T'; + else + return 'F'; +} + diff --git a/2.3-1/src/c/elementaryFunctions/isequal/zisequala.c b/2.3-1/src/c/elementaryFunctions/isequal/zisequala.c new file mode 100644 index 00000000..13d241fe --- /dev/null +++ b/2.3-1/src/c/elementaryFunctions/isequal/zisequala.c @@ -0,0 +1,40 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + 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 + Author: Brijesh Gupta C R + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include +#include +#include +#include "doubleComplex.h" + +char zisequala(doubleComplex* inp1, int size1r, int size1c, doubleComplex* inp2, int size2r, int size2c) +{ + if ((size1r != size2r) && (size1c != size2c)) + return 'F'; + else + { + int i, f = 0; + for (i = 0; i +#include +#include +#include "doubleComplex.h" + +char zisequals(doubleComplex inp1, doubleComplex inp2) +{ + if ((zreals(inp1) == zreals(inp2)) && (zimags(inp1) == zimags(inp2))) + return 'T'; + else + return 'F'; +} + -- cgit