From 26b77d7593b5ee0792b6b556f5569ea4227c2b02 Mon Sep 17 00:00:00 2001 From: Sunil Shetye Date: Thu, 16 May 2019 12:18:48 +0530 Subject: convert to unix format --- includes/constant.h | 8 +- includes/f2c.h | 490 +- macros/ASTManagement/%trycatch_string.sci | 34 +- macros/ASTManagement/Operator2FunName.sci | 232 +- macros/CCodeGeneration/C_ForExpression.sci | 2 +- macros/CFiles/sci2ccode/SCI2Cconvol.c | 2 +- macros/CFiles/sci2cincludes/OpLogAnd.h | 4 +- macros/CFiles/sci2cincludes/OpLogGe.h | 4 +- macros/CFiles/sci2cincludes/OpLogLe.h | 4 +- macros/CFiles/sci2cincludes/OpLogLt.h | 4 +- macros/CFiles/sci2cincludes/OpLogOr.h | 4 +- macros/CFiles/sci2cincludes/SCI2CMacroInterface.h | 452 +- macros/CFiles/sci2cincludes/SCI2Cconvol.h | 4 +- macros/CFiles/sci2cincludes/SCI2Cfft.h | 2 +- macros/ErrorMessages/EM_NanSize.sci | 164 +- macros/ErrorMessages/EM_UnknownStep.sci | 140 +- macros/ErrorMessages/EM_ZeroSize.sci | 54 +- macros/FunctionAnnotation/FA_ADD.sci | 86 +- macros/FunctionAnnotation/FA_DIV.sci | 82 +- .../FunctionAnnotation/FA_GetDefaultPrecision.sci | 210 +- macros/FunctionAnnotation/FA_GetFunAnn.sci | 434 +- macros/FunctionAnnotation/FA_GetOutArgInfo.sci | 292 +- macros/FunctionAnnotation/FA_GetResizeApproach.sci | 174 +- macros/FunctionAnnotation/FA_INT.sci | 80 +- macros/FunctionAnnotation/FA_MUL.sci | 84 +- macros/FunctionAnnotation/FA_SUB.sci | 82 +- macros/FunctionAnnotation/FA_SZ_1.sci | 42 +- macros/FunctionAnnotation/FA_SZ_2.sci | 42 +- macros/FunctionAnnotation/FA_SZ_OPAPEX.sci | 52 +- macros/FunctionAnnotation/FA_SZ_OPBACKSLASH.sci | 78 +- macros/FunctionAnnotation/FA_SZ_OPCC.sci | 80 +- macros/FunctionAnnotation/FA_SZ_OPDOTAPEX.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPDOTBACKSLASH.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPDOTHAT.sci | 86 +- macros/FunctionAnnotation/FA_SZ_OPDOTSLASH.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPDOTSTAR.sci | 64 +- macros/FunctionAnnotation/FA_SZ_OPHAT.sci | 86 +- macros/FunctionAnnotation/FA_SZ_OPLOGAND.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPLOGEQ.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPLOGGE.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPLOGGT.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPLOGLE.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPLOGLT.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPLOGNE.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPLOGNOT.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPLOGOR.sci | 32 +- macros/FunctionAnnotation/FA_SZ_OPMINUS.sci | 102 +- macros/FunctionAnnotation/FA_SZ_OPPLUS.sci | 186 +- macros/FunctionAnnotation/FA_SZ_OPPLUSA.sci | 132 +- macros/FunctionAnnotation/FA_SZ_OPRC.sci | 80 +- macros/FunctionAnnotation/FA_SZ_OPSLASH.sci | 74 +- macros/FunctionAnnotation/FA_SZ_OPSTAR.sci | 136 +- macros/FunctionAnnotation/FA_SZ_ROW_COLUMN_CAT.sci | 100 +- macros/FunctionAnnotation/FA_SZ_SEL1.sci | 88 +- macros/FunctionAnnotation/FA_SZ_SEL2.sci | 88 +- macros/FunctionAnnotation/FA_TP_C.sci | 64 +- macros/FunctionAnnotation/FA_TP_COMPLEX.sci | 84 +- macros/FunctionAnnotation/FA_TP_D.sci | 64 +- macros/FunctionAnnotation/FA_TP_I.sci | 64 +- macros/FunctionAnnotation/FA_TP_MAX.sci | 90 +- macros/FunctionAnnotation/FA_TP_REAL.sci | 76 +- macros/FunctionAnnotation/FA_TP_S.sci | 64 +- macros/FunctionAnnotation/FA_TP_USER.sci | 76 +- macros/FunctionAnnotation/FA_TP_Z.sci | 64 +- macros/FunctionList/FL_ExistCFunction.sci | 234 +- macros/FunctionList/FL_ExtractFuncList.sci | 124 +- macros/FunctionList/FL_GetFunctionClass.sci | 108 +- macros/FunctionList/FL_InOutArgs2CFunNames.sci | 102 +- macros/FunctionList/FL_UpdateConverted.sci | 92 +- macros/FunctionList/FL_UpdateToBeConv.sci | 228 +- macros/GeneralFunctions/Array2String.sci | 78 +- macros/GeneralFunctions/ConvertPathMat2C.sci | 122 +- macros/GeneralFunctions/File2StringArray.sci | 106 +- macros/GeneralFunctions/FunName2SciFileName.sci | 112 +- macros/GeneralFunctions/IsNanSize.sci | 78 +- macros/GeneralFunctions/KeyStr2FileStrPos.sci | 164 +- macros/GeneralFunctions/PrintStringInfo.sci | 136 +- macros/GeneralFunctions/ReadStringCard.sci | 120 +- macros/GeneralFunctions/SCI2CCreateDir.sci | 60 +- macros/GeneralFunctions/SCI2CFindFile.sci | 80 +- macros/GeneralFunctions/SCI2CNInArgCheck.sci | 52 +- macros/GeneralFunctions/SCI2COpenFileRead.sci | 60 +- macros/GeneralFunctions/SCI2COpenFileWrite.sci | 60 +- macros/GeneralFunctions/SCI2CTemplate.sci | 64 +- macros/GeneralFunctions/SCI2Ccopyfile.sci | 98 +- macros/GeneralFunctions/SCI2Cfileexist.sci | 76 +- macros/GeneralFunctions/SCI2Cflipud.sci | 80 +- macros/GeneralFunctions/SCI2Cmdelete.sci | 66 +- macros/GeneralFunctions/SCI2Cresize.sci | 66 +- macros/GeneralFunctions/SCI2Cstring.sci | 68 +- macros/GeneralFunctions/SCI2Cstrncmp.sci | 54 +- macros/GeneralFunctions/SCI2Cstrncmps1size.sci | 64 +- macros/GeneralFunctions/SizeInByte.sci | 82 +- macros/GeneralFunctions/dispina.sci | 60 +- macros/GeneralFunctions/filenamefprintf.sci | 114 +- macros/GeneralFunctions/float.sci | 50 +- macros/GeneralFunctions/squeezestrings.sci | 62 +- macros/Hardware/RasberryPi/raspi.sci | 188 +- macros/SymbolTable/ST_AnalyzeScope.sci | 248 +- macros/SymbolTable/ST_Del.sci | 82 +- macros/SymbolTable/ST_FindPos.sci | 92 +- macros/SymbolTable/ST_Get.sci | 128 +- macros/SymbolTable/ST_GetInArgInfo.sci | 440 +- macros/SymbolTable/ST_GetSymbolInfo.sci | 198 +- macros/SymbolTable/ST_InsForCntVars.sci | 382 +- macros/SymbolTable/ST_InsOutArg.sci | 384 +- macros/SymbolTable/ST_Load.sci | 72 +- macros/SymbolTable/ST_MatchSymbol.sci | 138 +- macros/SymbolTable/ST_Save.sci | 88 +- macros/SymbolTable/ST_Set.sci | 98 +- macros/ToolInitialization/INIT_CreateDirs.sci | 130 +- .../ToolInitialization/INIT_FillSCI2LibCDirs.sci | 24646 +++++++++---------- .../ToolInitialization/INIT_GenAnnFLFunctions.sci | 42 +- macros/ToolInitialization/INIT_GenFileInfo.sci | 234 +- macros/ToolInitialization/INIT_GenLibraries.sci | 122 +- macros/ToolInitialization/INIT_GenSharedInfo.sci | 274 +- macros/ToolInitialization/INIT_LoadLibraries.sci | 128 +- macros/ToolInitialization/INIT_RemoveDirs.sci | 148 +- macros/ToolInitialization/INIT_SCI2C.sci | 328 +- macros/ToolInitialization/INIT_SCI2CLoader.sce | 144 +- macros/ToolInitialization/INIT_SharedInfoEqual.sci | 86 +- macros/ToolInitialization/ManageNextConversion.sci | 178 +- macros/ToolInitialization/SCI2CInputParameters.sce | 174 +- macros/ToolInitialization/doublecomplex.sci | 58 +- macros/ToolInitialization/floatcomplex.sci | 52 +- macros/runsci2c.sci | 532 +- .../auxiliaryFunctions/mainfunctionAbs.sci | 2 +- .../auxiliaryFunctions/mainfunctionConj.sci | 8 +- .../auxiliaryFunctions/mainfunctionFind.sci | 2 +- .../auxiliaryFunctions/mainfunctionFind2d.sci | 2 +- .../auxiliaryFunctions/mainfunctionIsEmpty.sci | 2 +- .../auxiliaryFunctions/mainfunctionIsNan.sci | 2 +- .../auxiliaryFunctions/mainfunctionLength.sci | 2 +- .../auxiliaryFunctions/mainfunctionSign.sci | 2 +- .../auxiliaryFunctions/mainfunctionSize.sci | 2 +- .../auxiliaryFunctions/mainfunctionType.sci | 2 +- .../elementary Functions/mainfunctionACos.sci | 2 +- .../elementary Functions/mainfunctionACosh.sci | 2 +- .../elementary Functions/mainfunctionASin.sci | 2 +- .../elementary Functions/mainfunctionASinh.sci | 2 +- .../elementary Functions/mainfunctionATan.sci | 2 +- .../elementary Functions/mainfunctionATan2.sci | 2 +- .../elementary Functions/mainfunctionATanh.sci | 2 +- .../mainfunctionCeil_Fix_Floor_Int_Round.sci | 4 +- .../elementary Functions/mainfunctionCos.sci | 2 +- .../elementary Functions/mainfunctionCosh.sci | 2 +- .../elementary Functions/mainfunctionExp_Expm.sci | 2 +- .../elementary Functions/mainfunctionLog.sci | 2 +- .../elementary Functions/mainfunctionLog10.sci | 2 +- .../elementary Functions/mainfunctionLog1p.sci | 2 +- .../elementary Functions/mainfunctionPow0.sci | 2 +- .../mainfunctionPow_MatrixPow.sci | 2 +- .../elementary Functions/mainfunctionSin.sci | 2 +- .../elementary Functions/mainfunctionSinh.sci | 2 +- .../elementary Functions/mainfunctionSqrt.sci | 2 +- .../elementary Functions/mainfunctionTan.sci | 2 +- .../elementary Functions/mainfunctionTanh.sci | 2 +- .../implicitList/mainfunctionImplicitList.sci | 2 +- .../SCI2CTests/Mes_tests/mainfunctionOpIns.sci | 4 +- .../SCI2CTests/Mes_tests/mainfunctionOpLogEq.sci | 4 +- .../SCI2CTests/Mes_tests/mainfunctionOpLogNe.sci | 4 +- .../SCI2CTests/Mes_tests/mainfunctionOpLogNot.sci | 4 +- .../matrixOperations/mainfunctionChol.sci | 2 +- .../Mes_tests/matrixOperations/mainfunctionDet.sci | 2 +- .../Mes_tests/matrixOperations/mainfunctionEye.sci | 2 +- .../matrixOperations/mainfunctionInversion.sci | 2 +- .../matrixOperations/mainfunctionOnes.sci | 2 +- .../mainfunctionOpApex_OpDotApex.sci | 2 +- .../matrixOperations/mainfunctionSpec_Spec2.sci | 2 +- .../matrixOperations/mainfunctionZeros.sci | 2 +- .../Mes_tests/operations/mainfunctionOpMinus.sci | 2 +- .../Mes_tests/operations/mainfunctionOpPlus.sci | 2 +- .../operations/mainfunctionOpSlash_OpDotSlash.sci | 2 +- .../signalProcessing/mainfunctionConvol.sci | 2 +- .../Mes_tests/signalProcessing/mainfunctionFft.sci | 4 +- .../signalProcessing/mainfunctionFftShift.sci | 4 +- .../signalProcessing/mainfunctionIfft.sci | 2 +- .../Mes_tests/signalProcessing/mainfunctionLev.sci | 2 +- .../statistic Functions/mainfunctionMean.sci | 2 +- .../statistic Functions/mainfunctionSum.sci | 2 +- .../statistic Functions/mainfunctionVariance.sci | 2 +- .../Mes_tests/type/mainfunctionReal_Imag.sci | 2 +- .../SCI2CInputParameters.sce | 178 +- .../scilabcode/mainfunction.sci | 6 +- .../SCI2CInputParameters.sce | 178 +- .../scilabcode/mainfunction.sci | 8 +- .../test999_WorkingDir/SCI2CInputParameters.sce | 178 +- .../test999_WorkingDir/scilabcode/mainfunction.sci | 6 +- .../includes/dynlib_auxiliaryfunctions.h | 52 +- src/c/auxiliaryFunctions/interfaces/int_length.h | 26 +- src/c/auxiliaryFunctions/isnan/sisnans.c | 46 +- src/c/elementaryFunctions/acos/cacoss.c | 294 +- src/c/elementaryFunctions/acos/zacoss.c | 294 +- src/c/elementaryFunctions/acosd/cacoss.c | 294 +- src/c/elementaryFunctions/acosh/dacoshs.c | 8 +- src/c/elementaryFunctions/acosh/sacoshs.c | 10 +- src/c/elementaryFunctions/acosh/testDoubleAcosh.c | 6 +- src/c/elementaryFunctions/acosh/testFloatAcosh.c | 1020 +- src/c/elementaryFunctions/asin/casins.c | 292 +- src/c/elementaryFunctions/asin/zasins.c | 292 +- src/c/elementaryFunctions/atan/catans.c | 498 +- src/c/elementaryFunctions/atan/zatans.c | 484 +- .../includes/dynlib_elementaryfunctions.h | 52 +- src/c/elementaryFunctions/lnp1m1/dlnp1m1s.c | 154 +- src/c/elementaryFunctions/lnp1m1/slnp1m1s.c | 154 +- src/c/elementaryFunctions/log/clogs.c | 130 +- src/c/elementaryFunctions/log/zlogs.c | 130 +- src/c/elementaryFunctions/log1p/dlog1ps.c | 68 +- src/c/elementaryFunctions/log1p/slog1ps.c | 70 +- src/c/elementaryFunctions/sqrt/csqrts.c | 222 +- src/c/elementaryFunctions/sqrt/zsqrts.c | 222 +- src/c/elementaryFunctions/tan/ztans.c | 208 +- src/c/implicitList/dynlib_implicitlist.h | 52 +- .../includes/dynlib_matrixoperations.h | 52 +- src/c/operations/includes/dynlib_operations.h | 52 +- .../includes/dynlib_signalprocessing.h | 52 +- .../includes/dynlib_statisticsfunctions.h | 52 +- src/c/string/disp/sdisps.c | 2 +- src/c/string/includes/dynlib_string.h | 54 +- src/c/type/dynlib_type.h | 52 +- .../test000_TrigonIdentity/launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 4 +- .../test001_LinearRegression/launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 112 +- .../test002_Symbols/launchConversion.sci | 10 +- .../test002_Symbols/scilabcode/mainfunction.sci | 42 +- .../test003_VerySimple/launchConversion.sci | 10 +- .../test003_VerySimple/scilabcode/mainfunction.sci | 20 +- .../test004_Filter/scilabcode/high_pass.sci | 32 +- .../test004_LinearCombination/launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 4 +- .../launchConversion.sci | 10 +- .../scilabcode/LinComb.sci | 2 +- .../scilabcode/mainfunction.sci | 4 +- .../test011_InsExtfunctions/launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 48 +- .../test012_OpMinus/launchConversion.sci | 10 +- .../test012_OpMinus/scilabcode/mainfunction.sci | 16 +- .../test013_TestOpRcCC/launchConversion.sci | 10 +- .../test013_TestOpRcCC/scilabcode/mainfunction.sci | 30 +- .../test018_NestedWhile/launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 34 +- .../test024_test_if_pi/launchConversion.sci | 10 +- .../test024_test_if_pi/scilabcode/mainfunction.sci | 16 +- .../test038_FindI2O1Float/launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 114 +- .../test061_SumShortTest/launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 44 +- .../launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 86 +- .../test081_twoFunctions/scilabcode/fun1.sci | 8 +- .../test081_twoFunctions/scilabcode/fun2.sci | 16 +- .../scilabcode/mainfunction.sci | 24 +- .../test088_SimpleFor/launchConversion.sci | 8 +- .../test088_SimpleFor/scilabcode/mainfunction.sci | 34 +- .../test089_SimpleFor/launchConversion.sci | 10 +- .../test089_SimpleFor/scilabcode/mainfunction.sci | 34 +- .../launchConversion.sci | 10 +- .../scilabcode/IterativePower.sci | 24 +- .../scilabcode/RecursivePower.sci | 36 +- .../scilabcode/mainfunction.sci | 114 +- .../launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 36 +- .../test104_ScalarProduct/launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 20 +- .../unit_tests/test200_malloc/launchConversion.sci | 10 +- .../test200_malloc/scilabcode/mainfunction.sci | 36 +- .../test200_malloc/scilabcode/myinit.sci | 8 +- .../test200_malloc/scilabcode/myzeros.sci | 8 +- .../unit_tests/test301_cchirp/launchConversion.sci | 10 +- .../test301_cchirp/scilabcode/mainfunction.sci | 4 +- .../test301_cchirp/scilabcode/myconvol.sci | 4 +- tests/unit_tests/test305_Moebius/Moebius.sci | 132 +- tests/unit_tests/test305_Moebius/XYgrid.sci | 2 +- .../test600_SimpleFindDouble/launchConversion.sci | 10 +- .../scilabcode/mainfunction.sci | 34 +- .../scilabcode/mainfunction.sci | 4 +- tests/unit_tests/testArduino/i2c_master.sci | 18 +- 278 files changed, 23055 insertions(+), 23055 deletions(-) diff --git a/includes/constant.h b/includes/constant.h index 14543b61..2d8ff796 100644 --- a/includes/constant.h +++ b/includes/constant.h @@ -23,12 +23,12 @@ #define PI DPI #define SCI2C_PI DPI #define SCI2C_E NEPER -#define SCI2C_T 1 -#define SCI2C_F 0 -#define SCI2C_NAN nan("") +#define SCI2C_T 1 +#define SCI2C_F 0 +#define SCI2C_NAN nan("") #define SCI2C_INF 1e100000 #define SCI2C_IMG_C FloatComplex(0,1) -#define SCI2C_IMG_Z DoubleComplex(0,1) +#define SCI2C_IMG_Z DoubleComplex(0,1) #endif /* !__CONSTANT_H__ */ diff --git a/includes/f2c.h b/includes/f2c.h index a90a1ef5..6ff8934f 100644 --- a/includes/f2c.h +++ b/includes/f2c.h @@ -1,245 +1,245 @@ -/* f2c.h -- Standard Fortran to C header file */ - -/** barf [ba:rf] 2. "He suggested using FORTRAN, and everybody barfed." - - - From The Shogakukan DICTIONARY OF NEW ENGLISH (Second edition) */ - -#ifndef F2C_INCLUDE -#define F2C_INCLUDE - -#ifdef FORDLL -#define IMPORT extern __declspec (dllimport) -#else -#define IMPORT -#endif - -#ifdef FORDLL -#define Extern __declspec (dllimport) -#else -#define Extern -#endif - - - -typedef long int integer; -typedef unsigned long int uinteger; -typedef char *address; -typedef short int shortint; -typedef float real; -typedef double doublereal; -typedef struct { real r, i; } complex; -typedef struct { doublereal r, i; } doublecomplex; -typedef long int logical; -typedef short int shortlogical; -typedef char logical1; -typedef char integer1; -#ifdef INTEGER_STAR_8 /* Adjust for integer*8. */ -typedef long long longint; /* system-dependent */ -typedef unsigned long long ulongint; /* system-dependent */ -#define qbit_clear(a,b) ((a) & ~((ulongint)1 << (b))) -#define qbit_set(a,b) ((a) | ((ulongint)1 << (b))) -#endif - -#define TRUE_ (1) -#define FALSE_ (0) - -/* Extern is for use with -E */ -#ifndef Extern -#define Extern extern -#endif - -/* I/O stuff */ - -#ifdef f2c_i2 -/* for -i2 */ -typedef short flag; -typedef short ftnlen; -typedef short ftnint; -#else -typedef long int flag; -typedef long int ftnlen; -typedef long int ftnint; -#endif - -/*external read, write*/ -typedef struct -{ flag cierr; - ftnint ciunit; - flag ciend; - char *cifmt; - ftnint cirec; -} cilist; - -/*internal read, write*/ -typedef struct -{ flag icierr; - char *iciunit; - flag iciend; - char *icifmt; - ftnint icirlen; - ftnint icirnum; -} icilist; - -/*open*/ -typedef struct -{ flag oerr; - ftnint ounit; - char *ofnm; - ftnlen ofnmlen; - char *osta; - char *oacc; - char *ofm; - ftnint orl; - char *oblnk; -} olist; - -/*close*/ -typedef struct -{ flag cerr; - ftnint cunit; - char *csta; -} cllist; - -/*rewind, backspace, endfile*/ -typedef struct -{ flag aerr; - ftnint aunit; -} alist; - -/* inquire */ -typedef struct -{ flag inerr; - ftnint inunit; - char *infile; - ftnlen infilen; - ftnint *inex; /*parameters in standard's order*/ - ftnint *inopen; - ftnint *innum; - ftnint *innamed; - char *inname; - ftnlen innamlen; - char *inacc; - ftnlen inacclen; - char *inseq; - ftnlen inseqlen; - char *indir; - ftnlen indirlen; - char *infmt; - ftnlen infmtlen; - char *inform; - ftnint informlen; - char *inunf; - ftnlen inunflen; - ftnint *inrecl; - ftnint *innrec; - char *inblank; - ftnlen inblanklen; -} inlist; - -#define VOID void - -union Multitype { /* for multiple entry points */ - integer1 g; - shortint h; - integer i; - /* longint j; */ - real r; - doublereal d; - complex c; - doublecomplex z; - }; - -typedef union Multitype Multitype; - -/*typedef long int Long;*/ /* No longer used; formerly in Namelist */ - -struct Vardesc { /* for Namelist */ - char *name; - char *addr; - ftnlen *dims; - int type; - }; -typedef struct Vardesc Vardesc; - -struct Namelist { - char *name; - Vardesc **vars; - int nvars; - }; -typedef struct Namelist Namelist; - -#define abs(x) ((x) >= 0 ? (x) : -(x)) -#define dabs(x) (doublereal)abs(x) - - -#ifndef min -#define min(a,b) ((a) <= (b) ? (a) : (b)) -#endif - -#ifndef max -#define max(a,b) ((a) >= (b) ? (a) : (b)) -#endif - -#define dmin(a,b) (doublereal)min(a,b) -#define dmax(a,b) (doublereal)max(a,b) -#define bit_test(a,b) ((a) >> (b) & 1) -#define bit_clear(a,b) ((a) & ~((uinteger)1 << (b))) -#define bit_set(a,b) ((a) | ((uinteger)1 << (b))) - -/* procedure parameter types for -A and -C++ */ - -#define F2C_proc_par_types 1 -#ifdef __cplusplus -typedef int /* Unknown procedure type */ (*U_fp)(...); -typedef shortint (*J_fp)(...); -typedef integer (*I_fp)(...); -typedef real (*R_fp)(...); -typedef doublereal (*D_fp)(...), (*E_fp)(...); -typedef /* Complex */ VOID (*C_fp)(...); -typedef /* Double Complex */ VOID (*Z_fp)(...); -typedef logical (*L_fp)(...); -typedef shortlogical (*K_fp)(...); -typedef /* Character */ VOID (*H_fp)(...); -typedef /* Subroutine */ int (*S_fp)(...); -#else -typedef int /* Unknown procedure type */ (*U_fp)(); -typedef shortint (*J_fp)(); -typedef integer (*I_fp)(); -typedef real (*R_fp)(); -typedef doublereal (*D_fp)(), (*E_fp)(); -typedef /* Complex */ VOID (*C_fp)(); -typedef /* Double Complex */ VOID (*Z_fp)(); -typedef logical (*L_fp)(); -typedef shortlogical (*K_fp)(); -typedef /* Character */ VOID (*H_fp)(); -typedef /* Subroutine */ int (*S_fp)(); -#endif -/* E_fp is for real functions when -R is not specified */ -typedef VOID C_f; /* complex function */ -typedef VOID H_f; /* character function */ -typedef VOID Z_f; /* double complex function */ -typedef doublereal E_f; /* real function with -R not specified */ - -/* undef any lower-case symbols that your C compiler predefines, e.g.: */ - -#ifndef Skip_f2c_Undefs -#undef cray -#undef gcos -#undef mc68010 -#undef mc68020 -#undef mips -#undef pdp11 -#undef sgi -#undef sparc -#undef sun -#undef sun2 -#undef sun3 -#undef sun4 -#undef u370 -#undef u3b -#undef u3b2 -#undef u3b5 -#undef unix -#undef vax -#endif -#endif +/* f2c.h -- Standard Fortran to C header file */ + +/** barf [ba:rf] 2. "He suggested using FORTRAN, and everybody barfed." + + - From The Shogakukan DICTIONARY OF NEW ENGLISH (Second edition) */ + +#ifndef F2C_INCLUDE +#define F2C_INCLUDE + +#ifdef FORDLL +#define IMPORT extern __declspec (dllimport) +#else +#define IMPORT +#endif + +#ifdef FORDLL +#define Extern __declspec (dllimport) +#else +#define Extern +#endif + + + +typedef long int integer; +typedef unsigned long int uinteger; +typedef char *address; +typedef short int shortint; +typedef float real; +typedef double doublereal; +typedef struct { real r, i; } complex; +typedef struct { doublereal r, i; } doublecomplex; +typedef long int logical; +typedef short int shortlogical; +typedef char logical1; +typedef char integer1; +#ifdef INTEGER_STAR_8 /* Adjust for integer*8. */ +typedef long long longint; /* system-dependent */ +typedef unsigned long long ulongint; /* system-dependent */ +#define qbit_clear(a,b) ((a) & ~((ulongint)1 << (b))) +#define qbit_set(a,b) ((a) | ((ulongint)1 << (b))) +#endif + +#define TRUE_ (1) +#define FALSE_ (0) + +/* Extern is for use with -E */ +#ifndef Extern +#define Extern extern +#endif + +/* I/O stuff */ + +#ifdef f2c_i2 +/* for -i2 */ +typedef short flag; +typedef short ftnlen; +typedef short ftnint; +#else +typedef long int flag; +typedef long int ftnlen; +typedef long int ftnint; +#endif + +/*external read, write*/ +typedef struct +{ flag cierr; + ftnint ciunit; + flag ciend; + char *cifmt; + ftnint cirec; +} cilist; + +/*internal read, write*/ +typedef struct +{ flag icierr; + char *iciunit; + flag iciend; + char *icifmt; + ftnint icirlen; + ftnint icirnum; +} icilist; + +/*open*/ +typedef struct +{ flag oerr; + ftnint ounit; + char *ofnm; + ftnlen ofnmlen; + char *osta; + char *oacc; + char *ofm; + ftnint orl; + char *oblnk; +} olist; + +/*close*/ +typedef struct +{ flag cerr; + ftnint cunit; + char *csta; +} cllist; + +/*rewind, backspace, endfile*/ +typedef struct +{ flag aerr; + ftnint aunit; +} alist; + +/* inquire */ +typedef struct +{ flag inerr; + ftnint inunit; + char *infile; + ftnlen infilen; + ftnint *inex; /*parameters in standard's order*/ + ftnint *inopen; + ftnint *innum; + ftnint *innamed; + char *inname; + ftnlen innamlen; + char *inacc; + ftnlen inacclen; + char *inseq; + ftnlen inseqlen; + char *indir; + ftnlen indirlen; + char *infmt; + ftnlen infmtlen; + char *inform; + ftnint informlen; + char *inunf; + ftnlen inunflen; + ftnint *inrecl; + ftnint *innrec; + char *inblank; + ftnlen inblanklen; +} inlist; + +#define VOID void + +union Multitype { /* for multiple entry points */ + integer1 g; + shortint h; + integer i; + /* longint j; */ + real r; + doublereal d; + complex c; + doublecomplex z; + }; + +typedef union Multitype Multitype; + +/*typedef long int Long;*/ /* No longer used; formerly in Namelist */ + +struct Vardesc { /* for Namelist */ + char *name; + char *addr; + ftnlen *dims; + int type; + }; +typedef struct Vardesc Vardesc; + +struct Namelist { + char *name; + Vardesc **vars; + int nvars; + }; +typedef struct Namelist Namelist; + +#define abs(x) ((x) >= 0 ? (x) : -(x)) +#define dabs(x) (doublereal)abs(x) + + +#ifndef min +#define min(a,b) ((a) <= (b) ? (a) : (b)) +#endif + +#ifndef max +#define max(a,b) ((a) >= (b) ? (a) : (b)) +#endif + +#define dmin(a,b) (doublereal)min(a,b) +#define dmax(a,b) (doublereal)max(a,b) +#define bit_test(a,b) ((a) >> (b) & 1) +#define bit_clear(a,b) ((a) & ~((uinteger)1 << (b))) +#define bit_set(a,b) ((a) | ((uinteger)1 << (b))) + +/* procedure parameter types for -A and -C++ */ + +#define F2C_proc_par_types 1 +#ifdef __cplusplus +typedef int /* Unknown procedure type */ (*U_fp)(...); +typedef shortint (*J_fp)(...); +typedef integer (*I_fp)(...); +typedef real (*R_fp)(...); +typedef doublereal (*D_fp)(...), (*E_fp)(...); +typedef /* Complex */ VOID (*C_fp)(...); +typedef /* Double Complex */ VOID (*Z_fp)(...); +typedef logical (*L_fp)(...); +typedef shortlogical (*K_fp)(...); +typedef /* Character */ VOID (*H_fp)(...); +typedef /* Subroutine */ int (*S_fp)(...); +#else +typedef int /* Unknown procedure type */ (*U_fp)(); +typedef shortint (*J_fp)(); +typedef integer (*I_fp)(); +typedef real (*R_fp)(); +typedef doublereal (*D_fp)(), (*E_fp)(); +typedef /* Complex */ VOID (*C_fp)(); +typedef /* Double Complex */ VOID (*Z_fp)(); +typedef logical (*L_fp)(); +typedef shortlogical (*K_fp)(); +typedef /* Character */ VOID (*H_fp)(); +typedef /* Subroutine */ int (*S_fp)(); +#endif +/* E_fp is for real functions when -R is not specified */ +typedef VOID C_f; /* complex function */ +typedef VOID H_f; /* character function */ +typedef VOID Z_f; /* double complex function */ +typedef doublereal E_f; /* real function with -R not specified */ + +/* undef any lower-case symbols that your C compiler predefines, e.g.: */ + +#ifndef Skip_f2c_Undefs +#undef cray +#undef gcos +#undef mc68010 +#undef mc68020 +#undef mips +#undef pdp11 +#undef sgi +#undef sparc +#undef sun +#undef sun2 +#undef sun3 +#undef sun4 +#undef u370 +#undef u3b +#undef u3b2 +#undef u3b5 +#undef unix +#undef vax +#endif +#endif diff --git a/macros/ASTManagement/%trycatch_string.sci b/macros/ASTManagement/%trycatch_string.sci index e7c4f24d..fc787595 100644 --- a/macros/ASTManagement/%trycatch_string.sci +++ b/macros/ASTManagement/%trycatch_string.sci @@ -1,17 +1,17 @@ -function txt=%trycatch_string(p) -//overloading function for "trycatch" type tlist string function -// -//fields: -// trystat : list('EOL') (the instructions list) -// catchstat : list('EOL') (the instructions list on error) - -// FIXME: catch statement should be handled : how ? -// txt=['Statements' -// ' '+objectlist2string(p.trystat) -// 'CatchStatements' -// ' '+objectlist2string(p.catchstat) -// 'EndProgram' -// ] - - txt = objectlist2string(p.trystat); -endfunction +function txt=%trycatch_string(p) +//overloading function for "trycatch" type tlist string function +// +//fields: +// trystat : list('EOL') (the instructions list) +// catchstat : list('EOL') (the instructions list on error) + +// FIXME: catch statement should be handled : how ? +// txt=['Statements' +// ' '+objectlist2string(p.trystat) +// 'CatchStatements' +// ' '+objectlist2string(p.catchstat) +// 'EndProgram' +// ] + + txt = objectlist2string(p.trystat); +endfunction diff --git a/macros/ASTManagement/Operator2FunName.sci b/macros/ASTManagement/Operator2FunName.sci index 1aa934cb..18878ebf 100644 --- a/macros/ASTManagement/Operator2FunName.sci +++ b/macros/ASTManagement/Operator2FunName.sci @@ -1,119 +1,119 @@ function FunName = Operator2FunName(OperatorName); -// ----------------------------------------------------------------- -// Returns the function name corresponding to the input operator. -// From intmacr2tree.c we have: -// char *operators[]={"+","-","*",".*","*.",".*.","/","./","/.","./.", -// "\\",".\\","\\.",".\\.","^","==","<",">","<=",">=","~=", -// ":","rc","ins","ext","'","cc","|","&","~",".^",".'","cceol"}; -// I also added "<>". -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 29-May-2007 -- Nutricato Raffaele: Changed code into a function. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -//NUT: non e' inserito il "\" verifica come mai. -//NUT: il ".\" l'ho inserito io +// ----------------------------------------------------------------- +// Returns the function name corresponding to the input operator. +// From intmacr2tree.c we have: +// char *operators[]={"+","-","*",".*","*.",".*.","/","./","/.","./.", +// "\\",".\\","\\.",".\\.","^","==","<",">","<=",">=","~=", +// ":","rc","ins","ext","'","cc","|","&","~",".^",".'","cceol"}; +// I also added "<>". +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 29-May-2007 -- Nutricato Raffaele: Changed code into a function. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -FuncPrefix = 'Op'; -FuncSuffix = ''; - -if (OperatorName == '+') - FunName = FuncPrefix+'Plus'+FuncSuffix; -elseif (OperatorName == '-') - FunName = FuncPrefix+'Minus'+FuncSuffix; -elseif (OperatorName == '*') - FunName = FuncPrefix+'Star'+FuncSuffix; -elseif (OperatorName == '.*') - FunName = FuncPrefix+'DotStar'+FuncSuffix; -elseif (OperatorName == '*.') - PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); - error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); -elseif (OperatorName == '.*.') - PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); - error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); -elseif (OperatorName == '/') - FunName = FuncPrefix+'Slash'+FuncSuffix; -elseif (OperatorName == './') - FunName = FuncPrefix+'DotSlash'+FuncSuffix; -elseif (OperatorName == '/.') - PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); - error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); -elseif (OperatorName == './.') - PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); - error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); -elseif (OperatorName == '.\') - FunName = FuncPrefix+'DotBackSlash'+FuncSuffix; -elseif (OperatorName == '\') - //PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); +//NUT: non e' inserito il "\" verifica come mai. +//NUT: il ".\" l'ho inserito io + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +FuncPrefix = 'Op'; +FuncSuffix = ''; + +if (OperatorName == '+') + FunName = FuncPrefix+'Plus'+FuncSuffix; +elseif (OperatorName == '-') + FunName = FuncPrefix+'Minus'+FuncSuffix; +elseif (OperatorName == '*') + FunName = FuncPrefix+'Star'+FuncSuffix; +elseif (OperatorName == '.*') + FunName = FuncPrefix+'DotStar'+FuncSuffix; +elseif (OperatorName == '*.') + PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); + error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); +elseif (OperatorName == '.*.') + PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); + error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); +elseif (OperatorName == '/') + FunName = FuncPrefix+'Slash'+FuncSuffix; +elseif (OperatorName == './') + FunName = FuncPrefix+'DotSlash'+FuncSuffix; +elseif (OperatorName == '/.') + PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); + error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); +elseif (OperatorName == './.') + PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); + error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); +elseif (OperatorName == '.\') + FunName = FuncPrefix+'DotBackSlash'+FuncSuffix; +elseif (OperatorName == '\') + //PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); //SCI2Cerror(' '); - FunName = FuncPrefix+'BackSlash'+FuncSuffix; -elseif (OperatorName == '.\') - PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); - error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); -elseif (OperatorName == '\.') - PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); - error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); -elseif (OperatorName == '.\.') - PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); - error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); -elseif (OperatorName == '^') - FunName = FuncPrefix+'Hat'+FuncSuffix; -elseif (OperatorName == '.^') - FunName = FuncPrefix+'DotHat'+FuncSuffix; -elseif (OperatorName == '''') - FunName = FuncPrefix+'Apex'+FuncSuffix; -elseif (OperatorName == '.''') - FunName = FuncPrefix+'DotApex'+FuncSuffix; -elseif (OperatorName == '==') - FunName = FuncPrefix+'LogEq'+FuncSuffix; -elseif (OperatorName == '<') - FunName = FuncPrefix+'LogLt'+FuncSuffix; -elseif (OperatorName == '>') - FunName = FuncPrefix+'LogGt'+FuncSuffix; -elseif (OperatorName == '<=') - FunName = FuncPrefix+'LogLe'+FuncSuffix; -elseif (OperatorName == '>=') - FunName = FuncPrefix+'LogGe'+FuncSuffix; -elseif (OperatorName == '~=') - FunName = FuncPrefix+'LogNe'+FuncSuffix; -elseif (OperatorName == '<>') - FunName = FuncPrefix+'LogNe'+FuncSuffix; -elseif (OperatorName == '|') - FunName = FuncPrefix+'LogOr'+FuncSuffix; -elseif (OperatorName == '&') - FunName = FuncPrefix+'LogAnd'+FuncSuffix; -elseif (OperatorName == '~') - FunName = FuncPrefix+'LogNot'+FuncSuffix; -elseif (OperatorName == ':') - FunName = FuncPrefix+'Colon'+FuncSuffix; -elseif (OperatorName == 'rc') - FunName = 'OpRc'; -elseif (OperatorName == 'cc') - FunName = 'OpCc'; -elseif (OperatorName == 'ins') - FunName = 'OpIns'; -elseif (OperatorName == 'ext') - FunName = 'OpExt'; -elseif (OperatorName == 'cceol') - PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); - error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); -else - PrintStringInfo('SCI2CERROR: Unknown Operator ""'+OperatorName+'.','','stout','y'); - error(9999, 'SCI2CERROR: Unknown Operator ""'+OperatorName+'.'); -end - -endfunction + FunName = FuncPrefix+'BackSlash'+FuncSuffix; +elseif (OperatorName == '.\') + PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); + error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); +elseif (OperatorName == '\.') + PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); + error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); +elseif (OperatorName == '.\.') + PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); + error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); +elseif (OperatorName == '^') + FunName = FuncPrefix+'Hat'+FuncSuffix; +elseif (OperatorName == '.^') + FunName = FuncPrefix+'DotHat'+FuncSuffix; +elseif (OperatorName == '''') + FunName = FuncPrefix+'Apex'+FuncSuffix; +elseif (OperatorName == '.''') + FunName = FuncPrefix+'DotApex'+FuncSuffix; +elseif (OperatorName == '==') + FunName = FuncPrefix+'LogEq'+FuncSuffix; +elseif (OperatorName == '<') + FunName = FuncPrefix+'LogLt'+FuncSuffix; +elseif (OperatorName == '>') + FunName = FuncPrefix+'LogGt'+FuncSuffix; +elseif (OperatorName == '<=') + FunName = FuncPrefix+'LogLe'+FuncSuffix; +elseif (OperatorName == '>=') + FunName = FuncPrefix+'LogGe'+FuncSuffix; +elseif (OperatorName == '~=') + FunName = FuncPrefix+'LogNe'+FuncSuffix; +elseif (OperatorName == '<>') + FunName = FuncPrefix+'LogNe'+FuncSuffix; +elseif (OperatorName == '|') + FunName = FuncPrefix+'LogOr'+FuncSuffix; +elseif (OperatorName == '&') + FunName = FuncPrefix+'LogAnd'+FuncSuffix; +elseif (OperatorName == '~') + FunName = FuncPrefix+'LogNot'+FuncSuffix; +elseif (OperatorName == ':') + FunName = FuncPrefix+'Colon'+FuncSuffix; +elseif (OperatorName == 'rc') + FunName = 'OpRc'; +elseif (OperatorName == 'cc') + FunName = 'OpCc'; +elseif (OperatorName == 'ins') + FunName = 'OpIns'; +elseif (OperatorName == 'ext') + FunName = 'OpExt'; +elseif (OperatorName == 'cceol') + PrintStringInfo('SCI2CERROR: Operator ""'+OperatorName+'"" not supported.','','stout','y'); + error(9999, 'SCI2CERROR: Operator ""'+OperatorName+'"" not supported.'); +else + PrintStringInfo('SCI2CERROR: Unknown Operator ""'+OperatorName+'.','','stout','y'); + error(9999, 'SCI2CERROR: Unknown Operator ""'+OperatorName+'.'); +end + +endfunction diff --git a/macros/CCodeGeneration/C_ForExpression.sci b/macros/CCodeGeneration/C_ForExpression.sci index 4e75c066..383d53ea 100644 --- a/macros/CCodeGeneration/C_ForExpression.sci +++ b/macros/CCodeGeneration/C_ForExpression.sci @@ -103,7 +103,7 @@ elseif (SharedInfo.ForExpr.AssignmentFun == SharedInfo.CFunId.OpColon) // #RNU_RES_E if (length(C_Strings(cntstr)) == 0) C_Strings(cntstr) = ' '; // RNU for Bruno: If I don't do that I get a PrintStringInfo error related to mputstr. - // Function not defined for given argument type(s), + // Function not defined for given argument type(s), // check arguments or define function %0_mputstr for overloading. end PrintStringInfo(string(C_Strings(cntstr)),CPass1ForEpilFileName ,'file','y','n'); diff --git a/macros/CFiles/sci2ccode/SCI2Cconvol.c b/macros/CFiles/sci2ccode/SCI2Cconvol.c index 989cb9de..5042e435 100644 --- a/macros/CFiles/sci2ccode/SCI2Cconvol.c +++ b/macros/CFiles/sci2ccode/SCI2Cconvol.c @@ -1,2 +1,2 @@ #include "SCI2Cconvol.h" - + diff --git a/macros/CFiles/sci2cincludes/OpLogAnd.h b/macros/CFiles/sci2cincludes/OpLogAnd.h index 8d61a59c..058027bf 100644 --- a/macros/CFiles/sci2cincludes/OpLogAnd.h +++ b/macros/CFiles/sci2cincludes/OpLogAnd.h @@ -13,11 +13,11 @@ #include "floatComplex.h" #include "doubleComplex.h" -#define s0s0OpLogAnds0(in1,in2) \ +#define s0s0OpLogAnds0(in1,in2) \ (float) (in1 && in2) void s2s0OpLogAnds2(float* in1, int* in1Size, float in2, float* out); -#define d0d0OpLogAndd0(in1,in2) \ +#define d0d0OpLogAndd0(in1,in2) \ (double) (in1 && in2) void d2d0OpLogAndd2(double* in1, int* in1Size, double in2, double* out); #endif /* !__OPLOGAND_H__ */ diff --git a/macros/CFiles/sci2cincludes/OpLogGe.h b/macros/CFiles/sci2cincludes/OpLogGe.h index ddc9631f..8b94d209 100644 --- a/macros/CFiles/sci2cincludes/OpLogGe.h +++ b/macros/CFiles/sci2cincludes/OpLogGe.h @@ -17,11 +17,11 @@ #define __OPLOGGE_H__ -#define s0s0OpLogGes0(in1,in2) \ +#define s0s0OpLogGes0(in1,in2) \ (float) (in1 >= in2) void s2s0OpLogGes2(float* in1, int* in1Size, float in2, float* out); -#define d0d0OpLogGed0(in1,in2) \ +#define d0d0OpLogGed0(in1,in2) \ (double) (in1 >= in2) void d2d0OpLogGed2(double* in1, int* in1Size, double in2, double* out); diff --git a/macros/CFiles/sci2cincludes/OpLogLe.h b/macros/CFiles/sci2cincludes/OpLogLe.h index 7bc0c3af..e3849ab9 100644 --- a/macros/CFiles/sci2cincludes/OpLogLe.h +++ b/macros/CFiles/sci2cincludes/OpLogLe.h @@ -18,11 +18,11 @@ #define __OPLOGLE_H__ -#define s0s0OpLogLes0(in1,in2) \ +#define s0s0OpLogLes0(in1,in2) \ (float) (in1 <= in2) void s2s0OpLogLes2(float* in1, int* in1Size, float in2, float* out); -#define d0d0OpLogLed0(in1,in2) \ +#define d0d0OpLogLed0(in1,in2) \ (double) (in1 <= in2) void d2d0OpLogLed2(double* in1, int* in1Size, double in2, double* out); diff --git a/macros/CFiles/sci2cincludes/OpLogLt.h b/macros/CFiles/sci2cincludes/OpLogLt.h index 2962f151..d2f76faf 100644 --- a/macros/CFiles/sci2cincludes/OpLogLt.h +++ b/macros/CFiles/sci2cincludes/OpLogLt.h @@ -16,11 +16,11 @@ #ifndef __OPLOGLT_H__ #define __OPLOGLT_H__ -#define s0s0OpLogLts0(in1,in2) \ +#define s0s0OpLogLts0(in1,in2) \ (float) (in1 < in2) void s2s0OpLogLts2(float* in1, int* in1Size, float in2, float* out); -#define d0d0OpLogLtd0(in1,in2) \ +#define d0d0OpLogLtd0(in1,in2) \ (double) (in1 < in2) void d2d0OpLogLtd2(double* in1, int* in1Size, double in2, double* out); diff --git a/macros/CFiles/sci2cincludes/OpLogOr.h b/macros/CFiles/sci2cincludes/OpLogOr.h index 331cae78..30d7b982 100644 --- a/macros/CFiles/sci2cincludes/OpLogOr.h +++ b/macros/CFiles/sci2cincludes/OpLogOr.h @@ -13,11 +13,11 @@ #include "floatComplex.h" #include "doubleComplex.h" -#define s0s0OpLogOrs0(in1,in2) \ +#define s0s0OpLogOrs0(in1,in2) \ (float) (in1 || in2) void s2s0OpLogOrs2(float* in1, int* in1Size, float in2, float* out); -#define d0d0OpLogOrd0(in1,in2) \ +#define d0d0OpLogOrd0(in1,in2) \ (double) (in1 || in2) void d2d0OpLogOrd2(double* in1, int* in1Size, double in2, double* out); #endif /* !__OPLOGOR_H__ */ diff --git a/macros/CFiles/sci2cincludes/SCI2CMacroInterface.h b/macros/CFiles/sci2cincludes/SCI2CMacroInterface.h index 4e129a76..3815e291 100644 --- a/macros/CFiles/sci2cincludes/SCI2CMacroInterface.h +++ b/macros/CFiles/sci2cincludes/SCI2CMacroInterface.h @@ -1,281 +1,281 @@ -/* -** ---------------------- -** --- Class OPEQUAL. --- -** ---------------------- -*/ -/* --- Equal. --- */ -#define s0OpEquals0(in) \ +/* +** ---------------------- +** --- Class OPEQUAL. --- +** ---------------------- +*/ +/* --- Equal. --- */ +#define s0OpEquals0(in) \ sOpEquals1(in); - -#define s2OpEquals2(inptr,insizeptr,outptr) \ + +#define s2OpEquals2(inptr,insizeptr,outptr) \ sOpEquala1(inptr, insizeptr[0]*insizeptr[1], outptr); -#define d0OpEquald0(in) \ +#define d0OpEquald0(in) \ dOpEquals1(in); - -#define d2OpEquald2(inptr,insizeptr,outptr) \ + +#define d2OpEquald2(inptr,insizeptr,outptr) \ dOpEquala1(inptr, insizeptr[0]*insizeptr[1], outptr); - -/* -// --------------------- -// --- Class OPSTAR. --- -// --------------------- -*/ -/* --- OpStar. --- -#define s0s0OpStars0(in1,in2) \ -ssOpStarss1(in1,in2); - -#define s0s2OpStars2(in1,inptr2,insizeptr2,outptr) \ + +/* +// --------------------- +// --- Class OPSTAR. --- +// --------------------- +*/ +/* --- OpStar. --- +#define s0s0OpStars0(in1,in2) \ +ssOpStarss1(in1,in2); + +#define s0s2OpStars2(in1,inptr2,insizeptr2,outptr) \ ssOpStarsa1(in1,inptr2, insizeptr2[0]*insizeptr2[1], outptr); - -#define s2s0OpStars2(inptr2,insizeptr2,in1,outptr) \ + +#define s2s0OpStars2(inptr2,insizeptr2,in1,outptr) \ ssOpStarsa1(in1,inptr2, insizeptr2[0]*insizeptr2[1], outptr);*/ -/*questa su e' una macro - -#define s2s2OpStars2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ -ssOpStaraa1(inptr1,insizeptr1[0],insizeptr1[1], inptr2, insizeptr2[1], outptr); - -#define d0d0OpStard0(in1,in2) \ -ddOpStarss1(in1,in2); - -#define d0d2OpStard2(in1,inptr2,insizeptr2,outptr) \ +/*questa su e' una macro + +#define s2s2OpStars2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ +ssOpStaraa1(inptr1,insizeptr1[0],insizeptr1[1], inptr2, insizeptr2[1], outptr); + +#define d0d0OpStard0(in1,in2) \ +ddOpStarss1(in1,in2); + +#define d0d2OpStard2(in1,inptr2,insizeptr2,outptr) \ ddOpStarsa1(in1,inptr2, (insizeptr2[0]) * (insizeptr2[1]), outptr) - -#define d2d0OpStard2(inptr2,insizeptr2,in1,outptr) \ + +#define d2d0OpStard2(inptr2,insizeptr2,in1,outptr) \ ddOpStarsa1(in1,inptr2, (insizeptr2[0]) * (insizeptr2[1]), outptr)*/ -/*questa su e' una macro - -#define d2d2OpStard2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ -ddOpStaraa1(inptr1,insizeptr1[0],insizeptr1[1], inptr2, insizeptr2[1], outptr);*/ - -/* -// --------------------- -// --- Class OPPLUS. --- -// --------------------- -*/ -/* --- OpPlus. ---*/ -/*RN volendo puoi fare una sola macro del tipo sa1() che serve per tutte le operazioni -#define s0s0OpPluss0(in1,in2) \ -ssOpPlusss1(in1,in2); - -#define s0s2OpPluss2(in1,inptr2,insizeptr2,outptr) \ +/*questa su e' una macro + +#define d2d2OpStard2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ +ddOpStaraa1(inptr1,insizeptr1[0],insizeptr1[1], inptr2, insizeptr2[1], outptr);*/ + +/* +// --------------------- +// --- Class OPPLUS. --- +// --------------------- +*/ +/* --- OpPlus. ---*/ +/*RN volendo puoi fare una sola macro del tipo sa1() che serve per tutte le operazioni +#define s0s0OpPluss0(in1,in2) \ +ssOpPlusss1(in1,in2); + +#define s0s2OpPluss2(in1,inptr2,insizeptr2,outptr) \ ssOpPlussa1(in1,inptr2, insizeptr2[0]*insizeptr2[1], outptr); - -#define s2s2OpPluss2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ + +#define s2s2OpPluss2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ ssOpPlusaa1(inptr1,inptr2, insizeptr1[0]*insizeptr1[1], outptr) -#define s2s0OpPluss2(inptr2,insizeptr2,in1,outptr) \ +#define s2s0OpPluss2(inptr2,insizeptr2,in1,outptr) \ ssOpPlussa1(in1,inptr2, insizeptr2[0]*insizeptr2[1], outptr);*/ -/*questa su e' una macro - -#define d0d0OpPlusd0(in1,in2) \ -ddOpPlusss1(in1,in2); - -#define d2d2OpPlusd2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ +/*questa su e' una macro + +#define d0d0OpPlusd0(in1,in2) \ +ddOpPlusss1(in1,in2); + +#define d2d2OpPlusd2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ ddOpPlusaa1(inptr1,inptr2, insizeptr1[0]*insizeptr1[1], outptr); - -#define d0d2OpPlusd2(in1,inptr2,insizeptr2,outptr) \ + +#define d0d2OpPlusd2(in1,inptr2,insizeptr2,outptr) \ ddOpPlussa1(in1,inptr2, (insizeptr2[0]) * (insizeptr2[1]), outptr) - -#define d2d0OpPlusd2(inptr2,insizeptr2,in1,outptr) \ + +#define d2d0OpPlusd2(inptr2,insizeptr2,in1,outptr) \ ddOpPlussa1(in1,inptr2, (insizeptr2[0]) * (insizeptr2[1]), outptr)*/ -/*questa su e' una macro */ - - -/* --- OpDotStar. ---*/ -/*#define s0s0OpDotStars0(in1,in2) \ -ssOpDotStarss1(in1,in2); - -#define s0s2OpDotStars2(in1,inptr2,insizeptr2,outptr) \ +/*questa su e' una macro */ + + +/* --- OpDotStar. ---*/ +/*#define s0s0OpDotStars0(in1,in2) \ +ssOpDotStarss1(in1,in2); + +#define s0s2OpDotStars2(in1,inptr2,insizeptr2,outptr) \ ssOpDotStarsa1(in1,inptr2, insizeptr2[0]*insizeptr2[1], outptr); - -#define s2s2OpDotStars2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ + +#define s2s2OpDotStars2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ ssOpDotStaraa1(inptr1,inptr2, insizeptr1[0]*insizeptr1[1], outptr) -#define s2s0OpDotStars2(inptr2,insizeptr2,in1,outptr) \ +#define s2s0OpDotStars2(inptr2,insizeptr2,in1,outptr) \ ssOpDotStarsa1(in1,inptr2, insizeptr2[0]*insizeptr2[1], outptr); -questa su e' una macro */ - -/*#define d0d0OpDotStard0(in1,in2) \ -ddOpDotStarss1(in1,in2); - -#define d2d2OpDotStard2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ +questa su e' una macro */ + +/*#define d0d0OpDotStard0(in1,in2) \ +ddOpDotStarss1(in1,in2); + +#define d2d2OpDotStard2(inptr1,insizeptr1,inptr2,insizeptr2,outptr) \ ddOpDotStaraa1(inptr1,inptr2, insizeptr1[0]*insizeptr1[1], outptr); - -#define d0d2OpDotStard2(in1,inptr2,insizeptr2,outptr) \ + +#define d0d2OpDotStard2(in1,inptr2,insizeptr2,outptr) \ ddOpDotStarsa1(in1,inptr2, (insizeptr2[0]) * (insizeptr2[1]), outptr) - -#define d2d0OpDotStard2(inptr2,insizeptr2,in1,outptr) \ + +#define d2d0OpDotStard2(inptr2,insizeptr2,in1,outptr) \ ddOpDotStarsa1(in1,inptr2, (insizeptr2[0]) * (insizeptr2[1]), outptr) -questa su e' una macro */ - -/* -// --------------------- -// --- Class ^. --- -// --------------------- -*/ -/*RN DA FARE ANCORA forse la si puo' integrare dentro le operazioni OPPLUS*/ - -/* -// --------------------- -// --- Class OPAPEX. --- -// --------------------- -*/ -/* --- OpApex. --- -#define s0OpApexs0(in) \ -sOpApexs(in); - -#define d0OpApexd0(in) \ -dOpApexs(in); - -#define s2OpApexs2(inptr,insizeptr,outptr) \ +questa su e' una macro */ + +/* +// --------------------- +// --- Class ^. --- +// --------------------- +*/ +/*RN DA FARE ANCORA forse la si puo' integrare dentro le operazioni OPPLUS*/ + +/* +// --------------------- +// --- Class OPAPEX. --- +// --------------------- +*/ +/* --- OpApex. --- +#define s0OpApexs0(in) \ +sOpApexs(in); + +#define d0OpApexd0(in) \ +dOpApexs(in); + +#define s2OpApexs2(inptr,insizeptr,outptr) \ sOpApexa(inptr, insizeptr[0],insizeptr[1], outptr); -#define d2OpApexd2(inptr,insizeptr,outptr) \ +#define d2OpApexd2(inptr,insizeptr,outptr) \ dOpApexa(inptr, insizeptr[0],insizeptr[1], outptr); -*/ -/* -// --------------------- -// --- Class SIN. --- -// --------------------- -*/ -/* --- sin. ---*/ /* -#define s0sins0(inptr) \ +*/ +/* +// --------------------- +// --- Class SIN. --- +// --------------------- +*/ +/* --- sin. ---*/ /* +#define s0sins0(inptr) \ ssins(inptr); - -#define d0sind0(inptr) \ + +#define d0sind0(inptr) \ dsins(inptr); - -#define c0sinc0(inptr) \ + +#define c0sinc0(inptr) \ csins(inptr); - -#define z0sinz0(inptr) \ + +#define z0sinz0(inptr) \ zsins(inptr); - -#define s2sins2(inptr,insizeptr,outptr) \ + +#define s2sins2(inptr,insizeptr,outptr) \ ssina(inptr, insizeptr[0]*insizeptr[1], outptr); -#define d2sind2(inptr,insizeptr,outptr) \ +#define d2sind2(inptr,insizeptr,outptr) \ dsina(inptr, insizeptr[0]*insizeptr[1], outptr); - -#define c2sinc2(inptr,insizeptr,outptr) \ + +#define c2sinc2(inptr,insizeptr,outptr) \ csina(inptr, insizeptr[0]*insizeptr[1], outptr); - -#define z2sinz2(inptr,insizeptr,outptr) \ -zsina(inptr, insizeptr[0]*insizeptr[1], outptr); - */ -/* --- cos. ---*/ /* -#define s0coss0(inptr) \ + +#define z2sinz2(inptr,insizeptr,outptr) \ +zsina(inptr, insizeptr[0]*insizeptr[1], outptr); +*/ +/* --- cos. ---*/ /* +#define s0coss0(inptr) \ scoss(inptr); - -#define d0cosd0(inptr) \ + +#define d0cosd0(inptr) \ dcoss(inptr); - -#define c0cosc0(inptr) \ + +#define c0cosc0(inptr) \ ccoss(inptr); - -#define z0cosz0(inptr) \ + +#define z0cosz0(inptr) \ zcoss(inptr); - -#define s2coss2(inptr,insizeptr,outptr) \ + +#define s2coss2(inptr,insizeptr,outptr) \ scosa(inptr, insizeptr[0]*insizeptr[1], outptr); -#define d2cosd2(inptr,insizeptr,outptr) \ +#define d2cosd2(inptr,insizeptr,outptr) \ dcosa(inptr, insizeptr[0]*insizeptr[1], outptr); - -#define c2cosc2(inptr,insizeptr,outptr) \ + +#define c2cosc2(inptr,insizeptr,outptr) \ ccosa(inptr, insizeptr[0]*insizeptr[1], outptr); -#define z2cosz2(inptr,insizeptr,outptr) \ +#define z2cosz2(inptr,insizeptr,outptr) \ zcosa(inptr, insizeptr[0]*insizeptr[1], outptr); - */ -/* --- sinh. ---*/ /* -#define s0sinhs0(inptr) \ +*/ +/* --- sinh. ---*/ /* +#define s0sinhs0(inptr) \ ssinhs(inptr); - -#define d0sinhd0(inptr) \ + +#define d0sinhd0(inptr) \ dsinhs(inptr); - -#define c0sinhc0(inptr) \ + +#define c0sinhc0(inptr) \ csinhs(inptr); - -#define z0sinhz0(inptr) \ + +#define z0sinhz0(inptr) \ zsins(inptr); - -#define s2sinhs2(inptr,insizeptr,outptr) \ + +#define s2sinhs2(inptr,insizeptr,outptr) \ ssinha(inptr, insizeptr[0]*insizeptr[1], outptr); -#define d2sinhd2(inptr,insizeptr,outptr) \ +#define d2sinhd2(inptr,insizeptr,outptr) \ dsinha(inptr, insizeptr[0]*insizeptr[1], outptr); - -#define c2sinhc2(inptr,insizeptr,outptr) \ + +#define c2sinhc2(inptr,insizeptr,outptr) \ csinha(inptr, insizeptr[0]*insizeptr[1], outptr); - -#define z2sinhz2(inptr,insizeptr,outptr) \ -zsinha(inptr, insizeptr[0]*insizeptr[1], outptr); - + +#define z2sinhz2(inptr,insizeptr,outptr) \ +zsinha(inptr, insizeptr[0]*insizeptr[1], outptr); + +*/ +/* +// --------------------- +// --- Class DISP. --- +// --------------------- +*//* +#define s0dispd0(invar) \ +sdisps2 (invar, #invar ); + +#define d0dispd0(invar) \ +ddisps2 (invar, #invar ); + +#define c0dispd0(invar) \ +cdisps2 (invar, #invar ); + +#define z0dispd0(invar) \ +zdisps2 (invar, #invar ); + +#define s2dispd0(invar,insize) \ +sdispa2 (invar, insize, #invar ); + +#define d2dispd0(invar,insize) \ +ddispa2 (invar, insize, #invar ); + +#define c2dispd0(invar,insize) \ +cdispa2 (invar, insize, #invar ); + +#define z2dispd0(invar,insize) \ +zdispa2 (invar, insize, #invar ); + +#define i2dispd0(invar,insize) \ +idispa2 (invar, insize, #invar );*/ +/* +// -------------------- +// --- Class ZEROS. --- +// -------------------- */ -/* -// --------------------- -// --- Class DISP. --- -// --------------------- -*//* -#define s0dispd0(invar) \ -sdisps2 (invar, #invar ); - -#define d0dispd0(invar) \ -ddisps2 (invar, #invar ); - -#define c0dispd0(invar) \ -cdisps2 (invar, #invar ); - -#define z0dispd0(invar) \ -zdisps2 (invar, #invar ); - -#define s2dispd0(invar,insize) \ -sdispa2 (invar, insize, #invar ); - -#define d2dispd0(invar,insize) \ -ddispa2 (invar, insize, #invar ); - -#define c2dispd0(invar,insize) \ -cdispa2 (invar, insize, #invar ); - -#define z2dispd0(invar,insize) \ -zdispa2 (invar, insize, #invar ); - -#define i2dispd0(invar,insize) \ -idispa2 (invar, insize, #invar );*/ -/* -// -------------------- -// --- Class ZEROS. --- -// -------------------- -*/ -/* --- ones. ---*/ /* -#define d0d0onesd2(inptr1,inptr2,outptr) \ -ddonesss1(inptr1, inptr2, outptr); - -#define onesd0() \ -1 - -#define d0onesd0(in1) \ -1 - -#define d2onesd2(inptr,insizeptr,outptr) \ -ddonesss1(insizeptr[0], insizeptr[1], outptr); - -#define d0d0onesd2(inptr1,inptr2,outptr) \ -ddonesss1(inptr1, inptr2, outptr); - -#define s0s0oness2(inptr1,inptr2,outptr) \ -ssonesss1(inptr1, inptr2, outptr); - -#define oness0() \ -1 - -#define s0oness0(in1) \ -1 - -#define s2oness2(inptr,insizeptr,outptr) \ +/* --- ones. ---*/ /* +#define d0d0onesd2(inptr1,inptr2,outptr) \ +ddonesss1(inptr1, inptr2, outptr); + +#define onesd0() \ +1 + +#define d0onesd0(in1) \ +1 + +#define d2onesd2(inptr,insizeptr,outptr) \ +ddonesss1(insizeptr[0], insizeptr[1], outptr); + +#define d0d0onesd2(inptr1,inptr2,outptr) \ +ddonesss1(inptr1, inptr2, outptr); + +#define s0s0oness2(inptr1,inptr2,outptr) \ +ssonesss1(inptr1, inptr2, outptr); + +#define oness0() \ +1 + +#define s0oness0(in1) \ +1 + +#define s2oness2(inptr,insizeptr,outptr) \ ssonesss1(insizeptr[0], insizeptr[1], outptr); */ diff --git a/macros/CFiles/sci2cincludes/SCI2Cconvol.h b/macros/CFiles/sci2cincludes/SCI2Cconvol.h index 3fb3b9e9..de0a9b7b 100644 --- a/macros/CFiles/sci2cincludes/SCI2Cconvol.h +++ b/macros/CFiles/sci2cincludes/SCI2Cconvol.h @@ -7,9 +7,9 @@ ** ** Copyright Raffaele Nutricato 2007 */ - + #ifndef __CONVOL_H__ #define __CONVOL_H__ -#include "SCI2CMacroInterface.h" +#include "SCI2CMacroInterface.h" #endif /* !__CONVOL_H__ */ diff --git a/macros/CFiles/sci2cincludes/SCI2Cfft.h b/macros/CFiles/sci2cincludes/SCI2Cfft.h index f82b74b4..cff9c9c8 100644 --- a/macros/CFiles/sci2cincludes/SCI2Cfft.h +++ b/macros/CFiles/sci2cincludes/SCI2Cfft.h @@ -11,6 +11,6 @@ #ifndef __SCI2CFFT_H__ #define __SCI2CFFT_H__ -#include "SCI2CMacroInterface.h" +#include "SCI2CMacroInterface.h" #endif /* !__SCI2CFFT_H__ */ diff --git a/macros/ErrorMessages/EM_NanSize.sci b/macros/ErrorMessages/EM_NanSize.sci index 60877389..156bb9a0 100644 --- a/macros/ErrorMessages/EM_NanSize.sci +++ b/macros/ErrorMessages/EM_NanSize.sci @@ -1,82 +1,82 @@ -function EM_NanSize(ReportFileName) -// function EM_NanSize(ReportFileName) -// ----------------------------------------------------------------- -// -// Input data: -// //NUT: Add description here -// -// Output data: -// //NUT: Add description here -// -// Status: -// 13-Feb-2008 -- Raffaele Nutricato: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -PrintStringInfo(' ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Cannot initialize a local or global variable with a variable value',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: coming from a function or an operation.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: See code below:',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: a = 10;',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: b = 10;',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: c = a+b;',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: D = zeros(a,b); // Allowed',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: E = zeros(10,b); // Allowed',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: F = zeros(10,5); // Allowed',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: G = zeros(10,c); // Not Allowed because c value is not known at transation time.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: H = 10:c:9;// Not Allowed because c value is not known at transation time.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: The same problem arises in for loops.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: SCI2C forbids use of step values in ""for"" loops which come from ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: a function or an operation.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Always specify its value.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Example: ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Scilab Code:',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: unkstep = 2*cos(0); // It means that unkstep is not known at translation time.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: The code above is not allowed. You can change it as shown below:',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: unkstep = 2; // This time the value of unkstep is known at translation time.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: The reason for this limitation is related to the impossibility to generate optimized C code.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: when the step is unknown.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Look at the following example for more details,',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Scilab Code:;',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: If unkstep variable value is unkwnown it is not possible to generate',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: optimized C code.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Infact, if unkstep is >= 0, the correct C code is:',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: If unkstep is < 0 the correct C code is:',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for (cnt=10; cnt>=1; cnt+=unkstep)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Note how the condition cnt<=1 changes to cnt>=1.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: In order to take into account of this possibility ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: SCI2C translator should generate both codes and then ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: insert them into an if/else block as shown here: ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: if (unkstep >= 0)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: {',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: }',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: else{',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: {',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: }',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Of course it is not optimized C code.',ReportFileName,'both','y'); -PrintStringInfo(' ',ReportFileName,'both','y'); -SCI2Cerror(9999, 'SCI2CERROR: Cannot initialize a local or global variable with a variable value coming from a function or an operation.'); -endfunction +function EM_NanSize(ReportFileName) +// function EM_NanSize(ReportFileName) +// ----------------------------------------------------------------- +// +// Input data: +// //NUT: Add description here +// +// Output data: +// //NUT: Add description here +// +// Status: +// 13-Feb-2008 -- Raffaele Nutricato: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +PrintStringInfo(' ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Cannot initialize a local or global variable with a variable value',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: coming from a function or an operation.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: See code below:',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: a = 10;',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: b = 10;',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: c = a+b;',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: D = zeros(a,b); // Allowed',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: E = zeros(10,b); // Allowed',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: F = zeros(10,5); // Allowed',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: G = zeros(10,c); // Not Allowed because c value is not known at transation time.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: H = 10:c:9;// Not Allowed because c value is not known at transation time.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: The same problem arises in for loops.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: SCI2C forbids use of step values in ""for"" loops which come from ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: a function or an operation.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Always specify its value.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Example: ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Scilab Code:',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: unkstep = 2*cos(0); // It means that unkstep is not known at translation time.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: The code above is not allowed. You can change it as shown below:',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: unkstep = 2; // This time the value of unkstep is known at translation time.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: The reason for this limitation is related to the impossibility to generate optimized C code.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: when the step is unknown.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Look at the following example for more details,',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Scilab Code:;',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: If unkstep variable value is unkwnown it is not possible to generate',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: optimized C code.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Infact, if unkstep is >= 0, the correct C code is:',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: If unkstep is < 0 the correct C code is:',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for (cnt=10; cnt>=1; cnt+=unkstep)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Note how the condition cnt<=1 changes to cnt>=1.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: In order to take into account of this possibility ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: SCI2C translator should generate both codes and then ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: insert them into an if/else block as shown here: ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: if (unkstep >= 0)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: {',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: }',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: else{',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: {',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: }',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Of course it is not optimized C code.',ReportFileName,'both','y'); +PrintStringInfo(' ',ReportFileName,'both','y'); +SCI2Cerror(9999, 'SCI2CERROR: Cannot initialize a local or global variable with a variable value coming from a function or an operation.'); +endfunction diff --git a/macros/ErrorMessages/EM_UnknownStep.sci b/macros/ErrorMessages/EM_UnknownStep.sci index e9e37c2d..1413b977 100644 --- a/macros/ErrorMessages/EM_UnknownStep.sci +++ b/macros/ErrorMessages/EM_UnknownStep.sci @@ -1,70 +1,70 @@ -function EM_UnknownStep(ReportFileName) -// function EM_UnknownStep(ReportFileName) -// ----------------------------------------------------------------- -// -// Input data: -// //NUT: Add description here -// -// Output data: -// //NUT: Add description here -// -// Status: -// 13-Feb-2008 -- Raffaele Nutricato: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -PrintStringInfo(' ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: SCI2C forbids use of step values in ""for"" loops which come from ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: a function or an operation.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Always specify its value.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Example: ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Scilab Code:',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: unkstep = 2*cos(0); // It means that unkstep is not known at translation time.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: The code above is not allowed. You can change it as shown below:',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: unkstep = 2; // This time the value of unkstep is known at translation time.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: The reason for this limitation is related to the impossibility to generate optimized C code.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: when the step is unknown.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Look at the following example for more details,',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Scilab Code:;',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: If unkstep variable value is unkwnown it is not possible to generate',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: optimized C code.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Infact, if unkstep is >= 0, the correct C code is:',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: If unkstep is < 0 the correct C code is:',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for (cnt=10; cnt>=1; cnt+=unkstep)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Note how the condition cnt<=1 changes to cnt>=1.',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: In order to take into account of this possibility ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: SCI2C translator should generate both codes and then ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: insert them into an if/else block as shown here: ',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: if (unkstep >= 0)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: {',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: }',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: else{',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: {',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: }',ReportFileName,'both','y'); -PrintStringInfo('SCI2CERROR: Of course it is not optimized C code.',ReportFileName,'both','y'); -PrintStringInfo(' ',ReportFileName,'both','y'); -error(9999, 'SCI2C forbids use of step values in ""for"" loops which come from a function or an operation.'); -endfunction +function EM_UnknownStep(ReportFileName) +// function EM_UnknownStep(ReportFileName) +// ----------------------------------------------------------------- +// +// Input data: +// //NUT: Add description here +// +// Output data: +// //NUT: Add description here +// +// Status: +// 13-Feb-2008 -- Raffaele Nutricato: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +PrintStringInfo(' ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: SCI2C forbids use of step values in ""for"" loops which come from ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: a function or an operation.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Always specify its value.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Example: ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Scilab Code:',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: unkstep = 2*cos(0); // It means that unkstep is not known at translation time.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: The code above is not allowed. You can change it as shown below:',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: unkstep = 2; // This time the value of unkstep is known at translation time.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: The reason for this limitation is related to the impossibility to generate optimized C code.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: when the step is unknown.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Look at the following example for more details,',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Scilab Code:;',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for cnt=10:unkstep:1',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: end',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: If unkstep variable value is unkwnown it is not possible to generate',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: optimized C code.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Infact, if unkstep is >= 0, the correct C code is:',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: If unkstep is < 0 the correct C code is:',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for (cnt=10; cnt>=1; cnt+=unkstep)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Note how the condition cnt<=1 changes to cnt>=1.',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: In order to take into account of this possibility ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: SCI2C translator should generate both codes and then ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: insert them into an if/else block as shown here: ',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: if (unkstep >= 0)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: {',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: }',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: else{',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: {',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: for (cnt=10;cnt<=1;cnt+=unkstep)',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: disp(cnt);',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: }',ReportFileName,'both','y'); +PrintStringInfo('SCI2CERROR: Of course it is not optimized C code.',ReportFileName,'both','y'); +PrintStringInfo(' ',ReportFileName,'both','y'); +error(9999, 'SCI2C forbids use of step values in ""for"" loops which come from a function or an operation.'); +endfunction diff --git a/macros/ErrorMessages/EM_ZeroSize.sci b/macros/ErrorMessages/EM_ZeroSize.sci index 7cee5b9f..dc463e24 100644 --- a/macros/ErrorMessages/EM_ZeroSize.sci +++ b/macros/ErrorMessages/EM_ZeroSize.sci @@ -1,27 +1,27 @@ -function EM_ZeroSize(ReportFileName) -// function EM_ZeroSize(ReportFileName) -// ----------------------------------------------------------------- -// -// Input data: -// //NUT: Add description here -// -// Output data: -// //NUT: Add description here -// -// Status: -// 13-Feb-2008 -- Raffaele Nutricato: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -PrintStringInfo('SCI2CERROR: Cannot handle zero-size arrays.',ReportFileName,'both','y'); -PrintStringInfo(' ',ReportFileName,'both','y'); -error(9999, 'SCI2CERROR: Cannot handle zero-size arrays.'); - -endfunction +function EM_ZeroSize(ReportFileName) +// function EM_ZeroSize(ReportFileName) +// ----------------------------------------------------------------- +// +// Input data: +// //NUT: Add description here +// +// Output data: +// //NUT: Add description here +// +// Status: +// 13-Feb-2008 -- Raffaele Nutricato: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +PrintStringInfo('SCI2CERROR: Cannot handle zero-size arrays.',ReportFileName,'both','y'); +PrintStringInfo(' ',ReportFileName,'both','y'); +error(9999, 'SCI2CERROR: Cannot handle zero-size arrays.'); + +endfunction diff --git a/macros/FunctionAnnotation/FA_ADD.sci b/macros/FunctionAnnotation/FA_ADD.sci index 4193422b..f0dc131b 100644 --- a/macros/FunctionAnnotation/FA_ADD.sci +++ b/macros/FunctionAnnotation/FA_ADD.sci @@ -1,43 +1,43 @@ -function opout = FA_ADD(in1,in2) -// function opout = FA_ADD(in1,in2) -// ----------------------------------------------------------------- -// Addition function for Function Annotations. -// -// Input data: -// in1: string specifying a number or a symbol. -// in2: string specifying a number or a symbol. -// -// Output data: -// opout: string containing the computed result. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -if (isnum(in1) & isnum(in2)) - in1num = eval(in1); - in2num = eval(in2); - outnum = in1num+in2num; - if isnan(outnum) - opout = '__SCI2CNANSIZE'; - else - opout = string(outnum); - end -else - opout = string('('+in1+'+'+in2+')'); -end - -endfunction +function opout = FA_ADD(in1,in2) +// function opout = FA_ADD(in1,in2) +// ----------------------------------------------------------------- +// Addition function for Function Annotations. +// +// Input data: +// in1: string specifying a number or a symbol. +// in2: string specifying a number or a symbol. +// +// Output data: +// opout: string containing the computed result. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +if (isnum(in1) & isnum(in2)) + in1num = eval(in1); + in2num = eval(in2); + outnum = in1num+in2num; + if isnan(outnum) + opout = '__SCI2CNANSIZE'; + else + opout = string(outnum); + end +else + opout = string('('+in1+'+'+in2+')'); +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_DIV.sci b/macros/FunctionAnnotation/FA_DIV.sci index d4ec0ccd..e23c0330 100644 --- a/macros/FunctionAnnotation/FA_DIV.sci +++ b/macros/FunctionAnnotation/FA_DIV.sci @@ -1,41 +1,41 @@ -function opout = FA_DIV(in1,in2) -// function opout = FA_DIV(in1,in2) -// ----------------------------------------------------------------- -// Division function for Function Annotations. -// -// Input data: -// in1: string specifying a number or a symbol. -// in2: string specifying a number or a symbol. -// -// Output data: -// opout: string containing the computed result. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -if (isnum(in1) & isnum(in2)) - in1num = eval(in1); - in2num = eval(in2); - outnum = in1num/in2num; - if isnan(outnum) - opout = '__SCI2CNANSIZE'; - else - opout = string(outnum); - end -else - opout = '('+string(in1)+'/'+string(in2)+')'; -end -endfunction +function opout = FA_DIV(in1,in2) +// function opout = FA_DIV(in1,in2) +// ----------------------------------------------------------------- +// Division function for Function Annotations. +// +// Input data: +// in1: string specifying a number or a symbol. +// in2: string specifying a number or a symbol. +// +// Output data: +// opout: string containing the computed result. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +if (isnum(in1) & isnum(in2)) + in1num = eval(in1); + in2num = eval(in2); + outnum = in1num/in2num; + if isnan(outnum) + opout = '__SCI2CNANSIZE'; + else + opout = string(outnum); + end +else + opout = '('+string(in1)+'/'+string(in2)+')'; +end +endfunction diff --git a/macros/FunctionAnnotation/FA_GetDefaultPrecision.sci b/macros/FunctionAnnotation/FA_GetDefaultPrecision.sci index f4e321aa..5e357459 100644 --- a/macros/FunctionAnnotation/FA_GetDefaultPrecision.sci +++ b/macros/FunctionAnnotation/FA_GetDefaultPrecision.sci @@ -1,105 +1,105 @@ -function defaultprecision = FA_GetDefaultPrecision(scifilename,scifileid,ReportFileName) -// function defaultprecision = FA_GetDefaultPrecision(scifilename,scifileid,ReportFileName) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Extracts the default precision for the file .sci passed in input. -// The following annotation will be searched in the scilab code: -// //SCI2C: DEFAULT_PRECISION= FLOAT -// //SCI2C: DEFAULT_PRECISION= DOUBLE -// If the annotation is missing the default DOUBLE precision will be -// implicitly used. -// #RNU_RES_E -// -// Input data: -// --- -// -// Output data: -// defaultprecision: string which specifies the default precision to be -// used in the translation of scifilename. -// -// Status: -// 12-Feb-2008 -- Raffaele Nutricato: Author. -// 12-Feb-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),3,3); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -defaultprecision = 'd'; -annotationstring = '//SCI2C: DEFAULT_PRECISION=' -// #RNU_RES_B -PrintStringInfo('***Get default precision from: '+scifilename,ReportFileName,'file','y'); -// #RNU_RES_E -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -// --- Open the .sci file (read only). --- -if scifileid == [] then - scifid = SCI2COpenFileRead(scifilename); -else - scifid = scifileid; -end - -// #RNU_RES_B -// --- Loop over the lines of the input file. --- -// Position file pointer to the desired NInArg/NOutArg section, -// and read the NOutArg annotation. -// #RNU_RES_E -foundannotation = 0; -line_position = 0; -while ((meof(scifid) == 0) & (foundannotation == 0)) - check_string = stripblanks(mgetl(scifid,1)); - line_position = line_position + 1; - if (~isempty(check_string)) - - if (SCI2Cstrncmps1size(annotationstring,check_string)) - tmpprecision = stripblanks(part(check_string,length(annotationstring)+1:length(check_string))); - // #RNU_RES_B - PrintStringInfo(' Line '+string(line_position)+... - ' - Found annotation for default precision'+' ""'+check_string+' ""',... - ReportFileName,'file','y'); - // #RNU_RES_E - foundannotation = 1; - end - end -end - -if (foundannotation == 0) - // #RNU_RES_B - PrintStringInfo('Annotation for default precision not found.',ReportFileName,'file','y'); - PrintStringInfo('Using the ""DOUBLE"" default precision.',ReportFileName,'file','y'); - // #RNU_RES_E -else - if (tmpprecision == 'FLOAT') - defaultprecision = 's'; - elseif (tmpprecision == 'DOUBLE') - defaultprecision = 'd'; - elseif (tmpprecision == 'UINT8') - defaultprecision = 'u8'; - elseif (tmpprecision == 'INT8') - defaultprecision = 'i8'; - elseif (tmpprecision == 'UINT16') - defaultprecision = 'u16'; - elseif (tmpprecision == 'INT16') - defaultprecision = 'i16'; - elseif (tmpprecision == 'CVIMAGE') - defaultprecision = 'IplImage' - - end -end - -if scifileid == [] then - mclose(scifid); -else - mseek(0, scifid); -end -endfunction +function defaultprecision = FA_GetDefaultPrecision(scifilename,scifileid,ReportFileName) +// function defaultprecision = FA_GetDefaultPrecision(scifilename,scifileid,ReportFileName) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Extracts the default precision for the file .sci passed in input. +// The following annotation will be searched in the scilab code: +// //SCI2C: DEFAULT_PRECISION= FLOAT +// //SCI2C: DEFAULT_PRECISION= DOUBLE +// If the annotation is missing the default DOUBLE precision will be +// implicitly used. +// #RNU_RES_E +// +// Input data: +// --- +// +// Output data: +// defaultprecision: string which specifies the default precision to be +// used in the translation of scifilename. +// +// Status: +// 12-Feb-2008 -- Raffaele Nutricato: Author. +// 12-Feb-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),3,3); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +defaultprecision = 'd'; +annotationstring = '//SCI2C: DEFAULT_PRECISION=' +// #RNU_RES_B +PrintStringInfo('***Get default precision from: '+scifilename,ReportFileName,'file','y'); +// #RNU_RES_E +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +// --- Open the .sci file (read only). --- +if scifileid == [] then + scifid = SCI2COpenFileRead(scifilename); +else + scifid = scifileid; +end + +// #RNU_RES_B +// --- Loop over the lines of the input file. --- +// Position file pointer to the desired NInArg/NOutArg section, +// and read the NOutArg annotation. +// #RNU_RES_E +foundannotation = 0; +line_position = 0; +while ((meof(scifid) == 0) & (foundannotation == 0)) + check_string = stripblanks(mgetl(scifid,1)); + line_position = line_position + 1; + if (~isempty(check_string)) + + if (SCI2Cstrncmps1size(annotationstring,check_string)) + tmpprecision = stripblanks(part(check_string,length(annotationstring)+1:length(check_string))); + // #RNU_RES_B + PrintStringInfo(' Line '+string(line_position)+... + ' - Found annotation for default precision'+' ""'+check_string+' ""',... + ReportFileName,'file','y'); + // #RNU_RES_E + foundannotation = 1; + end + end +end + +if (foundannotation == 0) + // #RNU_RES_B + PrintStringInfo('Annotation for default precision not found.',ReportFileName,'file','y'); + PrintStringInfo('Using the ""DOUBLE"" default precision.',ReportFileName,'file','y'); + // #RNU_RES_E +else + if (tmpprecision == 'FLOAT') + defaultprecision = 's'; + elseif (tmpprecision == 'DOUBLE') + defaultprecision = 'd'; + elseif (tmpprecision == 'UINT8') + defaultprecision = 'u8'; + elseif (tmpprecision == 'INT8') + defaultprecision = 'i8'; + elseif (tmpprecision == 'UINT16') + defaultprecision = 'u16'; + elseif (tmpprecision == 'INT16') + defaultprecision = 'i16'; + elseif (tmpprecision == 'CVIMAGE') + defaultprecision = 'IplImage' + + end +end + +if scifileid == [] then + mclose(scifid); +else + mseek(0, scifid); +end +endfunction diff --git a/macros/FunctionAnnotation/FA_GetFunAnn.sci b/macros/FunctionAnnotation/FA_GetFunAnn.sci index 3fadd1f2..57bae95c 100644 --- a/macros/FunctionAnnotation/FA_GetFunAnn.sci +++ b/macros/FunctionAnnotation/FA_GetFunAnn.sci @@ -1,217 +1,217 @@ -function [FunTypeAnnot,FunSizeAnnot,NOutArg_mod] = ... - FA_GetFunAnn(NInArg,NOutArg,FunName,FileInfo,SharedInfo) -// function [FunTypeAnnot,FunSizeAnnot] = ... -// FA_GetFunAnn(NInArg,NOutArg,FunName,FileInfo,SharedInfo) -// ----------------------------------------------------------------- -// #RNU_RES_B -// This function extracts the TYPE and SIZE annotations from the -// input .ann file. -// No blank lines are allowed between function annotations. -// -// #RNU_RES_E -// Input data: -// //NUT: Add description here -// -// Output data: -// //NUT: Add description here -// -// Status: -// 11-Jul-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -//NUT: consider the possibility to split this function into more functions. - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),5,5); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -nxtscifunname = SharedInfo.NextSCIFunName; -nxtscifunnumber = SharedInfo.NextSCIFunNumber; -ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; -// #RNU_RES_B -PrintStringInfo(' ',ReportFileName,'file','y'); -PrintStringInfo('***Reading function annotations***',ReportFileName,'file','y'); -// #RNU_RES_E -SCI2CClassFileName = GetClsFileName(FunName,FileInfo,SharedInfo); -FunTypeAnnot = ''; -FunSizeAnnot = ''; -// --------------------------- -// --- End Initialization. --- -// --------------------------- - - -// --------------------------------------------- -// --- Read the annotations of the function. --- -// --------------------------------------------- -// --- Open the .sci file (read only). --- -inclsfid = SCI2COpenFileRead(SCI2CClassFileName); -PrintStringInfo(' '+string(inclsfid),ReportFileName,'file','y'); -// #RNU_RES_B -// --- Loop over the lines of the input file. --- -// Position file pointer to the desired NInArg/NOutArg section, -// and read the NOutArg annotation. -// #RNU_RES_E -FoundNIn = 0; -FoundNOut = 0; -line_position = 0; -while ((meof(inclsfid) == 0) & (FoundNIn == 0) & (FoundNOut == 0)) - check_string = stripblanks(mgetl(inclsfid,1)); - line_position = line_position + 1; - if (~isempty(check_string)) - -// #RNU_RES_B -// --- Search for the NIN annotation. --- -// #RNU_RES_E - if (SCI2Cstrncmps1size(SharedInfo.Annotations.FUNNIN,check_string)) - FUNNINAnnot = part(check_string,length(SharedInfo.Annotations.FUNNIN)+1:length(check_string)); - -// #RNU_RES_B -// --- Check NIN value. --- -// #RNU_RES_E - if (eval(FUNNINAnnot) == NInArg) -// #RNU_RES_B - PrintStringInfo(' Line '+string(line_position)+' - Function NInArg Annotation: '+' ""'+check_string+' ""',... - ReportFileName,'file','y'); -// #RNU_RES_E - FoundNIn = 1; - check_string = stripblanks(mgetl(inclsfid,1)); - line_position = line_position + 1; - if (~isempty(check_string)) - -// #RNU_RES_B -// --- Search for the NOUT annotation. --- -// #RNU_RES_E - if (SCI2Cstrncmps1size(SharedInfo.Annotations.FUNNOUT,check_string)) - FUNNOUTAnnot = part(check_string,length(SharedInfo.Annotations.FUNNOUT)+1:length(check_string)); -// #RNU_RES_B -// --- Check NOUT value. --- -// #RNU_RES_E - if (eval(FUNNOUTAnnot) == NOutArg) -// #RNU_RES_B - PrintStringInfo(' Line '+string(line_position)+' - Function NOutArg Annotation: '+' ""'+check_string+' ""',... - ReportFileName,'file','y'); -// #RNU_RES_E - FoundNOut = 1; - elseif(eval(FUNNOUTAnnot) == 0) - FoundNOut = 1 - else - FoundNIn = 0; - end - else - PrintStringInfo(' ',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Incorrect format for function annotation.',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Expected '+SharedInfo.Annotations.FUNNIN+' field in the annotations of the function.',ReportFileName,'both','y'); - PrintStringInfo(' ',ReportFileName,'both','y'); - error(9999, 'SCI2CERROR: Incorrect format for function annotation.'); - end - else - PrintStringInfo(' ',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Incorrect format for function annotation.',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Expected '+SharedInfo.Annotations.FUNNIN+' field in the annotations of the function.',ReportFileName,'both','y'); - PrintStringInfo(' ',ReportFileName,'both','y'); - error(9999, 'SCI2CERROR: Incorrect format for function annotation.'); - end - end - end - end -end - -if (FoundNOut*FoundNIn == 0) - PrintStringInfo(' ',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Please check file: '+SCI2CClassFileName,ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Incorrect function annotation.',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: There are two possibilities:',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: 1. Syntax error in function annotations.',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: 2. Missing the right combination of NIN/NOUT annotations: ""'+SharedInfo.Annotations.FUNNIN+string(NInArg)+','+SharedInfo.Annotations.FUNNOUT+' '+string(NOutArg)+'"".',ReportFileName,'both','y'); - PrintStringInfo(' ',ReportFileName,'both','y'); - error(9999, 'SCI2CERROR: Incorrect function annotation.'); -else - //This change has been made in order to supress the generation - //of output variables in case of functions which do not return - //anything. - if(eval(FUNNOUTAnnot) == 0) - NOutArg_mod = 0; - else - NOutArg_mod = NOutArg - end - - // In case we are reading to much informations - readNewLine = %t; - - for cntout = 1:NOutArg - SCI2C_nout=cntout; // Useful for eval. - -// #RNU_RES_B -// Read the Fun type annotation. -// #RNU_RES_E - if (readNewLine == %t) - check_string = stripblanks(mgetl(inclsfid,1)); - line_position = line_position + 1; - else - // reset state - readNewLine = %t; - end - if (isempty(check_string) == %F) - tmpannstring = eval(SharedInfo.Annotations.FUNTYPE); - if (SCI2Cstrncmps1size(tmpannstring,check_string)) -// #RNU_RES_B - PrintStringInfo(' Line '+string(line_position)+' - Function Type Annotation: '+' ""'+check_string+' ""',... - ReportFileName,'file','y'); -// #RNU_RES_E - FunTypeAnnot(cntout) = ... - stripblanks(part(check_string,length(tmpannstring)+1:length(check_string))); - end - else - PrintStringInfo(' ',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Line '+string(line_position)+' Function type annotation not found in file: '+SCI2CClassFileName,ReportFileName,'both','y'); - PrintStringInfo(' ',ReportFileName,'both','y'); - error(9999, 'SCI2CERROR: Line '+string(line_position)+' Function type annotation not found in file: '+SCI2CClassFileName); - end - -// #RNU_RES_B -// --- Read the Fun size annotation. --- -// #RNU_RES_E - SCI2C_nelem = 0; // Useful for eval. -// while(SCI2C_nelem < 2 & isempty(check_string) == %F) - while(SCI2C_nelem < 3 & isempty(check_string) == %F) - line_position = line_position + 1; -// #RNU_RES_B - PrintStringInfo(' Line '+string(line_position)+' - Function Size Annotation: '+' ""'+check_string+' ""',... - ReportFileName,'file','y'); - if (isempty(check_string) == %F) - SCI2C_nelem = SCI2C_nelem + 1 - tmpannstring = eval(SharedInfo.Annotations.FUNSIZE); - check_string = stripblanks(mgetl(inclsfid,1)); - if (SCI2Cstrncmps1size(tmpannstring,check_string)) -// #RNU_RES_E - FunSizeAnnot(cntout,SCI2C_nelem) = ... - stripblanks(part(check_string,length(tmpannstring)+1:length(check_string))); - else - readNewLine = %f; - end - else - PrintStringInfo(' ',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Line '+string(line_position)+' Function size annotation not found in file: '+SCI2CClassFileName,ReportFileName,'both','y'); - PrintStringInfo(' ',ReportFileName,'both','y'); - error(9999, 'SCI2CERROR: Line '+string(line_position)+' Function size annotation not found in file: '+SCI2CClassFileName); - end - end - end - - -end -// --- End loop over the lines of the input file. --- -mclose(inclsfid); -// ------------------------------------------------- -// --- End Read the annotations of the function. --- -// ------------------------------------------------- -PrintStringInfo(' end of annotation '+string(NOutArg_mod),ReportFileName,'file','y'); - -endfunction +function [FunTypeAnnot,FunSizeAnnot,NOutArg_mod] = ... + FA_GetFunAnn(NInArg,NOutArg,FunName,FileInfo,SharedInfo) +// function [FunTypeAnnot,FunSizeAnnot] = ... +// FA_GetFunAnn(NInArg,NOutArg,FunName,FileInfo,SharedInfo) +// ----------------------------------------------------------------- +// #RNU_RES_B +// This function extracts the TYPE and SIZE annotations from the +// input .ann file. +// No blank lines are allowed between function annotations. +// +// #RNU_RES_E +// Input data: +// //NUT: Add description here +// +// Output data: +// //NUT: Add description here +// +// Status: +// 11-Jul-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +//NUT: consider the possibility to split this function into more functions. + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),5,5); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +nxtscifunname = SharedInfo.NextSCIFunName; +nxtscifunnumber = SharedInfo.NextSCIFunNumber; +ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; +// #RNU_RES_B +PrintStringInfo(' ',ReportFileName,'file','y'); +PrintStringInfo('***Reading function annotations***',ReportFileName,'file','y'); +// #RNU_RES_E +SCI2CClassFileName = GetClsFileName(FunName,FileInfo,SharedInfo); +FunTypeAnnot = ''; +FunSizeAnnot = ''; +// --------------------------- +// --- End Initialization. --- +// --------------------------- + + +// --------------------------------------------- +// --- Read the annotations of the function. --- +// --------------------------------------------- +// --- Open the .sci file (read only). --- +inclsfid = SCI2COpenFileRead(SCI2CClassFileName); +PrintStringInfo(' '+string(inclsfid),ReportFileName,'file','y'); +// #RNU_RES_B +// --- Loop over the lines of the input file. --- +// Position file pointer to the desired NInArg/NOutArg section, +// and read the NOutArg annotation. +// #RNU_RES_E +FoundNIn = 0; +FoundNOut = 0; +line_position = 0; +while ((meof(inclsfid) == 0) & (FoundNIn == 0) & (FoundNOut == 0)) + check_string = stripblanks(mgetl(inclsfid,1)); + line_position = line_position + 1; + if (~isempty(check_string)) + +// #RNU_RES_B +// --- Search for the NIN annotation. --- +// #RNU_RES_E + if (SCI2Cstrncmps1size(SharedInfo.Annotations.FUNNIN,check_string)) + FUNNINAnnot = part(check_string,length(SharedInfo.Annotations.FUNNIN)+1:length(check_string)); + +// #RNU_RES_B +// --- Check NIN value. --- +// #RNU_RES_E + if (eval(FUNNINAnnot) == NInArg) +// #RNU_RES_B + PrintStringInfo(' Line '+string(line_position)+' - Function NInArg Annotation: '+' ""'+check_string+' ""',... + ReportFileName,'file','y'); +// #RNU_RES_E + FoundNIn = 1; + check_string = stripblanks(mgetl(inclsfid,1)); + line_position = line_position + 1; + if (~isempty(check_string)) + +// #RNU_RES_B +// --- Search for the NOUT annotation. --- +// #RNU_RES_E + if (SCI2Cstrncmps1size(SharedInfo.Annotations.FUNNOUT,check_string)) + FUNNOUTAnnot = part(check_string,length(SharedInfo.Annotations.FUNNOUT)+1:length(check_string)); +// #RNU_RES_B +// --- Check NOUT value. --- +// #RNU_RES_E + if (eval(FUNNOUTAnnot) == NOutArg) +// #RNU_RES_B + PrintStringInfo(' Line '+string(line_position)+' - Function NOutArg Annotation: '+' ""'+check_string+' ""',... + ReportFileName,'file','y'); +// #RNU_RES_E + FoundNOut = 1; + elseif(eval(FUNNOUTAnnot) == 0) + FoundNOut = 1 + else + FoundNIn = 0; + end + else + PrintStringInfo(' ',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Incorrect format for function annotation.',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Expected '+SharedInfo.Annotations.FUNNIN+' field in the annotations of the function.',ReportFileName,'both','y'); + PrintStringInfo(' ',ReportFileName,'both','y'); + error(9999, 'SCI2CERROR: Incorrect format for function annotation.'); + end + else + PrintStringInfo(' ',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Incorrect format for function annotation.',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Expected '+SharedInfo.Annotations.FUNNIN+' field in the annotations of the function.',ReportFileName,'both','y'); + PrintStringInfo(' ',ReportFileName,'both','y'); + error(9999, 'SCI2CERROR: Incorrect format for function annotation.'); + end + end + end + end +end + +if (FoundNOut*FoundNIn == 0) + PrintStringInfo(' ',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Please check file: '+SCI2CClassFileName,ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Incorrect function annotation.',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: There are two possibilities:',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: 1. Syntax error in function annotations.',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: 2. Missing the right combination of NIN/NOUT annotations: ""'+SharedInfo.Annotations.FUNNIN+string(NInArg)+','+SharedInfo.Annotations.FUNNOUT+' '+string(NOutArg)+'"".',ReportFileName,'both','y'); + PrintStringInfo(' ',ReportFileName,'both','y'); + error(9999, 'SCI2CERROR: Incorrect function annotation.'); +else + //This change has been made in order to supress the generation + //of output variables in case of functions which do not return + //anything. + if(eval(FUNNOUTAnnot) == 0) + NOutArg_mod = 0; + else + NOutArg_mod = NOutArg + end + + // In case we are reading to much informations + readNewLine = %t; + + for cntout = 1:NOutArg + SCI2C_nout=cntout; // Useful for eval. + +// #RNU_RES_B +// Read the Fun type annotation. +// #RNU_RES_E + if (readNewLine == %t) + check_string = stripblanks(mgetl(inclsfid,1)); + line_position = line_position + 1; + else + // reset state + readNewLine = %t; + end + if (isempty(check_string) == %F) + tmpannstring = eval(SharedInfo.Annotations.FUNTYPE); + if (SCI2Cstrncmps1size(tmpannstring,check_string)) +// #RNU_RES_B + PrintStringInfo(' Line '+string(line_position)+' - Function Type Annotation: '+' ""'+check_string+' ""',... + ReportFileName,'file','y'); +// #RNU_RES_E + FunTypeAnnot(cntout) = ... + stripblanks(part(check_string,length(tmpannstring)+1:length(check_string))); + end + else + PrintStringInfo(' ',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Line '+string(line_position)+' Function type annotation not found in file: '+SCI2CClassFileName,ReportFileName,'both','y'); + PrintStringInfo(' ',ReportFileName,'both','y'); + error(9999, 'SCI2CERROR: Line '+string(line_position)+' Function type annotation not found in file: '+SCI2CClassFileName); + end + +// #RNU_RES_B +// --- Read the Fun size annotation. --- +// #RNU_RES_E + SCI2C_nelem = 0; // Useful for eval. +// while(SCI2C_nelem < 2 & isempty(check_string) == %F) + while(SCI2C_nelem < 3 & isempty(check_string) == %F) + line_position = line_position + 1; +// #RNU_RES_B + PrintStringInfo(' Line '+string(line_position)+' - Function Size Annotation: '+' ""'+check_string+' ""',... + ReportFileName,'file','y'); + if (isempty(check_string) == %F) + SCI2C_nelem = SCI2C_nelem + 1 + tmpannstring = eval(SharedInfo.Annotations.FUNSIZE); + check_string = stripblanks(mgetl(inclsfid,1)); + if (SCI2Cstrncmps1size(tmpannstring,check_string)) +// #RNU_RES_E + FunSizeAnnot(cntout,SCI2C_nelem) = ... + stripblanks(part(check_string,length(tmpannstring)+1:length(check_string))); + else + readNewLine = %f; + end + else + PrintStringInfo(' ',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Line '+string(line_position)+' Function size annotation not found in file: '+SCI2CClassFileName,ReportFileName,'both','y'); + PrintStringInfo(' ',ReportFileName,'both','y'); + error(9999, 'SCI2CERROR: Line '+string(line_position)+' Function size annotation not found in file: '+SCI2CClassFileName); + end + end + end + + +end +// --- End loop over the lines of the input file. --- +mclose(inclsfid); +// ------------------------------------------------- +// --- End Read the annotations of the function. --- +// ------------------------------------------------- +PrintStringInfo(' end of annotation '+string(NOutArg_mod),ReportFileName,'file','y'); + +endfunction diff --git a/macros/FunctionAnnotation/FA_GetOutArgInfo.sci b/macros/FunctionAnnotation/FA_GetOutArgInfo.sci index 284f4a29..2324eb6f 100644 --- a/macros/FunctionAnnotation/FA_GetOutArgInfo.sci +++ b/macros/FunctionAnnotation/FA_GetOutArgInfo.sci @@ -1,146 +1,146 @@ -function UpdatedOutArg = ... - FA_GetOutArgInfo(InArg,NInArg,OutArg,NOutArg,SharedInfo,FunPrecSpecifier, ... - FunTypeAnnot,FunSizeAnnot,ReportFileName,ASTFunName) -// function UpdatedOutArg = ... -// FA_GetOutArgInfo(InArg,NInArg,OutArg,NOutArg,SharedInfo,FunPrecSpecifier,FunTypeAnnot,FunSizeAnnot,ReportFileName) -// ----------------------------------------------------------------- -// #RNU_RES_B -// InArg is used by eval don't remove it from the function call. -// -// #RNU_RES_E -// Input data: -// //NUT: Add description here -// -// Output data: -// //NUT: Add description here -// -// Status: -// 25-Oct-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),10,10); -// ----------------------- -// --- Initialization. --- -// ----------------------- - - -UpdatedOutArg = OutArg; -for cntin = 1:NInArg - IN(cntin).TP = InArg(cntin).Type; - for _InArgSize=1:size(InArg(cntin).Size, '*') - IN(cntin).SZ(_InArgSize) = InArg(cntin).Size(_InArgSize); - end - if ((isnan(InArg(cntin).Value)) & (GetSymbolDimension(InArg(cntin).Size) == 0)) - // #RNU_RES_B - // IN(cntin).VAL = '__SCI2CNANSIZE'; //RNU: toglimi - //RNU: Replace the value of the variable with its name, in case it is a scalar variable. - // #RNU_RES_E - IN(cntin).VAL = InArg(cntin).Name; - else - IN(cntin).VAL = string(InArg(cntin).Value); - end -end -DefaultPrecision = SharedInfo.DefaultPrecision; -// --------------------------- -// --- End Initialization. --- -// --------------------------- -if (FunTypeAnnot(1) == '') - NOutArg = 0; - -else - NOutArg = max(size(FunTypeAnnot)); -end - -flagfindlike = 0; - -for counterin = 1:NInArg - if (InArg(counterin).FindLike == 1 | InArg(counterin).FindLike == -1) - // #RNU_RES_B - // Then we must assume that the output will be findlike - // 0 = no find-like - // 1 = pure find-like - //-1 = similar to find-like (out=fun(in)) where in is find-like. - // #RNU_RES_E - flagfindlike = -1; - end -end - -for counterout = 1:NOutArg - if(FunTypeAnnot == 'FA_TP_USER') - UpdatedOutArg(counterout).Type = FA_TP_USER(FunPrecSpecifier,DefaultPrecision); - else - UpdatedOutArg(counterout).Type = eval(FunTypeAnnot(counterout)); - end - UpdatedOutArg(counterout).FindLike = 0; - - // This is just to remove the FA_SZ_RTMAX tag ??? - lengthFA_SZ_RTMAX = length('FA_SZ_RTMAX'); - if (SCI2Cstrncmps1size('FA_SZ_RTMAX',FunSizeAnnot(counterout,1))) - UpdatedOutArg(counterout).FindLike = 1; - FunSizeAnnot(counterout,1) = part(FunSizeAnnot(counterout,1),lengthFA_SZ_RTMAX+1:length(FunSizeAnnot(counterout,1))); - end - - if (SCI2Cstrncmps1size('FA_SZ_RTMAX',FunSizeAnnot(counterout,2))) - UpdatedOutArg(counterout).FindLike = 1; - FunSizeAnnot(counterout,2) = part(FunSizeAnnot(counterout,2),lengthFA_SZ_RTMAX+1:length(FunSizeAnnot(counterout,2))); - end - - if (flagfindlike == -1) - UpdatedOutArg(counterout).FindLike = -1; - end - -// #RNU_RES_B -// When the size is given by e IN(x).VAL annotation we can have two cases: -// IN(x).VAL is a number or IN(x).VAL is %nan. When it is %nan the -// size is equal to the name of IN(x). -// This is a dynamic memory extension of a local variable and for the moment -// we issue an error according to SCI2C specifications -// #RNU_RES_E -// disp(FunSizeAnnot(2),FunSizeAnnot(1)) -// Ukasha -// if ASTFunName == svd -// x=1; -// for i=1:InArg(1).Size(1) -// for j=1:InArg(1).Size(2) -// A(i)(j)=InArg(1).Value(x); -// end -// end -// [U,S,V]=svd(A,"e"); - - - - for iterOutputPosition=1:size(FunSizeAnnot, 'c') - tmpeval = eval(FunSizeAnnot(counterout, iterOutputPosition)); - if (IsNanSize(tmpeval)) - if SharedInfo.ForExpr.OnExec == 0 - EM_NanSize(ReportFileName); - else - UpdatedOutArg(counterout).Size(iterOutputPosition) = string(tmpeval); - end - elseif(isnum(tmpeval)) - if (eval(tmpeval) <= 0) - EM_ZeroSize(ReportFileName); - else - UpdatedOutArg(counterout).Size(iterOutputPosition) = string(tmpeval); - end - else - UpdatedOutArg(counterout).Size(iterOutputPosition) = string(tmpeval); - end - end - if(ASTFunName == 'syslin') - no_of_st = eval(InArg(2).Size(1)) - no_of_ip = eval(InArg(3).Size(2)) - UpdatedOutArg(counterout).Value = no_of_st+no_of_ip*0.1; - else - UpdatedOutArg(counterout).Value = %nan; - end - UpdatedOutArg(counterout).Dimension = GetSymbolDimension(UpdatedOutArg(counterout).Size); - UpdatedOutArg(counterout).Scope = 'Temp';//NUT anche su questo si puo' ragionare verifica anche la handleoperation. -end -endfunction +function UpdatedOutArg = ... + FA_GetOutArgInfo(InArg,NInArg,OutArg,NOutArg,SharedInfo,FunPrecSpecifier, ... + FunTypeAnnot,FunSizeAnnot,ReportFileName,ASTFunName) +// function UpdatedOutArg = ... +// FA_GetOutArgInfo(InArg,NInArg,OutArg,NOutArg,SharedInfo,FunPrecSpecifier,FunTypeAnnot,FunSizeAnnot,ReportFileName) +// ----------------------------------------------------------------- +// #RNU_RES_B +// InArg is used by eval don't remove it from the function call. +// +// #RNU_RES_E +// Input data: +// //NUT: Add description here +// +// Output data: +// //NUT: Add description here +// +// Status: +// 25-Oct-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),10,10); +// ----------------------- +// --- Initialization. --- +// ----------------------- + + +UpdatedOutArg = OutArg; +for cntin = 1:NInArg + IN(cntin).TP = InArg(cntin).Type; + for _InArgSize=1:size(InArg(cntin).Size, '*') + IN(cntin).SZ(_InArgSize) = InArg(cntin).Size(_InArgSize); + end + if ((isnan(InArg(cntin).Value)) & (GetSymbolDimension(InArg(cntin).Size) == 0)) + // #RNU_RES_B + // IN(cntin).VAL = '__SCI2CNANSIZE'; //RNU: toglimi + //RNU: Replace the value of the variable with its name, in case it is a scalar variable. + // #RNU_RES_E + IN(cntin).VAL = InArg(cntin).Name; + else + IN(cntin).VAL = string(InArg(cntin).Value); + end +end +DefaultPrecision = SharedInfo.DefaultPrecision; +// --------------------------- +// --- End Initialization. --- +// --------------------------- +if (FunTypeAnnot(1) == '') + NOutArg = 0; + +else + NOutArg = max(size(FunTypeAnnot)); +end + +flagfindlike = 0; + +for counterin = 1:NInArg + if (InArg(counterin).FindLike == 1 | InArg(counterin).FindLike == -1) + // #RNU_RES_B + // Then we must assume that the output will be findlike + // 0 = no find-like + // 1 = pure find-like + //-1 = similar to find-like (out=fun(in)) where in is find-like. + // #RNU_RES_E + flagfindlike = -1; + end +end + +for counterout = 1:NOutArg + if(FunTypeAnnot == 'FA_TP_USER') + UpdatedOutArg(counterout).Type = FA_TP_USER(FunPrecSpecifier,DefaultPrecision); + else + UpdatedOutArg(counterout).Type = eval(FunTypeAnnot(counterout)); + end + UpdatedOutArg(counterout).FindLike = 0; + + // This is just to remove the FA_SZ_RTMAX tag ??? + lengthFA_SZ_RTMAX = length('FA_SZ_RTMAX'); + if (SCI2Cstrncmps1size('FA_SZ_RTMAX',FunSizeAnnot(counterout,1))) + UpdatedOutArg(counterout).FindLike = 1; + FunSizeAnnot(counterout,1) = part(FunSizeAnnot(counterout,1),lengthFA_SZ_RTMAX+1:length(FunSizeAnnot(counterout,1))); + end + + if (SCI2Cstrncmps1size('FA_SZ_RTMAX',FunSizeAnnot(counterout,2))) + UpdatedOutArg(counterout).FindLike = 1; + FunSizeAnnot(counterout,2) = part(FunSizeAnnot(counterout,2),lengthFA_SZ_RTMAX+1:length(FunSizeAnnot(counterout,2))); + end + + if (flagfindlike == -1) + UpdatedOutArg(counterout).FindLike = -1; + end + +// #RNU_RES_B +// When the size is given by e IN(x).VAL annotation we can have two cases: +// IN(x).VAL is a number or IN(x).VAL is %nan. When it is %nan the +// size is equal to the name of IN(x). +// This is a dynamic memory extension of a local variable and for the moment +// we issue an error according to SCI2C specifications +// #RNU_RES_E +// disp(FunSizeAnnot(2),FunSizeAnnot(1)) +// Ukasha +// if ASTFunName == svd +// x=1; +// for i=1:InArg(1).Size(1) +// for j=1:InArg(1).Size(2) +// A(i)(j)=InArg(1).Value(x); +// end +// end +// [U,S,V]=svd(A,"e"); + + + + for iterOutputPosition=1:size(FunSizeAnnot, 'c') + tmpeval = eval(FunSizeAnnot(counterout, iterOutputPosition)); + if (IsNanSize(tmpeval)) + if SharedInfo.ForExpr.OnExec == 0 + EM_NanSize(ReportFileName); + else + UpdatedOutArg(counterout).Size(iterOutputPosition) = string(tmpeval); + end + elseif(isnum(tmpeval)) + if (eval(tmpeval) <= 0) + EM_ZeroSize(ReportFileName); + else + UpdatedOutArg(counterout).Size(iterOutputPosition) = string(tmpeval); + end + else + UpdatedOutArg(counterout).Size(iterOutputPosition) = string(tmpeval); + end + end + if(ASTFunName == 'syslin') + no_of_st = eval(InArg(2).Size(1)) + no_of_ip = eval(InArg(3).Size(2)) + UpdatedOutArg(counterout).Value = no_of_st+no_of_ip*0.1; + else + UpdatedOutArg(counterout).Value = %nan; + end + UpdatedOutArg(counterout).Dimension = GetSymbolDimension(UpdatedOutArg(counterout).Size); + UpdatedOutArg(counterout).Scope = 'Temp';//NUT anche su questo si puo' ragionare verifica anche la handleoperation. +end +endfunction diff --git a/macros/FunctionAnnotation/FA_GetResizeApproach.sci b/macros/FunctionAnnotation/FA_GetResizeApproach.sci index 4db6054c..f883cace 100644 --- a/macros/FunctionAnnotation/FA_GetResizeApproach.sci +++ b/macros/FunctionAnnotation/FA_GetResizeApproach.sci @@ -1,87 +1,87 @@ -function ResizeApproach = FA_GetResizeApproach(scifilename,scifileid,ReportFileName) - -// function ResizeApproach = FA_GetResizeApproach(scifilename,ReportFileName) -// ----------------------------------------------------------------- -// Extracts the resize approach from the file .sci passed in input. -// The following annotation will be searched in the scilab code: -// //SCI2C: RESIZE_APPROACH= NO_RESIZE -// //SCI2C: RESIZE_APPROACH= RESIZE_ALL -// //SCI2C: RESIZE_APPROACH= REALLOC_ALL_RESIZE_ALL -// //SCI2C: RESIZE_APPROACH= RESIZE_TEMP -// //SCI2C: RESIZE_APPROACH= RESIZE_LOCAL -// //SCI2C: RESIZE_APPROACH= RESIZE_GLOBAL -// If the annotation is missing the default NO_RESIZE approach will be -// implicitly used. -// -// Input data: -// --- -// -// Output data: -// ResizeApproach: string which specifies the resize approach -// used in the translation of scifilename. -// -// Status: -// 12-Jul-2008 -- Raffaele Nutricato: Author. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),3,3); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -ResizeApproach = 'NO_RESIZE'; -annotationstring = '//SCI2C: RESIZE_APPROACH=' -PrintStringInfo('***Get resize approach from: '+scifilename,ReportFileName,'file','y'); // #RNUREM_ME -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -// --- Open the .sci file (read only). --- -if scifileid == [] then - scifid = SCI2COpenFileRead(scifilename); -else - scifid = scifileid; -end - -// --- Loop over the lines of the input file. --- -// Position file pointer to the desired NInArg/NOutArg section, -// and read the NOutArg annotation. -foundannotation = 0; -line_position = 0; - -while ((meof(scifid) == 0) & (foundannotation == 0)) - check_string = stripblanks(mgetl(scifid,1)); - line_position = line_position + 1; - if (~isempty(check_string)) - if (SCI2Cstrncmps1size(annotationstring,check_string)) - tmpresize = stripblanks(part(check_string,length(annotationstring)+1:length(check_string))); - // #RNU_RES_B - PrintStringInfo(' Line '+string(line_position)+... - ' - Found annotation for resize approach'+' ""'+check_string+' ""',... - ReportFileName,'file','y'); - // #RNU_RES_E - foundannotation = 1; - end - end -end - -if (foundannotation == 0) - // #RNU_RES_B - PrintStringInfo('Annotation for resize approach not found.',ReportFileName,'file','y'); - PrintStringInfo('Using the ''NO_RESIZE'' resize approach.',ReportFileName,'file','y'); - // #RNU_RES_E -else - ResizeApproach = tmpresize; -end -if scifileid == [] then -mclose(scifid); -else -mseek(0, scifid) -end -endfunction +function ResizeApproach = FA_GetResizeApproach(scifilename,scifileid,ReportFileName) + +// function ResizeApproach = FA_GetResizeApproach(scifilename,ReportFileName) +// ----------------------------------------------------------------- +// Extracts the resize approach from the file .sci passed in input. +// The following annotation will be searched in the scilab code: +// //SCI2C: RESIZE_APPROACH= NO_RESIZE +// //SCI2C: RESIZE_APPROACH= RESIZE_ALL +// //SCI2C: RESIZE_APPROACH= REALLOC_ALL_RESIZE_ALL +// //SCI2C: RESIZE_APPROACH= RESIZE_TEMP +// //SCI2C: RESIZE_APPROACH= RESIZE_LOCAL +// //SCI2C: RESIZE_APPROACH= RESIZE_GLOBAL +// If the annotation is missing the default NO_RESIZE approach will be +// implicitly used. +// +// Input data: +// --- +// +// Output data: +// ResizeApproach: string which specifies the resize approach +// used in the translation of scifilename. +// +// Status: +// 12-Jul-2008 -- Raffaele Nutricato: Author. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),3,3); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +ResizeApproach = 'NO_RESIZE'; +annotationstring = '//SCI2C: RESIZE_APPROACH=' +PrintStringInfo('***Get resize approach from: '+scifilename,ReportFileName,'file','y'); // #RNUREM_ME +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +// --- Open the .sci file (read only). --- +if scifileid == [] then + scifid = SCI2COpenFileRead(scifilename); +else + scifid = scifileid; +end + +// --- Loop over the lines of the input file. --- +// Position file pointer to the desired NInArg/NOutArg section, +// and read the NOutArg annotation. +foundannotation = 0; +line_position = 0; + +while ((meof(scifid) == 0) & (foundannotation == 0)) + check_string = stripblanks(mgetl(scifid,1)); + line_position = line_position + 1; + if (~isempty(check_string)) + if (SCI2Cstrncmps1size(annotationstring,check_string)) + tmpresize = stripblanks(part(check_string,length(annotationstring)+1:length(check_string))); + // #RNU_RES_B + PrintStringInfo(' Line '+string(line_position)+... + ' - Found annotation for resize approach'+' ""'+check_string+' ""',... + ReportFileName,'file','y'); + // #RNU_RES_E + foundannotation = 1; + end + end +end + +if (foundannotation == 0) + // #RNU_RES_B + PrintStringInfo('Annotation for resize approach not found.',ReportFileName,'file','y'); + PrintStringInfo('Using the ''NO_RESIZE'' resize approach.',ReportFileName,'file','y'); + // #RNU_RES_E +else + ResizeApproach = tmpresize; +end +if scifileid == [] then +mclose(scifid); +else +mseek(0, scifid) +end +endfunction diff --git a/macros/FunctionAnnotation/FA_INT.sci b/macros/FunctionAnnotation/FA_INT.sci index e1bdba33..37248d35 100644 --- a/macros/FunctionAnnotation/FA_INT.sci +++ b/macros/FunctionAnnotation/FA_INT.sci @@ -1,40 +1,40 @@ -function opout = FA_INT(in1) -// function opout = FA_INT(in1) -// ----------------------------------------------------------------- -// Int function for Function Annotations. -// When in1 is a number opout = int(in1); where int truncates in1 -// to integer. If in1 is string opout = in1. -// -// Input data: -// in1: string specifying a number or a symbol. -// -// Output data: -// opout: string containing the computed result. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -if (isnum(in1)) - outnum = int(eval(in1)); - if isnan(outnum) - opout = '__SCI2CNANSIZE'; - else - opout = string(outnum); - end -else - opout = in1; -end -endfunction +function opout = FA_INT(in1) +// function opout = FA_INT(in1) +// ----------------------------------------------------------------- +// Int function for Function Annotations. +// When in1 is a number opout = int(in1); where int truncates in1 +// to integer. If in1 is string opout = in1. +// +// Input data: +// in1: string specifying a number or a symbol. +// +// Output data: +// opout: string containing the computed result. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +if (isnum(in1)) + outnum = int(eval(in1)); + if isnan(outnum) + opout = '__SCI2CNANSIZE'; + else + opout = string(outnum); + end +else + opout = in1; +end +endfunction diff --git a/macros/FunctionAnnotation/FA_MUL.sci b/macros/FunctionAnnotation/FA_MUL.sci index 8c9a930a..50f35262 100644 --- a/macros/FunctionAnnotation/FA_MUL.sci +++ b/macros/FunctionAnnotation/FA_MUL.sci @@ -1,42 +1,42 @@ -function opout = FA_MUL(in1,in2) -// function opout = FA_MUL(in1,in2) -// ----------------------------------------------------------------- -// Multiplication function for Function Annotations. -// -// Input data: -// in1: string specifying a number or a symbol. -// in2: string specifying a number or a symbol. -// -// Output data: -// opout: string containing the computed result. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -if (isnum(in1) & isnum(in2)) - in1num = eval(in1); - in2num = eval(in2); - outnum = in1num*in2num; - if isnan(outnum) - opout = '__SCI2CNANSIZE'; - else - opout = string(outnum); - end -else - opout = '('+string(in1)+'*'+string(in2)+')'; -end -endfunction +function opout = FA_MUL(in1,in2) +// function opout = FA_MUL(in1,in2) +// ----------------------------------------------------------------- +// Multiplication function for Function Annotations. +// +// Input data: +// in1: string specifying a number or a symbol. +// in2: string specifying a number or a symbol. +// +// Output data: +// opout: string containing the computed result. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +if (isnum(in1) & isnum(in2)) + in1num = eval(in1); + in2num = eval(in2); + outnum = in1num*in2num; + if isnan(outnum) + opout = '__SCI2CNANSIZE'; + else + opout = string(outnum); + end +else + opout = '('+string(in1)+'*'+string(in2)+')'; +end +endfunction diff --git a/macros/FunctionAnnotation/FA_SUB.sci b/macros/FunctionAnnotation/FA_SUB.sci index 1ef0ad46..36228c57 100644 --- a/macros/FunctionAnnotation/FA_SUB.sci +++ b/macros/FunctionAnnotation/FA_SUB.sci @@ -1,41 +1,41 @@ -function opout = FA_SUB(in1,in2) -// function opout = FA_SUB(in1,in2) -// ----------------------------------------------------------------- -// Subtraction function for Function Annotations. -// -// Input data: -// in1: string specifying a number or a symbol. -// in2: string specifying a number or a symbol. -// -// Output data: -// opout: string containing the computed result. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -if (isnum(in1) & isnum(in2)) - in1num = eval(in1); - in2num = eval(in2); - outnum = in1num-in2num; - if isnan(outnum) - opout = '__SCI2CNANSIZE'; - else - opout = string(outnum); - end -else - opout = '('+string(in1)+'-'+string(in2)+')'; -end -endfunction +function opout = FA_SUB(in1,in2) +// function opout = FA_SUB(in1,in2) +// ----------------------------------------------------------------- +// Subtraction function for Function Annotations. +// +// Input data: +// in1: string specifying a number or a symbol. +// in2: string specifying a number or a symbol. +// +// Output data: +// opout: string containing the computed result. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +if (isnum(in1) & isnum(in2)) + in1num = eval(in1); + in2num = eval(in2); + outnum = in1num-in2num; + if isnan(outnum) + opout = '__SCI2CNANSIZE'; + else + opout = string(outnum); + end +else + opout = '('+string(in1)+'-'+string(in2)+')'; +end +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_1.sci b/macros/FunctionAnnotation/FA_SZ_1.sci index 3d20b992..14e1c437 100644 --- a/macros/FunctionAnnotation/FA_SZ_1.sci +++ b/macros/FunctionAnnotation/FA_SZ_1.sci @@ -1,21 +1,21 @@ -function outsize = FA_SZ_1(insize) -// function outsize = FA_SZ_1(insize) -// ----------------------------------------------------------------- -// Returns the first element of the size array. -// -// Input data: -// insize: size of input argument. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Output data: -// outsize: first element of the insize array. -// -// Status: -// 08-Dec-2007 -- Raffaele Nutricato: Author. -// 08-Dec-2007 -- Alberto Morea: Test Ok. -// ----------------------------------------------------------------- - -outsize = insize(1); - -endfunction +function outsize = FA_SZ_1(insize) +// function outsize = FA_SZ_1(insize) +// ----------------------------------------------------------------- +// Returns the first element of the size array. +// +// Input data: +// insize: size of input argument. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Output data: +// outsize: first element of the insize array. +// +// Status: +// 08-Dec-2007 -- Raffaele Nutricato: Author. +// 08-Dec-2007 -- Alberto Morea: Test Ok. +// ----------------------------------------------------------------- + +outsize = insize(1); + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_2.sci b/macros/FunctionAnnotation/FA_SZ_2.sci index 164cab3f..433f8b0d 100644 --- a/macros/FunctionAnnotation/FA_SZ_2.sci +++ b/macros/FunctionAnnotation/FA_SZ_2.sci @@ -1,21 +1,21 @@ -function outsize = FA_SZ_2(insize) -// function outsize = FA_SZ_2(insize) -// ----------------------------------------------------------------- -// Returns the second element of the size array. -// -// Input data: -// insize: size of input argument. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Output data: -// outsize: second element of the insize array. -// -// Status: -// 08-Dec-2007 -- Raffaele Nutricato: Author. -// 08-Dec-2007 -- Alberto Morea: Test Ok. -// ----------------------------------------------------------------- - -outsize = insize(2); - -endfunction +function outsize = FA_SZ_2(insize) +// function outsize = FA_SZ_2(insize) +// ----------------------------------------------------------------- +// Returns the second element of the size array. +// +// Input data: +// insize: size of input argument. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Output data: +// outsize: second element of the insize array. +// +// Status: +// 08-Dec-2007 -- Raffaele Nutricato: Author. +// 08-Dec-2007 -- Alberto Morea: Test Ok. +// ----------------------------------------------------------------- + +outsize = insize(2); + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPAPEX.sci b/macros/FunctionAnnotation/FA_SZ_OPAPEX.sci index a93e8c50..2b4fd2df 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPAPEX.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPAPEX.sci @@ -1,26 +1,26 @@ -function opoutsize = FA_SZ_OPAPEX(in1size) -// function opoutsize = FA_SZ_OPAPEX(in1size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPAPEX operator. -// -// -// Status: -// 08-Jan-2008 -- Raffaele Nutricato: Author. -// 08-Jan-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -opoutsize(1) = string(in1size(2)); -opoutsize(2) = string(in1size(1)); - -endfunction +function opoutsize = FA_SZ_OPAPEX(in1size) +// function opoutsize = FA_SZ_OPAPEX(in1size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPAPEX operator. +// +// +// Status: +// 08-Jan-2008 -- Raffaele Nutricato: Author. +// 08-Jan-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +opoutsize(1) = string(in1size(2)); +opoutsize(2) = string(in1size(1)); + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPBACKSLASH.sci b/macros/FunctionAnnotation/FA_SZ_OPBACKSLASH.sci index 9d0625bd..9f4da318 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPBACKSLASH.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPBACKSLASH.sci @@ -1,39 +1,39 @@ -function opoutsize = FA_SZ_OPBACKSLASH(in1size,in2size) -// function opoutsize = FA_SZ_OPBACKSLASH(in1size,in2size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPBACKSLASH operator. -// -// -// Status: -// 08-Mar-2008 -- Alberto Morea: Author. -// 08-Mar-2008 -- Raffaele Nutricato: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -in1size=string(in1size); -in2size=string(in2size); - -// --- Get dimensions of input arguments. --- -in1dim = GetSymbolDimension(in1size); -in2dim = GetSymbolDimension(in2size); - -if (in1dim == 0) - opoutsize = in2size; -elseif (in2dim == 0) - opoutsize = in1size; -else - opoutsize(1) = in1size(2); - opoutsize(2) = in2size(2); -end - -endfunction +function opoutsize = FA_SZ_OPBACKSLASH(in1size,in2size) +// function opoutsize = FA_SZ_OPBACKSLASH(in1size,in2size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPBACKSLASH operator. +// +// +// Status: +// 08-Mar-2008 -- Alberto Morea: Author. +// 08-Mar-2008 -- Raffaele Nutricato: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +in1size=string(in1size); +in2size=string(in2size); + +// --- Get dimensions of input arguments. --- +in1dim = GetSymbolDimension(in1size); +in2dim = GetSymbolDimension(in2size); + +if (in1dim == 0) + opoutsize = in2size; +elseif (in2dim == 0) + opoutsize = in1size; +else + opoutsize(1) = in1size(2); + opoutsize(2) = in2size(2); +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPCC.sci b/macros/FunctionAnnotation/FA_SZ_OPCC.sci index 50527771..55638cf0 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPCC.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPCC.sci @@ -1,40 +1,40 @@ -function opoutsize = FA_SZ_OPCC(in1size,in2size) -// function opoutsize = FA_SZ_OPCC(in1size,in2size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPCC operator. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -in1size = string(in1size); -in2size = string(in2size); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -// --- Get dimensions of input arguments. --- -in1dim = GetSymbolDimension(in1size); -in2dim = GetSymbolDimension(in2size); - -if (isnum(in1size(1)) & isnum(in2size(1))) - in1num = eval(in1size(1)); - in2num = eval(in2size(1)); - opoutsize(1) = string(in1num+in2num); -else - opoutsize(1) = '('+string(in1size(1))+'+'+string(in2size(1))+')'; -end - -opoutsize(2) = in1size(2); - -endfunction +function opoutsize = FA_SZ_OPCC(in1size,in2size) +// function opoutsize = FA_SZ_OPCC(in1size,in2size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPCC operator. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +in1size = string(in1size); +in2size = string(in2size); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +// --- Get dimensions of input arguments. --- +in1dim = GetSymbolDimension(in1size); +in2dim = GetSymbolDimension(in2size); + +if (isnum(in1size(1)) & isnum(in2size(1))) + in1num = eval(in1size(1)); + in2num = eval(in2size(1)); + opoutsize(1) = string(in1num+in2num); +else + opoutsize(1) = '('+string(in1size(1))+'+'+string(in2size(1))+')'; +end + +opoutsize(2) = in1size(2); + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPDOTAPEX.sci b/macros/FunctionAnnotation/FA_SZ_OPDOTAPEX.sci index 64e8030e..b8b36218 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPDOTAPEX.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPDOTAPEX.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPDOTAPEX(in1size) -// function opoutsize = FA_SZ_OPDOTAPEX(in1size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTAPEX. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTAPEX(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPDOTAPEX(in1size) +// function opoutsize = FA_SZ_OPDOTAPEX(in1size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTAPEX. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTAPEX(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPDOTBACKSLASH.sci b/macros/FunctionAnnotation/FA_SZ_OPDOTBACKSLASH.sci index 75f4d5c3..2baeb0f3 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPDOTBACKSLASH.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPDOTBACKSLASH.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPDOTBACKSLASH(in1size,in2size) -// function opoutsize = FA_SZ_OPDOTBACKSLASH(in1size,in2size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTSTAR. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPDOTBACKSLASH(in1size,in2size) +// function opoutsize = FA_SZ_OPDOTBACKSLASH(in1size,in2size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTSTAR. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPDOTHAT.sci b/macros/FunctionAnnotation/FA_SZ_OPDOTHAT.sci index af522bac..024284e2 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPDOTHAT.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPDOTHAT.sci @@ -1,43 +1,43 @@ -function opoutsize = FA_SZ_OPDOTHAT(in1size,in2size) -// function opoutsize = FA_SZ_OPDOTHAT(in1size,in2size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPDOTHAT operator. -// -// Assuming: -// size(in1) = [in1r,in1c] -// size(in2) = [in2r,in2c] -// size(out) = [outr,outc] -// -// we have the following combinations: -// in1 in2 outr outc -// ----------------------- -// S S in2r in2c -// S M in2r in2c -// M S in1r in1c -// M M in1r in1c -// -// Where S means that the input is a scalar -// and M means that the input is a matrix. -// -// Input data: -// in1size: size of input number 1. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// in2size: size of input number 2. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Output data: -// opoutsize: size of output. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Status: -// 10-Dec-2007 -- Raffaele Nutricato: Author. -// 10-Dec-2007 -- Alberto Morea: Test Ok. -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); - -endfunction +function opoutsize = FA_SZ_OPDOTHAT(in1size,in2size) +// function opoutsize = FA_SZ_OPDOTHAT(in1size,in2size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPDOTHAT operator. +// +// Assuming: +// size(in1) = [in1r,in1c] +// size(in2) = [in2r,in2c] +// size(out) = [outr,outc] +// +// we have the following combinations: +// in1 in2 outr outc +// ----------------------- +// S S in2r in2c +// S M in2r in2c +// M S in1r in1c +// M M in1r in1c +// +// Where S means that the input is a scalar +// and M means that the input is a matrix. +// +// Input data: +// in1size: size of input number 1. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// in2size: size of input number 2. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Output data: +// opoutsize: size of output. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Status: +// 10-Dec-2007 -- Raffaele Nutricato: Author. +// 10-Dec-2007 -- Alberto Morea: Test Ok. +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPDOTSLASH.sci b/macros/FunctionAnnotation/FA_SZ_OPDOTSLASH.sci index 2a071f27..dc760757 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPDOTSLASH.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPDOTSLASH.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPDOTSLASH(in1size,in2size) -// function opoutsize = FA_SZ_OPDOTSLASH(in1size,in2size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTSTAR. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPDOTSLASH(in1size,in2size) +// function opoutsize = FA_SZ_OPDOTSLASH(in1size,in2size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTSTAR. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPDOTSTAR.sci b/macros/FunctionAnnotation/FA_SZ_OPDOTSTAR.sci index 3fbae19a..1263f127 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPDOTSTAR.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPDOTSTAR.sci @@ -1,32 +1,32 @@ -function opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size) -// function opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPDOTSTAR operator. -// -// -// Status: -// 08-Jan-2008 -- Raffaele Nutricato: Author. -// 08-Jan-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -// --- Get dimensions of input arguments. --- -in1dim = GetSymbolDimension(in1size); - -if (in1dim == 0) - opoutsize = string(in2size); -else - opoutsize = string(in1size); -end - -endfunction +function opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size) +// function opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPDOTSTAR operator. +// +// +// Status: +// 08-Jan-2008 -- Raffaele Nutricato: Author. +// 08-Jan-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +// --- Get dimensions of input arguments. --- +in1dim = GetSymbolDimension(in1size); + +if (in1dim == 0) + opoutsize = string(in2size); +else + opoutsize = string(in1size); +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPHAT.sci b/macros/FunctionAnnotation/FA_SZ_OPHAT.sci index 31174511..aac56372 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPHAT.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPHAT.sci @@ -1,43 +1,43 @@ -function opoutsize = FA_SZ_OPHAT(in1size,in2size) -// function opoutsize = FA_SZ_OPHAT(in1size,in2size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPHAT operator. -// -// Assuming: -// size(in1) = [in1r,in1c] -// size(in2) = [in2r,in2c] -// size(out) = [outr,outc] -// -// we have the following combinations: -// in1 in2 outr outc -// ----------------------- -// S S in2r in2c -// S M in2r in2c -// M S in1r in1c -// M M in1r in1c -// -// Where S means that the input is a scalar -// and M means that the input is a matrix. -// -// Input data: -// in1size: size of input number 1. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// in2size: size of input number 2. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Output data: -// opoutsize: size of output. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Status: -// 10-Dec-2007 -- Raffaele Nutricato: Author. -// 10-Dec-2007 -- Alberto Morea: Test Ok. -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); - -endfunction +function opoutsize = FA_SZ_OPHAT(in1size,in2size) +// function opoutsize = FA_SZ_OPHAT(in1size,in2size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPHAT operator. +// +// Assuming: +// size(in1) = [in1r,in1c] +// size(in2) = [in2r,in2c] +// size(out) = [outr,outc] +// +// we have the following combinations: +// in1 in2 outr outc +// ----------------------- +// S S in2r in2c +// S M in2r in2c +// M S in1r in1c +// M M in1r in1c +// +// Where S means that the input is a scalar +// and M means that the input is a matrix. +// +// Input data: +// in1size: size of input number 1. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// in2size: size of input number 2. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Output data: +// opoutsize: size of output. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Status: +// 10-Dec-2007 -- Raffaele Nutricato: Author. +// 10-Dec-2007 -- Alberto Morea: Test Ok. +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPLOGAND.sci b/macros/FunctionAnnotation/FA_SZ_OPLOGAND.sci index 099bb9ac..29748c2c 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPLOGAND.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPLOGAND.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPLOGAND(in1size,in2size) -// function opoutsize = FA_SZ_OPLOGAND(in1size,in2size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTSTAR. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPLOGAND(in1size,in2size) +// function opoutsize = FA_SZ_OPLOGAND(in1size,in2size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTSTAR. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPLOGEQ.sci b/macros/FunctionAnnotation/FA_SZ_OPLOGEQ.sci index 4ade6a0f..ecb30035 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPLOGEQ.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPLOGEQ.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPLOGEQ(in1size,in2size) -// function opoutsize = FA_SZ_OPLOGEQ(in1size,in2size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTSTAR. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPLOGEQ(in1size,in2size) +// function opoutsize = FA_SZ_OPLOGEQ(in1size,in2size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTSTAR. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPLOGGE.sci b/macros/FunctionAnnotation/FA_SZ_OPLOGGE.sci index c6d6ee3f..702d9171 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPLOGGE.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPLOGGE.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPLOGGE(in1size,in2size) -// function opoutsize = FA_SZ_OPLOGGE(in1size,in2size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTSTAR. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPLOGGE(in1size,in2size) +// function opoutsize = FA_SZ_OPLOGGE(in1size,in2size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTSTAR. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPLOGGT.sci b/macros/FunctionAnnotation/FA_SZ_OPLOGGT.sci index 0f6493c9..5a15d26e 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPLOGGT.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPLOGGT.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPLOGGT(in1size,in2size) -// function opoutsize = FA_SZ_OPLOGGT(in1size,in2size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTSTAR. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPLOGGT(in1size,in2size) +// function opoutsize = FA_SZ_OPLOGGT(in1size,in2size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTSTAR. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPLOGLE.sci b/macros/FunctionAnnotation/FA_SZ_OPLOGLE.sci index edda359f..2e2e8621 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPLOGLE.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPLOGLE.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPLOGLE(in1size,in2size) -// function opoutsize = FA_SZ_OPLOGLE(in1size,in2size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTSTAR. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPLOGLE(in1size,in2size) +// function opoutsize = FA_SZ_OPLOGLE(in1size,in2size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTSTAR. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPLOGLT.sci b/macros/FunctionAnnotation/FA_SZ_OPLOGLT.sci index 81b1b256..92fe9305 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPLOGLT.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPLOGLT.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPLOGLT(in1size,in2size) -// function opoutsize = FA_SZ_OPLOGLT(in1size,in2size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTSTAR. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPLOGLT(in1size,in2size) +// function opoutsize = FA_SZ_OPLOGLT(in1size,in2size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTSTAR. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPLOGNE.sci b/macros/FunctionAnnotation/FA_SZ_OPLOGNE.sci index ff62abbf..785c6b3c 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPLOGNE.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPLOGNE.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPLOGNE(in1size,in2size) -// function opoutsize = FA_SZ_OPLOGNE(in1size,in2size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTSTAR. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPLOGNE(in1size,in2size) +// function opoutsize = FA_SZ_OPLOGNE(in1size,in2size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTSTAR. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPLOGNOT.sci b/macros/FunctionAnnotation/FA_SZ_OPLOGNOT.sci index 3b0c6549..540be9dc 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPLOGNOT.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPLOGNOT.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPLOGNOT(in1size) -// function opoutsize = FA_SZ_OPLOGNOT(in1size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTAPEX. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTAPEX(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPLOGNOT(in1size) +// function opoutsize = FA_SZ_OPLOGNOT(in1size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTAPEX. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTAPEX(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPLOGOR.sci b/macros/FunctionAnnotation/FA_SZ_OPLOGOR.sci index f28eec2f..91d7ebd6 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPLOGOR.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPLOGOR.sci @@ -1,16 +1,16 @@ -function opoutsize = FA_SZ_OPLOGOR(in1size,in2size) -// function opoutsize = FA_SZ_OPLOGOR(in1size,in2size) -// ----------------------------------------------------------------- -// Alias of FA_SZ_OPDOTSTAR. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); -endfunction +function opoutsize = FA_SZ_OPLOGOR(in1size,in2size) +// function opoutsize = FA_SZ_OPLOGOR(in1size,in2size) +// ----------------------------------------------------------------- +// Alias of FA_SZ_OPDOTSTAR. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +opoutsize = FA_SZ_OPDOTSTAR(in1size,in2size); +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPMINUS.sci b/macros/FunctionAnnotation/FA_SZ_OPMINUS.sci index 5f7fc96a..fa8eaca5 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPMINUS.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPMINUS.sci @@ -1,51 +1,51 @@ -function opoutsize = FA_SZ_OPMINUS(in1size,in2size) -// function opoutsize = FA_SZ_OPMINUS(in1size,in2size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPMINUS operator. -// -// Assuming: -// size(in1) = [in1r,in1c] -// size(in2) = [in2r,in2c] -// size(out) = [outr,outc] -// -// we have the following combinations: -// in1 in2 outr outc -// ----------------------- -// S S in2r in2c -// S M in2r in2c -// M S in1r in1c -// M M in1r in1c -// -// Where S means that the input is a scalar -// and M means that the input is a matrix. -// -// Input data: -// in1size: size of input number 1. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// in2size: size of input number 2. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Output data: -// opoutsize: size of output. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Status: -// 08-Dec-2007 -- Raffaele Nutricato: Author. -// 08-Dec-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -opoutsize = FA_SZ_OPPLUSA(in1size,in2size); - -endfunction +function opoutsize = FA_SZ_OPMINUS(in1size,in2size) +// function opoutsize = FA_SZ_OPMINUS(in1size,in2size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPMINUS operator. +// +// Assuming: +// size(in1) = [in1r,in1c] +// size(in2) = [in2r,in2c] +// size(out) = [outr,outc] +// +// we have the following combinations: +// in1 in2 outr outc +// ----------------------- +// S S in2r in2c +// S M in2r in2c +// M S in1r in1c +// M M in1r in1c +// +// Where S means that the input is a scalar +// and M means that the input is a matrix. +// +// Input data: +// in1size: size of input number 1. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// in2size: size of input number 2. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Output data: +// opoutsize: size of output. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Status: +// 08-Dec-2007 -- Raffaele Nutricato: Author. +// 08-Dec-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +opoutsize = FA_SZ_OPPLUSA(in1size,in2size); + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPPLUS.sci b/macros/FunctionAnnotation/FA_SZ_OPPLUS.sci index f439e23e..8ea8d86f 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPPLUS.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPPLUS.sci @@ -1,93 +1,93 @@ -function opoutsize = FA_SZ_OPPLUS(in1size,in2size,in1type,in2type) -// function opoutsize = FA_SZ_OPPLUS(in1size,in2size,in1type,in2type) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPPLUS operator, -// including the string operations. -// -// Assuming: -// size(in1) = [in1r,in1c] -// size(in2) = [in2r,in2c] -// size(out) = [outr,outc] -// -// we have the following combinations: -// in1 in2 outr outc -// ----------------------- -// S S in2r in2c -// S M in2r in2c -// M S in1r in1c -// M M in1r in1c -// -// Where S means that the input is a scalar -// and M means that the input is a matrix. -// There is also the case related to the string catenation! -// This is the main difference between - and + operators. -// -// Input data: -// in1size: size of input number 1. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// in2size: size of input number 2. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Output data: -// opoutsize: size of output. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Status: -// 08-Dec-2007 -- Raffaele Nutricato: Author. -// 08-Dec-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),4,4); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -// --- Get dimensions of input arguments. --- -in1size = string(in1size); -in2size = string(in2size); -in1type = string(in1type); -in2type = string(in2type); -in1dim = GetSymbolDimension(in1size); - -if ((in1type ~= 'g') & (in2type ~= 'g')) - opoutsize = FA_SZ_OPPLUSA(in1size,in2size); -elseif ((in1type == 'g') & (in2type == 'g')) - opoutsize(1) = '1'; - if (isnum(in1size(1)) & isnum(in2size(1))) - in1num = eval(in1size(1)); - in2num = eval(in2size(1)); - if (in1num > 1 | in2num > 1) - error(9999, 'String catenation can be performed only on strings of 1 x N size not N x 1 size'); - //NUT: mi pare che non possano proprio esistere stringe di dimensione Nx1 perche' in - //NUT: scilab esiste il tipo string che e' di size 1x1 e sono io a trasformarlo in - //NUT: 1xN per cui se uso sempre questa convenzione non sbaglio mai. - //NUT: ho provato in scilab a fare la trasposta di una stringa e ottengo sempre 1x1. - end - end - if (isnum(in1size(2)) & isnum(in2size(2))) - in1num = eval(in1size(2)); - in2num = eval(in2size(2)); - opoutsize(2) = string(in1num+in2num-1); - if isnan(opoutsize(2)) - opoutsize(2) = '__SCI2CNANSIZE'; - else - opoutsize(2) = string(opoutsize(2)); - end - else - opoutsize(2) = '('+string(in1size(2))+'+'+string(in2size(2))+'-1)'; - end -else - error(9999, 'Unexpected type combination for ""+"" operator (type1,type2): ('+in1type+in2type+').'); -end - -endfunction +function opoutsize = FA_SZ_OPPLUS(in1size,in2size,in1type,in2type) +// function opoutsize = FA_SZ_OPPLUS(in1size,in2size,in1type,in2type) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPPLUS operator, +// including the string operations. +// +// Assuming: +// size(in1) = [in1r,in1c] +// size(in2) = [in2r,in2c] +// size(out) = [outr,outc] +// +// we have the following combinations: +// in1 in2 outr outc +// ----------------------- +// S S in2r in2c +// S M in2r in2c +// M S in1r in1c +// M M in1r in1c +// +// Where S means that the input is a scalar +// and M means that the input is a matrix. +// There is also the case related to the string catenation! +// This is the main difference between - and + operators. +// +// Input data: +// in1size: size of input number 1. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// in2size: size of input number 2. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Output data: +// opoutsize: size of output. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Status: +// 08-Dec-2007 -- Raffaele Nutricato: Author. +// 08-Dec-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),4,4); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +// --- Get dimensions of input arguments. --- +in1size = string(in1size); +in2size = string(in2size); +in1type = string(in1type); +in2type = string(in2type); +in1dim = GetSymbolDimension(in1size); + +if ((in1type ~= 'g') & (in2type ~= 'g')) + opoutsize = FA_SZ_OPPLUSA(in1size,in2size); +elseif ((in1type == 'g') & (in2type == 'g')) + opoutsize(1) = '1'; + if (isnum(in1size(1)) & isnum(in2size(1))) + in1num = eval(in1size(1)); + in2num = eval(in2size(1)); + if (in1num > 1 | in2num > 1) + error(9999, 'String catenation can be performed only on strings of 1 x N size not N x 1 size'); + //NUT: mi pare che non possano proprio esistere stringe di dimensione Nx1 perche' in + //NUT: scilab esiste il tipo string che e' di size 1x1 e sono io a trasformarlo in + //NUT: 1xN per cui se uso sempre questa convenzione non sbaglio mai. + //NUT: ho provato in scilab a fare la trasposta di una stringa e ottengo sempre 1x1. + end + end + if (isnum(in1size(2)) & isnum(in2size(2))) + in1num = eval(in1size(2)); + in2num = eval(in2size(2)); + opoutsize(2) = string(in1num+in2num-1); + if isnan(opoutsize(2)) + opoutsize(2) = '__SCI2CNANSIZE'; + else + opoutsize(2) = string(opoutsize(2)); + end + else + opoutsize(2) = '('+string(in1size(2))+'+'+string(in2size(2))+'-1)'; + end +else + error(9999, 'Unexpected type combination for ""+"" operator (type1,type2): ('+in1type+in2type+').'); +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPPLUSA.sci b/macros/FunctionAnnotation/FA_SZ_OPPLUSA.sci index 42ba90d5..5c88ea30 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPPLUSA.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPPLUSA.sci @@ -1,66 +1,66 @@ -function opoutsize = FA_SZ_OPPLUSA(in1size,in2size) -// function opoutsize = FA_SZ_OPPLUSA(in1size,in2size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPPLUS operator -// restricted to arithmetic operations (string operations not supported.) -// -// Assuming: -// size(in1) = [in1r,in1c] -// size(in2) = [in2r,in2c] -// size(out) = [outr,outc] -// -// we have the following combinations: -// in1 in2 outr outc -// ----------------------- -// S S in2r in2c -// S M in2r in2c -// M S in1r in1c -// M M in1r in1c -// -// Where S means that the input is a scalar -// and M means that the input is a matrix. -// There is also the case related to the string catenation! -// This is the main difference between - and + operators. -// -// Input data: -// in1size: size of input number 1. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// in2size: size of input number 2. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Output data: -// opoutsize: size of output. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Status: -// 18-Mar-2008 -- Raffaele Nutricato: Author. -// 18-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -// --- Get dimensions of input arguments. --- -in1size = string(in1size); -in2size = string(in2size); -in1dim = GetSymbolDimension(in1size); - -if (in1dim == 0) - opoutsize = in2size; -else - opoutsize = in1size; -end - -endfunction +function opoutsize = FA_SZ_OPPLUSA(in1size,in2size) +// function opoutsize = FA_SZ_OPPLUSA(in1size,in2size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPPLUS operator +// restricted to arithmetic operations (string operations not supported.) +// +// Assuming: +// size(in1) = [in1r,in1c] +// size(in2) = [in2r,in2c] +// size(out) = [outr,outc] +// +// we have the following combinations: +// in1 in2 outr outc +// ----------------------- +// S S in2r in2c +// S M in2r in2c +// M S in1r in1c +// M M in1r in1c +// +// Where S means that the input is a scalar +// and M means that the input is a matrix. +// There is also the case related to the string catenation! +// This is the main difference between - and + operators. +// +// Input data: +// in1size: size of input number 1. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// in2size: size of input number 2. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Output data: +// opoutsize: size of output. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Status: +// 18-Mar-2008 -- Raffaele Nutricato: Author. +// 18-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +// --- Get dimensions of input arguments. --- +in1size = string(in1size); +in2size = string(in2size); +in1dim = GetSymbolDimension(in1size); + +if (in1dim == 0) + opoutsize = in2size; +else + opoutsize = in1size; +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPRC.sci b/macros/FunctionAnnotation/FA_SZ_OPRC.sci index c4da4a0f..5a01b743 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPRC.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPRC.sci @@ -1,40 +1,40 @@ -function opoutsize = FA_SZ_OPRC(in1size,in2size) -// function opoutsize = FA_SZ_OPRC(in1size,in2size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPRC operator. -// -// -// Status: -// 08-Mar-2008 -- Raffaele Nutricato: Author. -// 08-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -in1size = string(in1size); -in2size = string(in2size); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -// --- Get dimensions of input arguments. --- -in1dim = GetSymbolDimension(in1size); -in2dim = GetSymbolDimension(in2size); - -opoutsize(1) = in1size(1); - -if (isnum(in1size(2)) & isnum(in2size(2))) - in1num = eval(in1size(2)); - in2num = eval(in2size(2)); - opoutsize(2) = string(in1num+in2num); -else - opoutsize(2) = '('+string(in1size(2))+'+'+string(in2size(2))+')'; -end - -endfunction +function opoutsize = FA_SZ_OPRC(in1size,in2size) +// function opoutsize = FA_SZ_OPRC(in1size,in2size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPRC operator. +// +// +// Status: +// 08-Mar-2008 -- Raffaele Nutricato: Author. +// 08-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +in1size = string(in1size); +in2size = string(in2size); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +// --- Get dimensions of input arguments. --- +in1dim = GetSymbolDimension(in1size); +in2dim = GetSymbolDimension(in2size); + +opoutsize(1) = in1size(1); + +if (isnum(in1size(2)) & isnum(in2size(2))) + in1num = eval(in1size(2)); + in2num = eval(in2size(2)); + opoutsize(2) = string(in1num+in2num); +else + opoutsize(2) = '('+string(in1size(2))+'+'+string(in2size(2))+')'; +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPSLASH.sci b/macros/FunctionAnnotation/FA_SZ_OPSLASH.sci index a44057d9..565129a0 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPSLASH.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPSLASH.sci @@ -1,37 +1,37 @@ -function opoutsize = FA_SZ_OPSLASH(in1size,in2size) -// function opoutsize = FA_SZ_OPSLASH(in1size,in2size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPSLASH operator. -// -// Assuming: -// size(in1) = [in1r,in1c] -// size(in2) = [in2r,in2c] -// size(out) = [outr,outc] -// - - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -in1size = string(in1size); -in2size = string(in2size); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -// --- Get dimensions of input arguments. --- -in1dim = GetSymbolDimension(in1size); -in2dim = GetSymbolDimension(in2size); - -if (in1dim == 0) - opoutsize = in2size; -elseif (in2dim == 0) - opoutsize = in1size; -else - opoutsize(1) = in1size(1); - opoutsize(2) = in2size(1); -end - -endfunction +function opoutsize = FA_SZ_OPSLASH(in1size,in2size) +// function opoutsize = FA_SZ_OPSLASH(in1size,in2size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPSLASH operator. +// +// Assuming: +// size(in1) = [in1r,in1c] +// size(in2) = [in2r,in2c] +// size(out) = [outr,outc] +// + + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +in1size = string(in1size); +in2size = string(in2size); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +// --- Get dimensions of input arguments. --- +in1dim = GetSymbolDimension(in1size); +in2dim = GetSymbolDimension(in2size); + +if (in1dim == 0) + opoutsize = in2size; +elseif (in2dim == 0) + opoutsize = in1size; +else + opoutsize(1) = in1size(1); + opoutsize(2) = in2size(1); +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_OPSTAR.sci b/macros/FunctionAnnotation/FA_SZ_OPSTAR.sci index 12190d38..95a31760 100644 --- a/macros/FunctionAnnotation/FA_SZ_OPSTAR.sci +++ b/macros/FunctionAnnotation/FA_SZ_OPSTAR.sci @@ -1,68 +1,68 @@ -function opoutsize = FA_SZ_OPSTAR(in1size,in2size) -// function opoutsize = FA_SZ_OPSTAR(in1size,in2size) -// ----------------------------------------------------------------- -// Returns the size of the output computed by OPSTAR operator. -// -// Assuming: -// size(in1) = [in1r,in1c] -// size(in2) = [in2r,in2c] -// size(out) = [outr,outc] -// -// we have the following combinations: -// in1 in2 outr outc -// ----------------------- -// S S in2r in2c -// S M in2r in2c -// M S in1r in1c -// M M in1r in2c -// -// Where S means that the input is a scalar -// and M means that the input is a matrix. -// -// Input data: -// in1size: size of input number 1. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// in2size: size of input number 2. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Output data: -// opoutsize: size of output. It is an array of 2 strings. -// The first string specifies the number of rows. -// The second string specifies the number of columns. -// -// Status: -// 08-Dec-2007 -- Raffaele Nutricato: Author. -// 08-Dec-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -in1size = string(in1size); -in2size = string(in2size); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -// --- Get dimensions of input arguments. --- -in1dim = GetSymbolDimension(in1size); -in2dim = GetSymbolDimension(in2size); - -if (in1dim == 0) - opoutsize = in2size; -elseif (in2dim == 0) - opoutsize = in1size; -else - opoutsize(1) = in1size(1); - opoutsize(2) = in2size(2); -end - -endfunction +function opoutsize = FA_SZ_OPSTAR(in1size,in2size) +// function opoutsize = FA_SZ_OPSTAR(in1size,in2size) +// ----------------------------------------------------------------- +// Returns the size of the output computed by OPSTAR operator. +// +// Assuming: +// size(in1) = [in1r,in1c] +// size(in2) = [in2r,in2c] +// size(out) = [outr,outc] +// +// we have the following combinations: +// in1 in2 outr outc +// ----------------------- +// S S in2r in2c +// S M in2r in2c +// M S in1r in1c +// M M in1r in2c +// +// Where S means that the input is a scalar +// and M means that the input is a matrix. +// +// Input data: +// in1size: size of input number 1. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// in2size: size of input number 2. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Output data: +// opoutsize: size of output. It is an array of 2 strings. +// The first string specifies the number of rows. +// The second string specifies the number of columns. +// +// Status: +// 08-Dec-2007 -- Raffaele Nutricato: Author. +// 08-Dec-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +in1size = string(in1size); +in2size = string(in2size); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +// --- Get dimensions of input arguments. --- +in1dim = GetSymbolDimension(in1size); +in2dim = GetSymbolDimension(in2size); + +if (in1dim == 0) + opoutsize = in2size; +elseif (in2dim == 0) + opoutsize = in1size; +else + opoutsize(1) = in1size(1); + opoutsize(2) = in2size(2); +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_ROW_COLUMN_CAT.sci b/macros/FunctionAnnotation/FA_SZ_ROW_COLUMN_CAT.sci index 527217a5..7883de6d 100644 --- a/macros/FunctionAnnotation/FA_SZ_ROW_COLUMN_CAT.sci +++ b/macros/FunctionAnnotation/FA_SZ_ROW_COLUMN_CAT.sci @@ -1,50 +1,50 @@ -function outsize = FA_SZ_ROW_COLUMN_CAT(inval,in1size,in2size) -//function outsize = FA_SZ_ROW_COLUMN_CAT(inval,in1size,in2size) -// ----------------------------------------------------------------- -// Get size of row (col) of the output for cat function -// -// Input data: -// inval: string specifying the value of input argument. -// in1size: string specifying the row (col) of second input -// in3size: string specifying the row (col) of third input -// Output data: -// outsize: string containing the column size for output argument. -// -// 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: Mushir -// Organization: FOSSEE, IIT Bombay -// Email: toolbox@scilab.in -// - -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),3,3); - - -in1size = string(in1size); -in2size = string(in2size); -inval = string(inval); -if(inval == '1') then - in1num_r = eval(in1size); - in2num_r = eval(in2size); - outsize(1) = string(in1num_r + in2num_r); - outsize(2) = string(in2num_r); -elseif(inval == '2') then - in1num_c = eval(in1size); - in2num_c = eval(in2size); - outsize(1) = string(in1num_c); - outsize(2) = string(in1num_c + in2num_c); -else - error(36, "Wrong input argument "+inval+". Use 1 or 2 as first argument in cat command."); -end - -endfunction +function outsize = FA_SZ_ROW_COLUMN_CAT(inval,in1size,in2size) +//function outsize = FA_SZ_ROW_COLUMN_CAT(inval,in1size,in2size) +// ----------------------------------------------------------------- +// Get size of row (col) of the output for cat function +// +// Input data: +// inval: string specifying the value of input argument. +// in1size: string specifying the row (col) of second input +// in3size: string specifying the row (col) of third input +// Output data: +// outsize: string containing the column size for output argument. +// +// 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: Mushir +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +// + +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),3,3); + + +in1size = string(in1size); +in2size = string(in2size); +inval = string(inval); +if(inval == '1') then + in1num_r = eval(in1size); + in2num_r = eval(in2size); + outsize(1) = string(in1num_r + in2num_r); + outsize(2) = string(in2num_r); +elseif(inval == '2') then + in1num_c = eval(in1size); + in2num_c = eval(in2size); + outsize(1) = string(in1num_c); + outsize(2) = string(in1num_c + in2num_c); +else + error(36, "Wrong input argument "+inval+". Use 1 or 2 as first argument in cat command."); +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_SEL1.sci b/macros/FunctionAnnotation/FA_SZ_SEL1.sci index 6071e960..08023ef5 100644 --- a/macros/FunctionAnnotation/FA_SZ_SEL1.sci +++ b/macros/FunctionAnnotation/FA_SZ_SEL1.sci @@ -1,48 +1,48 @@ -function opout = FA_SZ_SEL1(in1,in2) -// function opout = FA_SZ_SEL1(in1,in2) -// ----------------------------------------------------------------- -// Determines the number of rows of the output arguments -// according to the number of rows of the first input argument and -// the specifier in2 which can be 1,2 or 'r','c' and 'm'. -// In this release the 'm' specifier is not supported so when it is -// used SCI2C will issue an error. -// -// Input data: -// in1: string specifying a number or a symbol. -// in2: string specifying a number or a symbol. -// -// Output data: -// opout: string containing the computed result. -// -// Status: -// 16-Mar-2008 -- Raffaele Nutricato: Author. -// 16-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- +function opout = FA_SZ_SEL1(in1,in2) +// function opout = FA_SZ_SEL1(in1,in2) +// ----------------------------------------------------------------- +// Determines the number of rows of the output arguments +// according to the number of rows of the first input argument and +// the specifier in2 which can be 1,2 or 'r','c' and 'm'. +// In this release the 'm' specifier is not supported so when it is +// used SCI2C will issue an error. +// +// Input data: +// in1: string specifying a number or a symbol. +// in2: string specifying a number or a symbol. +// +// Output data: +// opout: string containing the computed result. +// +// Status: +// 16-Mar-2008 -- Raffaele Nutricato: Author. +// 16-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- // ------------------------------ - -SCI2CNInArgCheck(argn(2),2,2); -ReportFileName = ''; -in2 = string(in2); - -if (in2 == '1' | in2 == '""rr""' ) // Where can r become rr ??? - opout = '1'; -elseif (in2 == '2' | in2 == '""c""' ) + +SCI2CNInArgCheck(argn(2),2,2); +ReportFileName = ''; +in2 = string(in2); + +if (in2 == '1' | in2 == '""rr""' ) // Where can r become rr ??? + opout = '1'; +elseif (in2 == '2' | in2 == '""c""' ) opout = in1; - -else - PrintStringInfo(' ',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Cannot associate the second input argument to a known specifier.',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Please rearrange your code by using one of the following specifiers:',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: 1 or 2.',ReportFileName,'both','y'); - PrintStringInfo(' ',ReportFileName,'both','y'); - error(9999, 'SCI2CERROR: Cannot associate the second input argument to a known specifier.'); -end -endfunction + +else + PrintStringInfo(' ',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Cannot associate the second input argument to a known specifier.',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Please rearrange your code by using one of the following specifiers:',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: 1 or 2.',ReportFileName,'both','y'); + PrintStringInfo(' ',ReportFileName,'both','y'); + error(9999, 'SCI2CERROR: Cannot associate the second input argument to a known specifier.'); +end +endfunction diff --git a/macros/FunctionAnnotation/FA_SZ_SEL2.sci b/macros/FunctionAnnotation/FA_SZ_SEL2.sci index b0be739f..94dbed79 100644 --- a/macros/FunctionAnnotation/FA_SZ_SEL2.sci +++ b/macros/FunctionAnnotation/FA_SZ_SEL2.sci @@ -1,44 +1,44 @@ -function opout = FA_SZ_SEL2(in1,in2) -// function opout = FA_SZ_SEL2(in1,in2) -// ----------------------------------------------------------------- -// Determines the number of columns of the output arguments -// according to the number of columns of the first input argument and -// the specifier in2 which can be 1,2 or 'r','c' and 'm'. -// In this release the 'm' specifier is not supported so when it is -// used SCI2C will issue an error. -// -// Input data: -// in1: string specifying a number or a symbol. -// in2: string specifying a number or a symbol. -// -// Output data: -// opout: string containing the computed result. -// -// Status: -// 16-Mar-2008 -- Raffaele Nutricato: Author. -// 16-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); -ReportFileName = ''; -in2 = string(in2); - -if (in2 == '1'| in2 == '""rr""') - opout = in1; -elseif (in2 == '2'| in2 == '""c""') - opout = '1'; -else - PrintStringInfo(' ',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Cannot associate the second input argument to a known specifier.',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Please rearrange your code by using one of the following specifiers:',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: 1 or 2.',ReportFileName,'both','y'); - PrintStringInfo(' ',ReportFileName,'both','y'); - error(9999, 'SCI2CERROR: Cannot associate the second input argument to a known specifier.'); -end -endfunction +function opout = FA_SZ_SEL2(in1,in2) +// function opout = FA_SZ_SEL2(in1,in2) +// ----------------------------------------------------------------- +// Determines the number of columns of the output arguments +// according to the number of columns of the first input argument and +// the specifier in2 which can be 1,2 or 'r','c' and 'm'. +// In this release the 'm' specifier is not supported so when it is +// used SCI2C will issue an error. +// +// Input data: +// in1: string specifying a number or a symbol. +// in2: string specifying a number or a symbol. +// +// Output data: +// opout: string containing the computed result. +// +// Status: +// 16-Mar-2008 -- Raffaele Nutricato: Author. +// 16-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); +ReportFileName = ''; +in2 = string(in2); + +if (in2 == '1'| in2 == '""rr""') + opout = in1; +elseif (in2 == '2'| in2 == '""c""') + opout = '1'; +else + PrintStringInfo(' ',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Cannot associate the second input argument to a known specifier.',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Please rearrange your code by using one of the following specifiers:',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: 1 or 2.',ReportFileName,'both','y'); + PrintStringInfo(' ',ReportFileName,'both','y'); + error(9999, 'SCI2CERROR: Cannot associate the second input argument to a known specifier.'); +end +endfunction diff --git a/macros/FunctionAnnotation/FA_TP_C.sci b/macros/FunctionAnnotation/FA_TP_C.sci index b383b5ac..5bcbbb42 100644 --- a/macros/FunctionAnnotation/FA_TP_C.sci +++ b/macros/FunctionAnnotation/FA_TP_C.sci @@ -1,32 +1,32 @@ -function typeout = FA_TP_C() -// function typeout = FA_TP_C() -// ----------------------------------------------------------------- -// Returns the "single complex" type specifier -// for Function Annotations. -// -// Input data: -// --- -// -// Output data: -// typeout: string containing the type specifier. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),0,0); - - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -typeout = 'c'; - -endfunction +function typeout = FA_TP_C() +// function typeout = FA_TP_C() +// ----------------------------------------------------------------- +// Returns the "single complex" type specifier +// for Function Annotations. +// +// Input data: +// --- +// +// Output data: +// typeout: string containing the type specifier. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),0,0); + + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +typeout = 'c'; + +endfunction diff --git a/macros/FunctionAnnotation/FA_TP_COMPLEX.sci b/macros/FunctionAnnotation/FA_TP_COMPLEX.sci index bf3f2f9f..cb04180f 100644 --- a/macros/FunctionAnnotation/FA_TP_COMPLEX.sci +++ b/macros/FunctionAnnotation/FA_TP_COMPLEX.sci @@ -1,42 +1,42 @@ -function typeout = FA_TP_COMPLEX(in1) -// function typeout = FA_TP_COMPLEX(in1) -// ----------------------------------------------------------------- -// Converts into complex data type the input argument, by preserving -// the precision of the input argument. -// See following examples: -// FA_TP_COMPLEX('s') = 'c' -// FA_TP_COMPLEX('d') = 'z' -// FA_TP_COMPLEX('c') = 'c' -// FA_TP_COMPLEX('z') = 'z' -// -// Input data: -// in1: string specifying the data type number 1. -// -// Output data: -// typeout: string containing the type specifier. -// -// Status: -// 26-Jan-2008 -- Raffaele Nutricato: Author. -// 26-Jan-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -if (in1 == 's') - typeout = 'c'; -elseif (in1 == 'd') - typeout = 'z'; -else - typeout = in1; -end -endfunction +function typeout = FA_TP_COMPLEX(in1) +// function typeout = FA_TP_COMPLEX(in1) +// ----------------------------------------------------------------- +// Converts into complex data type the input argument, by preserving +// the precision of the input argument. +// See following examples: +// FA_TP_COMPLEX('s') = 'c' +// FA_TP_COMPLEX('d') = 'z' +// FA_TP_COMPLEX('c') = 'c' +// FA_TP_COMPLEX('z') = 'z' +// +// Input data: +// in1: string specifying the data type number 1. +// +// Output data: +// typeout: string containing the type specifier. +// +// Status: +// 26-Jan-2008 -- Raffaele Nutricato: Author. +// 26-Jan-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +if (in1 == 's') + typeout = 'c'; +elseif (in1 == 'd') + typeout = 'z'; +else + typeout = in1; +end +endfunction diff --git a/macros/FunctionAnnotation/FA_TP_D.sci b/macros/FunctionAnnotation/FA_TP_D.sci index 788a03fe..97932c36 100644 --- a/macros/FunctionAnnotation/FA_TP_D.sci +++ b/macros/FunctionAnnotation/FA_TP_D.sci @@ -1,32 +1,32 @@ -function typeout = FA_TP_D() -// function typeout = FA_TP_D() -// ----------------------------------------------------------------- -// Returns the "double" type specifier -// for Function Annotations. -// -// Input data: -// --- -// -// Output data: -// typeout: string containing the type specifier. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),0,0); - - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -typeout = 'd'; - -endfunction +function typeout = FA_TP_D() +// function typeout = FA_TP_D() +// ----------------------------------------------------------------- +// Returns the "double" type specifier +// for Function Annotations. +// +// Input data: +// --- +// +// Output data: +// typeout: string containing the type specifier. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),0,0); + + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +typeout = 'd'; + +endfunction diff --git a/macros/FunctionAnnotation/FA_TP_I.sci b/macros/FunctionAnnotation/FA_TP_I.sci index 94f383f4..741cd964 100644 --- a/macros/FunctionAnnotation/FA_TP_I.sci +++ b/macros/FunctionAnnotation/FA_TP_I.sci @@ -1,32 +1,32 @@ -function typeout = FA_TP_I() -// function typeout = FA_TP_I() -// ----------------------------------------------------------------- -// Returns the "int" type specifier -// for Function Annotations. -// -// Input data: -// --- -// -// Output data: -// typeout: string containing the type specifier. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),0,0); - - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -typeout = 'i'; - -endfunction +function typeout = FA_TP_I() +// function typeout = FA_TP_I() +// ----------------------------------------------------------------- +// Returns the "int" type specifier +// for Function Annotations. +// +// Input data: +// --- +// +// Output data: +// typeout: string containing the type specifier. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),0,0); + + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +typeout = 'i'; + +endfunction diff --git a/macros/FunctionAnnotation/FA_TP_MAX.sci b/macros/FunctionAnnotation/FA_TP_MAX.sci index 0b78f9e3..c1520794 100644 --- a/macros/FunctionAnnotation/FA_TP_MAX.sci +++ b/macros/FunctionAnnotation/FA_TP_MAX.sci @@ -1,45 +1,45 @@ -function opout = FA_TP_MAX(in1,in2) -// function opout = FA_TP_MAX(in1,in2) -// ----------------------------------------------------------------- -// Type-Maximum function for Function Annotations. -// Returns the maximum between the two data types in input according -// to a predefined priority. For example z(double complex) is -// greater that c(single complex). -// -// Input data: -// in1: string specifying the data type number 1. -// in2: string specifying the data type number 2. -// -// Output data: -// opout: string containing the computed result. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -in1Pin2 = in1+in2; -opout = in1; - -if (in2 == 'z') - opout = 'z'; -elseif (in1Pin2 == 'sd') - opout = 'd'; -elseif (in1Pin2 == 'sc') - opout = 'c'; -elseif (in1Pin2 == 'dc') - opout = 'z'; -end - -endfunction +function opout = FA_TP_MAX(in1,in2) +// function opout = FA_TP_MAX(in1,in2) +// ----------------------------------------------------------------- +// Type-Maximum function for Function Annotations. +// Returns the maximum between the two data types in input according +// to a predefined priority. For example z(double complex) is +// greater that c(single complex). +// +// Input data: +// in1: string specifying the data type number 1. +// in2: string specifying the data type number 2. +// +// Output data: +// opout: string containing the computed result. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +in1Pin2 = in1+in2; +opout = in1; + +if (in2 == 'z') + opout = 'z'; +elseif (in1Pin2 == 'sd') + opout = 'd'; +elseif (in1Pin2 == 'sc') + opout = 'c'; +elseif (in1Pin2 == 'dc') + opout = 'z'; +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_TP_REAL.sci b/macros/FunctionAnnotation/FA_TP_REAL.sci index 67a946dc..9f87f9f6 100644 --- a/macros/FunctionAnnotation/FA_TP_REAL.sci +++ b/macros/FunctionAnnotation/FA_TP_REAL.sci @@ -1,38 +1,38 @@ -function opout = FA_TP_REAL(in1) -// function opout = FA_TP_REAL(in1) -// ----------------------------------------------------------------- -// Type-Real function for Function Annotations. -// Returns the real precision corresponding to the precision of -// the input operand. -// -// Input data: -// in1: string specifying the data type number 1. -// -// Output data: -// opout: string containing the computed result. -// -// Status: -// 26-Mar-2008 -- Raffaele Nutricato: Author. -// 26-Mar-2008 -- Alberto Morea: Test Ok. -// -// Copyright 2008 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -opout = in1; - -if (in1 == 'c') - opout = 's'; -elseif (in1 == 'z') - opout = 'd'; -end - -endfunction +function opout = FA_TP_REAL(in1) +// function opout = FA_TP_REAL(in1) +// ----------------------------------------------------------------- +// Type-Real function for Function Annotations. +// Returns the real precision corresponding to the precision of +// the input operand. +// +// Input data: +// in1: string specifying the data type number 1. +// +// Output data: +// opout: string containing the computed result. +// +// Status: +// 26-Mar-2008 -- Raffaele Nutricato: Author. +// 26-Mar-2008 -- Alberto Morea: Test Ok. +// +// Copyright 2008 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +opout = in1; + +if (in1 == 'c') + opout = 's'; +elseif (in1 == 'z') + opout = 'd'; +end + +endfunction diff --git a/macros/FunctionAnnotation/FA_TP_S.sci b/macros/FunctionAnnotation/FA_TP_S.sci index 3de4c20c..3928c3b6 100644 --- a/macros/FunctionAnnotation/FA_TP_S.sci +++ b/macros/FunctionAnnotation/FA_TP_S.sci @@ -1,32 +1,32 @@ -function typeout = FA_TP_S() -// function typeout = FA_TP_S() -// ----------------------------------------------------------------- -// Returns the "float" type specifier -// for Function Annotations. -// -// Input data: -// --- -// -// Output data: -// typeout: string containing the type specifier. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),0,0); - - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -typeout = 's'; - -endfunction +function typeout = FA_TP_S() +// function typeout = FA_TP_S() +// ----------------------------------------------------------------- +// Returns the "float" type specifier +// for Function Annotations. +// +// Input data: +// --- +// +// Output data: +// typeout: string containing the type specifier. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),0,0); + + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +typeout = 's'; + +endfunction diff --git a/macros/FunctionAnnotation/FA_TP_USER.sci b/macros/FunctionAnnotation/FA_TP_USER.sci index e60a8ce8..f45ee483 100644 --- a/macros/FunctionAnnotation/FA_TP_USER.sci +++ b/macros/FunctionAnnotation/FA_TP_USER.sci @@ -1,38 +1,38 @@ -function type_out = FA_TP_USER(PrecisionSpecifier,DefaultType) -// function type_out = FA_TP_USER(PrecisionSpecifier,DefaultType) -// ----------------------------------------------------------------- -// Generate the output type of the output argument by using the -// output (AnnotationFnc) generated by CheckAnnotationFunction. -// double and float functions can be used to specify the type -// of the output argument. They are typically used in combination -// with zeros-like function. -// -// Input data: -// PrecisionSpecifier: it can be 'double' or 'float'. -// -// Output data: -// type_out: specifies the type of the output argument. It can be -// 's' for float precision or 'd' for double precision. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -if (mtlb_strcmp(PrecisionSpecifier,'int')) - type_out = 'i'; -elseif (mtlb_strcmp(PrecisionSpecifier,'float')) - type_out = 's'; -elseif (mtlb_strcmp(PrecisionSpecifier,'double')) - type_out = 'd'; -elseif (mtlb_strcmp(PrecisionSpecifier,'default')) - type_out = DefaultType; -else - error(9999, 'Unknown precision function: ""'+AnnotationFnc+'"".'); -end -endfunction +function type_out = FA_TP_USER(PrecisionSpecifier,DefaultType) +// function type_out = FA_TP_USER(PrecisionSpecifier,DefaultType) +// ----------------------------------------------------------------- +// Generate the output type of the output argument by using the +// output (AnnotationFnc) generated by CheckAnnotationFunction. +// double and float functions can be used to specify the type +// of the output argument. They are typically used in combination +// with zeros-like function. +// +// Input data: +// PrecisionSpecifier: it can be 'double' or 'float'. +// +// Output data: +// type_out: specifies the type of the output argument. It can be +// 's' for float precision or 'd' for double precision. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +if (mtlb_strcmp(PrecisionSpecifier,'int')) + type_out = 'i'; +elseif (mtlb_strcmp(PrecisionSpecifier,'float')) + type_out = 's'; +elseif (mtlb_strcmp(PrecisionSpecifier,'double')) + type_out = 'd'; +elseif (mtlb_strcmp(PrecisionSpecifier,'default')) + type_out = DefaultType; +else + error(9999, 'Unknown precision function: ""'+AnnotationFnc+'"".'); +end +endfunction diff --git a/macros/FunctionAnnotation/FA_TP_Z.sci b/macros/FunctionAnnotation/FA_TP_Z.sci index 2ac18dea..9c75b221 100644 --- a/macros/FunctionAnnotation/FA_TP_Z.sci +++ b/macros/FunctionAnnotation/FA_TP_Z.sci @@ -1,32 +1,32 @@ -function typeout = FA_TP_Z() -// function typeout = FA_TP_Z() -// ----------------------------------------------------------------- -// Returns the "double complex" type specifier -// for Function Annotations. -// -// Input data: -// --- -// -// Output data: -// typeout: string containing the type specifier. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),0,0); - - -// ------------------------ -// --- Generate Output. --- -// ------------------------ -typeout = 'z'; - -endfunction +function typeout = FA_TP_Z() +// function typeout = FA_TP_Z() +// ----------------------------------------------------------------- +// Returns the "double complex" type specifier +// for Function Annotations. +// +// Input data: +// --- +// +// Output data: +// typeout: string containing the type specifier. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),0,0); + + +// ------------------------ +// --- Generate Output. --- +// ------------------------ +typeout = 'z'; + +endfunction diff --git a/macros/FunctionList/FL_ExistCFunction.sci b/macros/FunctionList/FL_ExistCFunction.sci index dbb9121f..7c3d24c5 100644 --- a/macros/FunctionList/FL_ExistCFunction.sci +++ b/macros/FunctionList/FL_ExistCFunction.sci @@ -1,117 +1,117 @@ -function flagexist = FL_ExistCFunction(CFunName,USER2CAvailableCDat,SCI2CAvailableCDat,ConvertedDat,ToBeConvertedDat,ReportFileName) -// function flagexist = FL_ExistCFunction(CFunName,USER2CAvailableCDat,SCI2CAvailableCDat,ConvertedDat,ToBeConvertedDat,ReportFileName) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 30-Oct-2007 -- Raffaele Nutricato: Author. -// 30-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),6,6); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -flagexist = %F; -// --------------------------- -// --- End Initialization. --- -// --------------------------- - - -AvailableDat = USER2CAvailableCDat; -load(AvailableDat,'Available'); -NAvail = size(Available,1); - -tmpcnt = 1; -while ((tmpcnt <=NAvail) & (flagexist == %F)) - if mtlb_strcmp(Available(tmpcnt),CFunName) - flagexist = %T; - // #RNU_RES_B - PrintStringInfo(' Found C Function Name in : '+AvailableDat,ReportFileName,'file','y'); - // #RNU_RES_E - end - tmpcnt = tmpcnt + 1; -end -clear Available - -if (flagexist == %F) - AvailableDat = SCI2CAvailableCDat; - load(AvailableDat,'Available'); - NAvail = size(Available,1); - - tmpcnt = 1; - while ((tmpcnt <=NAvail) & (flagexist == %F)) - if mtlb_strcmp(Available(tmpcnt),CFunName) - flagexist = %T; - // #RNU_RES_B - PrintStringInfo(' Found C Function Name in : '+AvailableDat,ReportFileName,'file','y'); - // #RNU_RES_E - end - tmpcnt = tmpcnt + 1; - end - clear Available -end - -if (flagexist == %F) - load(ConvertedDat,'Converted'); - NConv = size(Converted,1); - tmpcnt = 1; - while ((tmpcnt <=NConv) & (flagexist == %F)) - if mtlb_strcmp(Converted(tmpcnt),CFunName) - flagexist = %T; - // #RNU_RES_B - PrintStringInfo(' Found C Function Name in : '+ConvertedDat,ReportFileName,'file','y'); - // #RNU_RES_E - end - tmpcnt = tmpcnt + 1; - end - clear Converted -end - -if (flagexist == %F) - load(ToBeConvertedDat,'ToBeConverted'); - NToBeConv = size(ToBeConverted,1); - tmpcnt = 1; - while ((tmpcnt <=NToBeConv) & (flagexist == %F)) - if mtlb_strcmp(ToBeConverted(tmpcnt).CFunctionName,CFunName) - flagexist = %T; - // #RNU_RES_B - PrintStringInfo(' Found C Function Name in : '+ToBeConvertedDat,ReportFileName,'file','y'); - // #RNU_RES_E - end - tmpcnt = tmpcnt + 1; - end - clear ToBeConverted -end - -if (flagexist == %F) - // #RNU_RES_B - AvailableDat = SCI2CAvailableCDat; - - PrintStringInfo(' C Function Name not found in the ""Available"" , ""Converted"" and ""ToBeConverted"" function lists.',ReportFileName,'file','y'); - load(AvailableDat,'Available'); - PrintStringInfo('Available: ' + strcat(Available(grep(Available, ASTFunName)), ' '),ReportFileName,'file','y'); - clear Available - load(ConvertedDat,'Converted'); - PrintStringInfo('Converted: ' + strcat(Converted(grep(Converted, ASTFunName)), ' '),ReportFileName,'file','y'); - clear Converted - load(ToBeConvertedDat,'ToBeConverted'); - PrintStringInfo('ToBeConverted: ' + ToBeConverted.SCIFunctionName + ' ' + ToBeConverted.CFunctionName,ReportFileName,'file','y'); - clear ToBeConverted - // #RNU_RES_E -end - -endfunction +function flagexist = FL_ExistCFunction(CFunName,USER2CAvailableCDat,SCI2CAvailableCDat,ConvertedDat,ToBeConvertedDat,ReportFileName) +// function flagexist = FL_ExistCFunction(CFunName,USER2CAvailableCDat,SCI2CAvailableCDat,ConvertedDat,ToBeConvertedDat,ReportFileName) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 30-Oct-2007 -- Raffaele Nutricato: Author. +// 30-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),6,6); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +flagexist = %F; +// --------------------------- +// --- End Initialization. --- +// --------------------------- + + +AvailableDat = USER2CAvailableCDat; +load(AvailableDat,'Available'); +NAvail = size(Available,1); + +tmpcnt = 1; +while ((tmpcnt <=NAvail) & (flagexist == %F)) + if mtlb_strcmp(Available(tmpcnt),CFunName) + flagexist = %T; + // #RNU_RES_B + PrintStringInfo(' Found C Function Name in : '+AvailableDat,ReportFileName,'file','y'); + // #RNU_RES_E + end + tmpcnt = tmpcnt + 1; +end +clear Available + +if (flagexist == %F) + AvailableDat = SCI2CAvailableCDat; + load(AvailableDat,'Available'); + NAvail = size(Available,1); + + tmpcnt = 1; + while ((tmpcnt <=NAvail) & (flagexist == %F)) + if mtlb_strcmp(Available(tmpcnt),CFunName) + flagexist = %T; + // #RNU_RES_B + PrintStringInfo(' Found C Function Name in : '+AvailableDat,ReportFileName,'file','y'); + // #RNU_RES_E + end + tmpcnt = tmpcnt + 1; + end + clear Available +end + +if (flagexist == %F) + load(ConvertedDat,'Converted'); + NConv = size(Converted,1); + tmpcnt = 1; + while ((tmpcnt <=NConv) & (flagexist == %F)) + if mtlb_strcmp(Converted(tmpcnt),CFunName) + flagexist = %T; + // #RNU_RES_B + PrintStringInfo(' Found C Function Name in : '+ConvertedDat,ReportFileName,'file','y'); + // #RNU_RES_E + end + tmpcnt = tmpcnt + 1; + end + clear Converted +end + +if (flagexist == %F) + load(ToBeConvertedDat,'ToBeConverted'); + NToBeConv = size(ToBeConverted,1); + tmpcnt = 1; + while ((tmpcnt <=NToBeConv) & (flagexist == %F)) + if mtlb_strcmp(ToBeConverted(tmpcnt).CFunctionName,CFunName) + flagexist = %T; + // #RNU_RES_B + PrintStringInfo(' Found C Function Name in : '+ToBeConvertedDat,ReportFileName,'file','y'); + // #RNU_RES_E + end + tmpcnt = tmpcnt + 1; + end + clear ToBeConverted +end + +if (flagexist == %F) + // #RNU_RES_B + AvailableDat = SCI2CAvailableCDat; + + PrintStringInfo(' C Function Name not found in the ""Available"" , ""Converted"" and ""ToBeConverted"" function lists.',ReportFileName,'file','y'); + load(AvailableDat,'Available'); + PrintStringInfo('Available: ' + strcat(Available(grep(Available, ASTFunName)), ' '),ReportFileName,'file','y'); + clear Available + load(ConvertedDat,'Converted'); + PrintStringInfo('Converted: ' + strcat(Converted(grep(Converted, ASTFunName)), ' '),ReportFileName,'file','y'); + clear Converted + load(ToBeConvertedDat,'ToBeConverted'); + PrintStringInfo('ToBeConverted: ' + ToBeConverted.SCIFunctionName + ' ' + ToBeConverted.CFunctionName,ReportFileName,'file','y'); + clear ToBeConverted + // #RNU_RES_E +end + +endfunction diff --git a/macros/FunctionList/FL_ExtractFuncList.sci b/macros/FunctionList/FL_ExtractFuncList.sci index cbc14655..a5a0182f 100644 --- a/macros/FunctionList/FL_ExtractFuncList.sci +++ b/macros/FunctionList/FL_ExtractFuncList.sci @@ -1,62 +1,62 @@ -function [CFuncList,NElements] = FL_ExtractFuncList(FunctionDir,ClassDir,SCI2CClassSpecifier,ExtFLCls,ReportFileName) -// function [CFuncList,NElements] = FL_ExtractFuncList(FunctionDir,ClassDir,SCI2CClassSpecifier,ExtFLCls,ReportFileName) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Extracts the list of the C functions available. To do that -// this function enters in the directories where the .clst and -// .lst files are stored. -// #RNU_RES_E -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 05-Jan-2008 -- Nutricato Raffaele: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),5,5); - -// #RNU_RES_B -// --------------------------------------------------------- -// --- Extract the list of files in Functions directory. --- -// --------------------------------------------------------- -// #RNU_RES_E -tmppwd = pwd(); -cd(FunctionDir); -// funfiles = ls(); -funfiles = listfiles(); -cd(tmppwd); -NFunFiles = size(funfiles,1); - -// #RNU_RES_B -// ----------------------------------------------------------- -// --- Extract the C function list from Classes directory. --- -// ----------------------------------------------------------- -// #RNU_RES_E -CFuncList = ''; -NElements = 0; - -for cntfun = 1:NFunFiles - FunFileName = fullfile(FunctionDir,funfiles(cntfun)); - ClassName = FL_GetFunctionClass(FunFileName,SCI2CClassSpecifier,ReportFileName); - ClassFileName = fullfile(ClassDir,ClassName); - [tmpfunlist,tmpnelem] = File2StringArray(ClassFileName+ExtFLCls); - [tmppath,tmpfunname,tmpext] = fileparts(FunFileName); - tmpfunlist = FL_InOutArgs2CFunNames(tmpfunname,tmpfunlist,tmpnelem); - for cnttmpfun = 1:tmpnelem - NElements = NElements + 1; - CFuncList(NElements) = tmpfunlist(cnttmpfun); - end -end - -endfunction +function [CFuncList,NElements] = FL_ExtractFuncList(FunctionDir,ClassDir,SCI2CClassSpecifier,ExtFLCls,ReportFileName) +// function [CFuncList,NElements] = FL_ExtractFuncList(FunctionDir,ClassDir,SCI2CClassSpecifier,ExtFLCls,ReportFileName) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Extracts the list of the C functions available. To do that +// this function enters in the directories where the .clst and +// .lst files are stored. +// #RNU_RES_E +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 05-Jan-2008 -- Nutricato Raffaele: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),5,5); + +// #RNU_RES_B +// --------------------------------------------------------- +// --- Extract the list of files in Functions directory. --- +// --------------------------------------------------------- +// #RNU_RES_E +tmppwd = pwd(); +cd(FunctionDir); +// funfiles = ls(); +funfiles = listfiles(); +cd(tmppwd); +NFunFiles = size(funfiles,1); + +// #RNU_RES_B +// ----------------------------------------------------------- +// --- Extract the C function list from Classes directory. --- +// ----------------------------------------------------------- +// #RNU_RES_E +CFuncList = ''; +NElements = 0; + +for cntfun = 1:NFunFiles + FunFileName = fullfile(FunctionDir,funfiles(cntfun)); + ClassName = FL_GetFunctionClass(FunFileName,SCI2CClassSpecifier,ReportFileName); + ClassFileName = fullfile(ClassDir,ClassName); + [tmpfunlist,tmpnelem] = File2StringArray(ClassFileName+ExtFLCls); + [tmppath,tmpfunname,tmpext] = fileparts(FunFileName); + tmpfunlist = FL_InOutArgs2CFunNames(tmpfunname,tmpfunlist,tmpnelem); + for cnttmpfun = 1:tmpnelem + NElements = NElements + 1; + CFuncList(NElements) = tmpfunlist(cnttmpfun); + end +end + +endfunction diff --git a/macros/FunctionList/FL_GetFunctionClass.sci b/macros/FunctionList/FL_GetFunctionClass.sci index 09fad929..a872e423 100644 --- a/macros/FunctionList/FL_GetFunctionClass.sci +++ b/macros/FunctionList/FL_GetFunctionClass.sci @@ -1,54 +1,54 @@ -function SCI2CClassName = FL_GetFunctionClass(FunFileName,SCI2CClassSpecifier,ReportFileName) -// function SCI2CClassName = FL_GetFunctionClass(FunFileName,SCI2CClassSpecifier,ReportFileName) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 11-Jul-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),3,3); - -// --------------------------------------- -// --- Read the class of the function. --- -// --------------------------------------- -// --- Open the .sci file (read only). --- -inannfid = SCI2COpenFileRead(FunFileName); - -FoundClass = 0; -if (meof(inannfid) == 0) - check_string = stripblanks(mgetl(inannfid,1)); - if (~isempty(check_string)) - if (SCI2Cstrncmps1size(SCI2CClassSpecifier,check_string)) - SCI2CClassName = part(check_string,length(SCI2CClassSpecifier)+1:length(check_string)); - // #RNU_RES_B - PrintStringInfo(' Function belongs to class: '+SCI2CClassName+'.',ReportFileName,'file','y'); - // #RNU_RES_E - FoundClass = 1; - else - error(9999, 'Could not find ""'+SCI2CClassSpecifier+'"" in '+FunFileName+'.'); - end - end -end -mclose(inannfid); -if (FoundClass == 0) - error(9999, 'Could not find ""'+SCI2CClassSpecifier+'"" specifier.'); -end - -// ------------------------------------------- -// --- End read the class of the function. --- -// ------------------------------------------- -endfunction - \ No newline at end of file +function SCI2CClassName = FL_GetFunctionClass(FunFileName,SCI2CClassSpecifier,ReportFileName) +// function SCI2CClassName = FL_GetFunctionClass(FunFileName,SCI2CClassSpecifier,ReportFileName) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 11-Jul-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),3,3); + +// --------------------------------------- +// --- Read the class of the function. --- +// --------------------------------------- +// --- Open the .sci file (read only). --- +inannfid = SCI2COpenFileRead(FunFileName); + +FoundClass = 0; +if (meof(inannfid) == 0) + check_string = stripblanks(mgetl(inannfid,1)); + if (~isempty(check_string)) + if (SCI2Cstrncmps1size(SCI2CClassSpecifier,check_string)) + SCI2CClassName = part(check_string,length(SCI2CClassSpecifier)+1:length(check_string)); + // #RNU_RES_B + PrintStringInfo(' Function belongs to class: '+SCI2CClassName+'.',ReportFileName,'file','y'); + // #RNU_RES_E + FoundClass = 1; + else + error(9999, 'Could not find ""'+SCI2CClassSpecifier+'"" in '+FunFileName+'.'); + end + end +end +mclose(inannfid); +if (FoundClass == 0) + error(9999, 'Could not find ""'+SCI2CClassSpecifier+'"" specifier.'); +end + +// ------------------------------------------- +// --- End read the class of the function. --- +// ------------------------------------------- +endfunction + diff --git a/macros/FunctionList/FL_InOutArgs2CFunNames.sci b/macros/FunctionList/FL_InOutArgs2CFunNames.sci index e559f385..0dfee1d3 100644 --- a/macros/FunctionList/FL_InOutArgs2CFunNames.sci +++ b/macros/FunctionList/FL_InOutArgs2CFunNames.sci @@ -1,51 +1,51 @@ -function FunNameCFuncList = FL_InOutArgs2CFunNames(FunctionName,CommaSepCFuncList,CFuncListNElem) -// function FunNameCFuncList = FL_InOutArgs2CFunNames(FunctionName,CommaSepCFuncList,CFuncListNElem) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Reads a Comma Separated Function List and converts it into the -// corresponding list of C function. In the Comma Separated -// Function List only input and output arguments are specified -// and they are separated by a comma. -// #RNU_RES_E -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 05-Jan-2008 -- Nutricato Raffaele: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),3,3); - - -FunNameCFuncList = ''; -SepChar = ','; -for cntelem = 1:CFuncListNElem - tmptokens = tokens(CommaSepCFuncList(cntelem),SepChar); - if (size(tmptokens,1) == 0) - FunNameCFuncList(cntelem) = FunctionName; - elseif (size(tmptokens,1) == 1) - if part(tmptokens,1:1) == ',' - FunNameCFuncList(cntelem) = FunctionName+tmptokens(2); - else - FunNameCFuncList(cntelem) = tmptokens(1)+FunctionName; - end - elseif (size(tmptokens,1) == 2) - FunNameCFuncList(cntelem) = tmptokens(1)+FunctionName+tmptokens(2); - else - disp('Incorrect format for the function list class.'); - error(9999, 'Check the following function list class item: ""'+CommaSepCFuncList(cntelem)+'"".'); - end -end - -endfunction +function FunNameCFuncList = FL_InOutArgs2CFunNames(FunctionName,CommaSepCFuncList,CFuncListNElem) +// function FunNameCFuncList = FL_InOutArgs2CFunNames(FunctionName,CommaSepCFuncList,CFuncListNElem) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Reads a Comma Separated Function List and converts it into the +// corresponding list of C function. In the Comma Separated +// Function List only input and output arguments are specified +// and they are separated by a comma. +// #RNU_RES_E +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 05-Jan-2008 -- Nutricato Raffaele: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),3,3); + + +FunNameCFuncList = ''; +SepChar = ','; +for cntelem = 1:CFuncListNElem + tmptokens = tokens(CommaSepCFuncList(cntelem),SepChar); + if (size(tmptokens,1) == 0) + FunNameCFuncList(cntelem) = FunctionName; + elseif (size(tmptokens,1) == 1) + if part(tmptokens,1:1) == ',' + FunNameCFuncList(cntelem) = FunctionName+tmptokens(2); + else + FunNameCFuncList(cntelem) = tmptokens(1)+FunctionName; + end + elseif (size(tmptokens,1) == 2) + FunNameCFuncList(cntelem) = tmptokens(1)+FunctionName+tmptokens(2); + else + disp('Incorrect format for the function list class.'); + error(9999, 'Check the following function list class item: ""'+CommaSepCFuncList(cntelem)+'"".'); + end +end + +endfunction diff --git a/macros/FunctionList/FL_UpdateConverted.sci b/macros/FunctionList/FL_UpdateConverted.sci index 5f4637e8..e1403e80 100644 --- a/macros/FunctionList/FL_UpdateConverted.sci +++ b/macros/FunctionList/FL_UpdateConverted.sci @@ -1,46 +1,46 @@ -function Converted = FL_UpdateConverted(NFilesToTranslate,ConvertedDatFile) -// function Converted = FL_UpdateConverted(NFilesToTranslate,ConvertedDatFile) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 27-Oct-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -// --- Load Converted .dat file. --- -load(ConvertedDatFile,'Converted'); -// --------------------------- -// --- End Initialization. --- -// --------------------------- - - -if (NFilesToTranslate >= 1) - // --------------------------------------- - // --- Update Converted Function List. --- - // --------------------------------------- - // --- Insert the current function into the converted function list. --- - NConvP1 = size(Converted,1)+1; - Converted(NConvP1) = SharedInfo.NextCFunName; - // ------------------------------------------- - // --- End Update Converted Function List. --- - // ------------------------------------------- -end - -endfunction +function Converted = FL_UpdateConverted(NFilesToTranslate,ConvertedDatFile) +// function Converted = FL_UpdateConverted(NFilesToTranslate,ConvertedDatFile) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 27-Oct-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +// --- Load Converted .dat file. --- +load(ConvertedDatFile,'Converted'); +// --------------------------- +// --- End Initialization. --- +// --------------------------- + + +if (NFilesToTranslate >= 1) + // --------------------------------------- + // --- Update Converted Function List. --- + // --------------------------------------- + // --- Insert the current function into the converted function list. --- + NConvP1 = size(Converted,1)+1; + Converted(NConvP1) = SharedInfo.NextCFunName; + // ------------------------------------------- + // --- End Update Converted Function List. --- + // ------------------------------------------- +end + +endfunction diff --git a/macros/FunctionList/FL_UpdateToBeConv.sci b/macros/FunctionList/FL_UpdateToBeConv.sci index 1ee2e15d..169f1a36 100644 --- a/macros/FunctionList/FL_UpdateToBeConv.sci +++ b/macros/FunctionList/FL_UpdateToBeConv.sci @@ -1,114 +1,114 @@ -function SharedInfo = FL_UpdateToBeConv(ASTFunName,CFunName,FunPrecSpecifier,FunTypeAnnot,FunSizeAnnot,InArg,NInArg,OutArg,NOutArg,FileInfo,SharedInfo) -// function SharedInfo = FL_UpdateToBeConv(ASTFunName,CFunName,FunPrecSpecifier,FunTypeAnnot,FunSizeAnnot,InArg,NInArg,OutArg,NOutArg,FileInfo,SharedInfo) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 27-Oct-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),11,11); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -nxtscifunname = SharedInfo.NextSCIFunName; -nxtscifunnumber = SharedInfo.NextSCIFunNumber; - -ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; -SCI2CAvailableCDat = FileInfo.FunctionList.SCI2CAvailableCDat; -USER2CAvailableCDat = FileInfo.FunctionList.USER2CAvailableCDat; -ConvertedDat = FileInfo.FunctionList.ConvertedDat; -ToBeConvertedDat = FileInfo.FunctionList.ToBeConvertedDat; -FunInfoDatDir = FileInfo.FunctionList.FunInfoDatDir; - -// #RNU_RES_B -PrintStringInfo(' ',ReportFileName,'file','y'); -PrintStringInfo('***Updating C Function List***',ReportFileName,'file','y'); -PrintStringInfo(' C Function Name: '+CFunName,ReportFileName,'file','y'); -// #RNU_RES_E -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -// #RNU_RES_B -// -------------------------------------------------- -// --- Manage anticipated exit from the function. --- -// -------------------------------------------------- -//NUT: questo codice e' identico quasi a quello della CFunCall, si pu0 pensare di -//NUT: di fare un'unica funzione. -// #RNU_RES_E - -if (SharedInfo.SkipNextFun > 0) - // #RNU_RES_B - PrintStringInfo(' Current function will not be inserted in the Function List.',ReportFileName,'file','y'); - // #RNU_RES_E - return; -end - -// #RNU_RES_B -// Exit if the function is a precision specifier and the corresponding flag is 1. -// #RNU_RES_E -if ((sum(mtlb_strcmp(ASTFunName,SharedInfo.Annotations.DataPrec)) > 0) & ... - (SharedInfo.SkipNextPrec == 1)) - // #RNU_RES_B - PrintStringInfo(' Current function will not be inserted in the Function List.',ReportFileName,'file','y'); - // #RNU_RES_E - return; -end - -// #RNU_RES_B -// Exit if the function is OpEqual and the corresponding skip flag is enabled. -// #RNU_RES_E -if ((mtlb_strcmp(ASTFunName,'OpEqual')) & ... - (SharedInfo.SkipNextEqual == 1)) - // #RNU_RES_B - PrintStringInfo(' Current function will not be inserted in the Function List.',ReportFileName,'file','y'); - // #RNU_RES_E - return; -end - -// #RNU_RES_B -// --------------------------------------- -// --- If the function is not skipped. --- -// --------------------------------------- -// --- Check existence of the C function. --- -// #RNU_RES_E -flagexist = FL_ExistCFunction(CFunName,USER2CAvailableCDat,SCI2CAvailableCDat,ConvertedDat,ToBeConvertedDat,ReportFileName); - -// #RNU_RES_B -// --- Update C function list and dat files. --- -// #RNU_RES_E -if (flagexist == %F) - - // #RNU_RES_B - // --- Add C function to the "ToBeConverted" function list. --- - // #RNU_RES_E - load(ToBeConvertedDat,'ToBeConverted'); - - NToConvP1 = size(ToBeConverted,1)+1; - ToBeConverted(NToConvP1).SCIFunctionName = ASTFunName; - ToBeConverted(NToConvP1).CFunctionName = CFunName; - - save(ToBeConvertedDat, "ToBeConverted"); - SharedInfo.NFilesToTranslate = SharedInfo.NFilesToTranslate + 1; - - // #RNU_RES_B - // --- Generate C Function dat file. --- - PrintStringInfo(' Add C Function ""'+CFunName+'"" to: '+ToBeConvertedDat,ReportFileName,'file','y'); - // #RNU_RES_E -end - -endfunction +function SharedInfo = FL_UpdateToBeConv(ASTFunName,CFunName,FunPrecSpecifier,FunTypeAnnot,FunSizeAnnot,InArg,NInArg,OutArg,NOutArg,FileInfo,SharedInfo) +// function SharedInfo = FL_UpdateToBeConv(ASTFunName,CFunName,FunPrecSpecifier,FunTypeAnnot,FunSizeAnnot,InArg,NInArg,OutArg,NOutArg,FileInfo,SharedInfo) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 27-Oct-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),11,11); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +nxtscifunname = SharedInfo.NextSCIFunName; +nxtscifunnumber = SharedInfo.NextSCIFunNumber; + +ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; +SCI2CAvailableCDat = FileInfo.FunctionList.SCI2CAvailableCDat; +USER2CAvailableCDat = FileInfo.FunctionList.USER2CAvailableCDat; +ConvertedDat = FileInfo.FunctionList.ConvertedDat; +ToBeConvertedDat = FileInfo.FunctionList.ToBeConvertedDat; +FunInfoDatDir = FileInfo.FunctionList.FunInfoDatDir; + +// #RNU_RES_B +PrintStringInfo(' ',ReportFileName,'file','y'); +PrintStringInfo('***Updating C Function List***',ReportFileName,'file','y'); +PrintStringInfo(' C Function Name: '+CFunName,ReportFileName,'file','y'); +// #RNU_RES_E +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +// #RNU_RES_B +// -------------------------------------------------- +// --- Manage anticipated exit from the function. --- +// -------------------------------------------------- +//NUT: questo codice e' identico quasi a quello della CFunCall, si pu0 pensare di +//NUT: di fare un'unica funzione. +// #RNU_RES_E + +if (SharedInfo.SkipNextFun > 0) + // #RNU_RES_B + PrintStringInfo(' Current function will not be inserted in the Function List.',ReportFileName,'file','y'); + // #RNU_RES_E + return; +end + +// #RNU_RES_B +// Exit if the function is a precision specifier and the corresponding flag is 1. +// #RNU_RES_E +if ((sum(mtlb_strcmp(ASTFunName,SharedInfo.Annotations.DataPrec)) > 0) & ... + (SharedInfo.SkipNextPrec == 1)) + // #RNU_RES_B + PrintStringInfo(' Current function will not be inserted in the Function List.',ReportFileName,'file','y'); + // #RNU_RES_E + return; +end + +// #RNU_RES_B +// Exit if the function is OpEqual and the corresponding skip flag is enabled. +// #RNU_RES_E +if ((mtlb_strcmp(ASTFunName,'OpEqual')) & ... + (SharedInfo.SkipNextEqual == 1)) + // #RNU_RES_B + PrintStringInfo(' Current function will not be inserted in the Function List.',ReportFileName,'file','y'); + // #RNU_RES_E + return; +end + +// #RNU_RES_B +// --------------------------------------- +// --- If the function is not skipped. --- +// --------------------------------------- +// --- Check existence of the C function. --- +// #RNU_RES_E +flagexist = FL_ExistCFunction(CFunName,USER2CAvailableCDat,SCI2CAvailableCDat,ConvertedDat,ToBeConvertedDat,ReportFileName); + +// #RNU_RES_B +// --- Update C function list and dat files. --- +// #RNU_RES_E +if (flagexist == %F) + + // #RNU_RES_B + // --- Add C function to the "ToBeConverted" function list. --- + // #RNU_RES_E + load(ToBeConvertedDat,'ToBeConverted'); + + NToConvP1 = size(ToBeConverted,1)+1; + ToBeConverted(NToConvP1).SCIFunctionName = ASTFunName; + ToBeConverted(NToConvP1).CFunctionName = CFunName; + + save(ToBeConvertedDat, "ToBeConverted"); + SharedInfo.NFilesToTranslate = SharedInfo.NFilesToTranslate + 1; + + // #RNU_RES_B + // --- Generate C Function dat file. --- + PrintStringInfo(' Add C Function ""'+CFunName+'"" to: '+ToBeConvertedDat,ReportFileName,'file','y'); + // #RNU_RES_E +end + +endfunction diff --git a/macros/GeneralFunctions/Array2String.sci b/macros/GeneralFunctions/Array2String.sci index 27e9aa15..0be04c36 100644 --- a/macros/GeneralFunctions/Array2String.sci +++ b/macros/GeneralFunctions/Array2String.sci @@ -1,40 +1,40 @@ -function [StringArray] = Array2String(InArray); -// function [StringArray] = Array2String(InArray); -// ----------------------------------------------------------------- -// #RNU_RES_B -// Converts an input array into a string. Maximum 2D array are allowed. -// Ex.: InArray = [10, 4]; -// StringArray = "[10, 4]"; -// #RNU_RES_E -// -// Input data: -// InArray: Input array. -// -// Output data: -// StringArray: array converted into a string. -// -// Status: -// 13-May-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- +function [StringArray] = Array2String(InArray); +// function [StringArray] = Array2String(InArray); +// ----------------------------------------------------------------- +// #RNU_RES_B +// Converts an input array into a string. Maximum 2D array are allowed. +// Ex.: InArray = [10, 4]; +// StringArray = "[10, 4]"; +// #RNU_RES_E +// +// Input data: +// InArray: Input array. +// +// Output data: +// StringArray: array converted into a string. +// +// Status: +// 13-May-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -[Nrows,Ncols] = size(InArray); - -StringArray = '['; -for counterrows = 1:Nrows - for countercols = 1:Ncols - StringArray = StringArray + string(InArray(counterrows,countercols)) + ','; - end - StringArray = part(StringArray,1:(length(StringArray)-1)); // Remove the last ',' - StringArray = StringArray+';'; -end -StringArray = part(StringArray,1:(length(StringArray)-1)); // Remove the last ';' -StringArray = StringArray+']'; -endfunction +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +[Nrows,Ncols] = size(InArray); + +StringArray = '['; +for counterrows = 1:Nrows + for countercols = 1:Ncols + StringArray = StringArray + string(InArray(counterrows,countercols)) + ','; + end + StringArray = part(StringArray,1:(length(StringArray)-1)); // Remove the last ',' + StringArray = StringArray+';'; +end +StringArray = part(StringArray,1:(length(StringArray)-1)); // Remove the last ';' +StringArray = StringArray+']'; +endfunction diff --git a/macros/GeneralFunctions/ConvertPathMat2C.sci b/macros/GeneralFunctions/ConvertPathMat2C.sci index d73d22c7..7ee5671d 100644 --- a/macros/GeneralFunctions/ConvertPathMat2C.sci +++ b/macros/GeneralFunctions/ConvertPathMat2C.sci @@ -1,61 +1,61 @@ -function OutPath = ConvertPathMat2C(InPath,CPathStyle) -// function OutPath = ConvertPathMat2C(InPath,CPathStyle) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Converts the input path InPath into a path by using the path -// style specified by CPathStyle. -// #RNU_RES_E -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 26-Jan-2008 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); -if (CPathStyle == 'windows') - OutPath=strsubst(InPath,'/','\'); -elseif (CPathStyle == 'unix') - OutPath=strsubst(InPath,'\','/'); -elseif (CPathStyle == 'cygwin') - OutPath=strsubst(InPath,'\','/'); - OutPath=strsubst(OutPath,'A:','/cygdrive/a'); - OutPath=strsubst(OutPath,'B:','/cygdrive/b'); - OutPath=strsubst(OutPath,'C:','/cygdrive/c'); - OutPath=strsubst(OutPath,'D:','/cygdrive/d'); - OutPath=strsubst(OutPath,'E:','/cygdrive/e'); - OutPath=strsubst(OutPath,'F:','/cygdrive/f'); - OutPath=strsubst(OutPath,'G:','/cygdrive/g'); - OutPath=strsubst(OutPath,'H:','/cygdrive/h'); - OutPath=strsubst(OutPath,'I:','/cygdrive/i'); - OutPath=strsubst(OutPath,'J:','/cygdrive/j'); - OutPath=strsubst(OutPath,'K:','/cygdrive/k'); - OutPath=strsubst(OutPath,'L:','/cygdrive/l'); - OutPath=strsubst(OutPath,'M:','/cygdrive/m'); - OutPath=strsubst(OutPath,'N:','/cygdrive/n'); - OutPath=strsubst(OutPath,'O:','/cygdrive/o'); - OutPath=strsubst(OutPath,'P:','/cygdrive/p'); - OutPath=strsubst(OutPath,'Q:','/cygdrive/q'); - OutPath=strsubst(OutPath,'R:','/cygdrive/r'); - OutPath=strsubst(OutPath,'S:','/cygdrive/s'); - OutPath=strsubst(OutPath,'T:','/cygdrive/t'); - OutPath=strsubst(OutPath,'U:','/cygdrive/u'); - OutPath=strsubst(OutPath,'V:','/cygdrive/v'); - OutPath=strsubst(OutPath,'W:','/cygdrive/w'); - OutPath=strsubst(OutPath,'X:','/cygdrive/x'); - OutPath=strsubst(OutPath,'Y:','/cygdrive/y'); - OutPath=strsubst(OutPath,'Z:','/cygdrive/z'); -else - OutPath = InPath; -end -endfunction +function OutPath = ConvertPathMat2C(InPath,CPathStyle) +// function OutPath = ConvertPathMat2C(InPath,CPathStyle) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Converts the input path InPath into a path by using the path +// style specified by CPathStyle. +// #RNU_RES_E +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 26-Jan-2008 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); +if (CPathStyle == 'windows') + OutPath=strsubst(InPath,'/','\'); +elseif (CPathStyle == 'unix') + OutPath=strsubst(InPath,'\','/'); +elseif (CPathStyle == 'cygwin') + OutPath=strsubst(InPath,'\','/'); + OutPath=strsubst(OutPath,'A:','/cygdrive/a'); + OutPath=strsubst(OutPath,'B:','/cygdrive/b'); + OutPath=strsubst(OutPath,'C:','/cygdrive/c'); + OutPath=strsubst(OutPath,'D:','/cygdrive/d'); + OutPath=strsubst(OutPath,'E:','/cygdrive/e'); + OutPath=strsubst(OutPath,'F:','/cygdrive/f'); + OutPath=strsubst(OutPath,'G:','/cygdrive/g'); + OutPath=strsubst(OutPath,'H:','/cygdrive/h'); + OutPath=strsubst(OutPath,'I:','/cygdrive/i'); + OutPath=strsubst(OutPath,'J:','/cygdrive/j'); + OutPath=strsubst(OutPath,'K:','/cygdrive/k'); + OutPath=strsubst(OutPath,'L:','/cygdrive/l'); + OutPath=strsubst(OutPath,'M:','/cygdrive/m'); + OutPath=strsubst(OutPath,'N:','/cygdrive/n'); + OutPath=strsubst(OutPath,'O:','/cygdrive/o'); + OutPath=strsubst(OutPath,'P:','/cygdrive/p'); + OutPath=strsubst(OutPath,'Q:','/cygdrive/q'); + OutPath=strsubst(OutPath,'R:','/cygdrive/r'); + OutPath=strsubst(OutPath,'S:','/cygdrive/s'); + OutPath=strsubst(OutPath,'T:','/cygdrive/t'); + OutPath=strsubst(OutPath,'U:','/cygdrive/u'); + OutPath=strsubst(OutPath,'V:','/cygdrive/v'); + OutPath=strsubst(OutPath,'W:','/cygdrive/w'); + OutPath=strsubst(OutPath,'X:','/cygdrive/x'); + OutPath=strsubst(OutPath,'Y:','/cygdrive/y'); + OutPath=strsubst(OutPath,'Z:','/cygdrive/z'); +else + OutPath = InPath; +end +endfunction diff --git a/macros/GeneralFunctions/File2StringArray.sci b/macros/GeneralFunctions/File2StringArray.sci index 626cb6ce..a9659ac4 100644 --- a/macros/GeneralFunctions/File2StringArray.sci +++ b/macros/GeneralFunctions/File2StringArray.sci @@ -1,54 +1,54 @@ -function [String_Array,N_Strings] = File2StringArray(InFileName) -// function [String_Array,N_Strings] = File2StringArray(InFileName) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Reads a text file and stores every line into a string array. -// #RNU_RES_E -// -// Input data: -// InFileName: path+filename of the input file. -// -// Output data: -// String_Array: array of strings containing the lines of the input -// text file. -// N_Strings: number of strings stored in String_Array. -// -// Status: -// 10-Nov-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- +function [String_Array,N_Strings] = File2StringArray(InFileName) +// function [String_Array,N_Strings] = File2StringArray(InFileName) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Reads a text file and stores every line into a string array. +// #RNU_RES_E +// +// Input data: +// InFileName: path+filename of the input file. +// +// Output data: +// String_Array: array of strings containing the lines of the input +// text file. +// N_Strings: number of strings stored in String_Array. +// +// Status: +// 10-Nov-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - - -// ----------------------- -// --- Initialization. --- -// ----------------------- -N_Strings = 0; -String_Array = ''; -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -// -------------------- -// --- Open C file. --- -// -------------------- -fidfile = SCI2COpenFileRead(InFileName); - -// ------------------- -// --- Read lines. --- -// ------------------- -tmpline = mgetl(fidfile,1); -while (meof(fidfile) == 0) - N_Strings = N_Strings + 1; - String_Array(N_Strings) = tmpline; - tmpline = mgetl(fidfile,1); -end - -mclose(fidfile); -endfunction +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + + +// ----------------------- +// --- Initialization. --- +// ----------------------- +N_Strings = 0; +String_Array = ''; +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +// -------------------- +// --- Open C file. --- +// -------------------- +fidfile = SCI2COpenFileRead(InFileName); + +// ------------------- +// --- Read lines. --- +// ------------------- +tmpline = mgetl(fidfile,1); +while (meof(fidfile) == 0) + N_Strings = N_Strings + 1; + String_Array(N_Strings) = tmpline; + tmpline = mgetl(fidfile,1); +end + +mclose(fidfile); +endfunction diff --git a/macros/GeneralFunctions/FunName2SciFileName.sci b/macros/GeneralFunctions/FunName2SciFileName.sci index 39ff5b21..97c75545 100644 --- a/macros/GeneralFunctions/FunName2SciFileName.sci +++ b/macros/GeneralFunctions/FunName2SciFileName.sci @@ -1,56 +1,56 @@ -function ScilabFileName = FunName2SciFileName(DirList,InFunName); -// function ScilabFileName = FunName2SciFileName(DirList,InFunName); -// ----------------------------------------------------------------- -// #RNU_RES_B -// This function generates the full path of the scilab file -// related to the function name (InFunName) specified. -// In more detail the file "eval(InFunName).sci" file is searched -// in the directories specified in DirList. -// #RNU_RES_E -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 16-Apr-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -if (prod(size(DirList)) == 0) - error(9999, 'Incorrect DirList parameter.'); -end - -if (prod(size(InFunName)) == 0) - error(9999, 'Incorrect InFunName parameter.'); -end - -// --- Generate the PathList. --- -for tmpcounter = 1:max(size(DirList)) - PathList(tmpcounter) = fullfile(DirList(tmpcounter),(InFunName+'.sci')); -end - -// --- Search the .sci file. --- -ScilabFileName = listfiles(PathList); - -// --- Check on the number of .sci files found. --- -if ((prod(size(ScilabFileName))) > 1) - disp(ScilabFileName); - error(9999, 'Found more than one scilab file.'); -end - -if ((prod(size(ScilabFileName))) < 1) - disp(ScilabFileName); - error(9999, 'Scilab file ""'+InFunName+'.sci"", not found'); -end - -endfunction +function ScilabFileName = FunName2SciFileName(DirList,InFunName); +// function ScilabFileName = FunName2SciFileName(DirList,InFunName); +// ----------------------------------------------------------------- +// #RNU_RES_B +// This function generates the full path of the scilab file +// related to the function name (InFunName) specified. +// In more detail the file "eval(InFunName).sci" file is searched +// in the directories specified in DirList. +// #RNU_RES_E +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 16-Apr-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +if (prod(size(DirList)) == 0) + error(9999, 'Incorrect DirList parameter.'); +end + +if (prod(size(InFunName)) == 0) + error(9999, 'Incorrect InFunName parameter.'); +end + +// --- Generate the PathList. --- +for tmpcounter = 1:max(size(DirList)) + PathList(tmpcounter) = fullfile(DirList(tmpcounter),(InFunName+'.sci')); +end + +// --- Search the .sci file. --- +ScilabFileName = listfiles(PathList); + +// --- Check on the number of .sci files found. --- +if ((prod(size(ScilabFileName))) > 1) + disp(ScilabFileName); + error(9999, 'Found more than one scilab file.'); +end + +if ((prod(size(ScilabFileName))) < 1) + disp(ScilabFileName); + error(9999, 'Scilab file ""'+InFunName+'.sci"", not found'); +end + +endfunction diff --git a/macros/GeneralFunctions/IsNanSize.sci b/macros/GeneralFunctions/IsNanSize.sci index 486f6fcc..9a129829 100644 --- a/macros/GeneralFunctions/IsNanSize.sci +++ b/macros/GeneralFunctions/IsNanSize.sci @@ -1,39 +1,39 @@ -function outbool = IsNanSize(instring) -// function outbool = IsNanSize(instring) -// ----------------------------------------------------------------- -// #RNU_RES_B -// It searches for __SCI2CNANSIZE string in the string which specifies the -// size of the argument. Useful to find if a given size contains -// a nan value. In this case an error is issued. -// IsNanSize = '__SCI2CNANSIZE' -> True -// IsNanSize = 'c*__SCI2CNANSIZE' -> True -// IsNanSize = 'c+b' -> False -// #RNU_RES_E -// -// Input data: -// instring: string to analyze. -// -// Output data: -// outbool: %T if nan string has been found. -// -// Status: -// 11-Feb-2008 -- Nutricato Raffaele: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - - -outbool = %F; -indexval = strindex(instring,'__SCI2CNANSIZE'); - -if(length(indexval)>=1) - outbool = %T; -end - -endfunction +function outbool = IsNanSize(instring) +// function outbool = IsNanSize(instring) +// ----------------------------------------------------------------- +// #RNU_RES_B +// It searches for __SCI2CNANSIZE string in the string which specifies the +// size of the argument. Useful to find if a given size contains +// a nan value. In this case an error is issued. +// IsNanSize = '__SCI2CNANSIZE' -> True +// IsNanSize = 'c*__SCI2CNANSIZE' -> True +// IsNanSize = 'c+b' -> False +// #RNU_RES_E +// +// Input data: +// instring: string to analyze. +// +// Output data: +// outbool: %T if nan string has been found. +// +// Status: +// 11-Feb-2008 -- Nutricato Raffaele: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + + +outbool = %F; +indexval = strindex(instring,'__SCI2CNANSIZE'); + +if(length(indexval)>=1) + outbool = %T; +end + +endfunction diff --git a/macros/GeneralFunctions/KeyStr2FileStrPos.sci b/macros/GeneralFunctions/KeyStr2FileStrPos.sci index e9fb1c48..6e818ec0 100644 --- a/macros/GeneralFunctions/KeyStr2FileStrPos.sci +++ b/macros/GeneralFunctions/KeyStr2FileStrPos.sci @@ -1,83 +1,83 @@ -function [flag_found,requested_line,line_position] = KeyStr2FileStrPos(filename,key_string,method) -// function [flag_found,requested_line,line_position] = KeyStr2FileStrPos(filename,key_string,method) -// -------------------------------------------------------------------------------- -// #RNU_RES_B -// This function returns a line and its position from a specified ASCII file. -// The line and the position returned starts with a key string specified in the -// input parameters. -// -// Input data: -// filename: path + name of the ASCII file. -// key_string: string that specifies the initial portion of the line to return. -// method: 'cut': in the returned line will be removed the key_string -// 'no_cut': (default), in the returned line will not be removed the key_string -// -// Output data: -// flag_found: 0 if the line is not found or an error occured. -// 1 if the search succeed. -// requested_line: is the line in the file which contains as first characters those -// specified in the key_string. -// line_position: position of the line in the file; the first line in the file -// is the line number 1. -// #RNU_RES_E -// -// -// Status: -// 08-Jul-2002 -- Author: Raffaele Nutricato -// 08-Jul-2002 -- Raffaele Nutricato: Revision OK -// 23-Nov-2004 -- Raffaele Nutricato: Changed disp to warning in if (flag_found == 0). -// It allows to disable the message it generates -// by using warning off. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- +function [flag_found,requested_line,line_position] = KeyStr2FileStrPos(filename,key_string,method) +// function [flag_found,requested_line,line_position] = KeyStr2FileStrPos(filename,key_string,method) +// -------------------------------------------------------------------------------- +// #RNU_RES_B +// This function returns a line and its position from a specified ASCII file. +// The line and the position returned starts with a key string specified in the +// input parameters. +// +// Input data: +// filename: path + name of the ASCII file. +// key_string: string that specifies the initial portion of the line to return. +// method: 'cut': in the returned line will be removed the key_string +// 'no_cut': (default), in the returned line will not be removed the key_string +// +// Output data: +// flag_found: 0 if the line is not found or an error occured. +// 1 if the search succeed. +// requested_line: is the line in the file which contains as first characters those +// specified in the key_string. +// line_position: position of the line in the file; the first line in the file +// is the line number 1. +// #RNU_RES_E +// +// +// Status: +// 08-Jul-2002 -- Author: Raffaele Nutricato +// 08-Jul-2002 -- Raffaele Nutricato: Revision OK +// 23-Nov-2004 -- Raffaele Nutricato: Changed disp to warning in if (flag_found == 0). +// It allows to disable the message it generates +// by using warning off. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,3); - - -if (argn(2) == 2) - method = 'no_cut'; -end -method = convstr(method, 'u'); - -// Initialize output parameters -flag_found = 0; -requested_line = ''; -line_position = 0; - -// Open the text file (read only) -[fid,mess] = mopen(filename,'r'); -if ( fid == -1 ) - disp(['Cannot open: '+filename]) - disp(mess); - flag_found = 0; - return; -end - -// loop on the lines of the file -num_chars = length(key_string); -while (meof(fid) == 0) - check_string = fgetl(fid); - line_position = line_position + 1; - if (key_string == check_string) & (key_string == num_chars) then - flag_found = 1; - requested_line = check_string; - if (method =='cut') then - requested_line(1:num_chars) = []; - end - mclose(fid); - return; - end -end - -if (flag_found == 0) - warning('Warning: string ' + key_string + ' not found in file: ' + filename); - mclose(fid); -end - -mclose(fid); -endfunction +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,3); + + +if (argn(2) == 2) + method = 'no_cut'; +end +method = convstr(method, 'u'); + +// Initialize output parameters +flag_found = 0; +requested_line = ''; +line_position = 0; + +// Open the text file (read only) +[fid,mess] = mopen(filename,'r'); +if ( fid == -1 ) + disp(['Cannot open: '+filename]) + disp(mess); + flag_found = 0; + return; +end + +// loop on the lines of the file +num_chars = length(key_string); +while (meof(fid) == 0) + check_string = fgetl(fid); + line_position = line_position + 1; + if (key_string == check_string) & (key_string == num_chars) then + flag_found = 1; + requested_line = check_string; + if (method =='cut') then + requested_line(1:num_chars) = []; + end + mclose(fid); + return; + end +end + +if (flag_found == 0) + warning('Warning: string ' + key_string + ' not found in file: ' + filename); + mclose(fid); +end + +mclose(fid); +endfunction diff --git a/macros/GeneralFunctions/PrintStringInfo.sci b/macros/GeneralFunctions/PrintStringInfo.sci index a554d122..72b4e320 100644 --- a/macros/GeneralFunctions/PrintStringInfo.sci +++ b/macros/GeneralFunctions/PrintStringInfo.sci @@ -1,69 +1,69 @@ -function PrintStringInfo(str, filename, outputtype, ennewline,formattedstring) -// function PrintStringInfo(str,filename,outputtype,ennewline,formattedstring) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Prints a string into a file or on the stdout or on both. -// -// Input data: -// filename: optional parameter, that specifies the output file. -// If filename is '' or it is not provided to the function, -// the string will be printed on the stdout. -// outputtype: 'file' -> prints only on file. -// 'stdout' -> prints only on the stdout. -// 'both' -> prints on both file and stdout. -// Default is 'stdout'. -// ennewline: optional (default = 'y'); If y adds a newline character -// at the end of the input string. -// formattedstring: if 'n' (default) it means that str is considered as a simple string (mputstr). -// if 'y' then str is considered formatted according to mfprint syntax -// -// Output data: -// --- -// #RNU_RES_E -// -// Status: -// 02-Jan-2006 -- Nutricato Raffaele: Author. -// 02-Jan-2006 -- Nutricato Raffaele: TEST OK. -// 02-May-2006 -- Nutricato Raffaele: Added ennewline. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- +function PrintStringInfo(str, filename, outputtype, ennewline,formattedstring) +// function PrintStringInfo(str,filename,outputtype,ennewline,formattedstring) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Prints a string into a file or on the stdout or on both. +// +// Input data: +// filename: optional parameter, that specifies the output file. +// If filename is '' or it is not provided to the function, +// the string will be printed on the stdout. +// outputtype: 'file' -> prints only on file. +// 'stdout' -> prints only on the stdout. +// 'both' -> prints on both file and stdout. +// Default is 'stdout'. +// ennewline: optional (default = 'y'); If y adds a newline character +// at the end of the input string. +// formattedstring: if 'n' (default) it means that str is considered as a simple string (mputstr). +// if 'y' then str is considered formatted according to mfprint syntax +// +// Output data: +// --- +// #RNU_RES_E +// +// Status: +// 02-Jan-2006 -- Nutricato Raffaele: Author. +// 02-Jan-2006 -- Nutricato Raffaele: TEST OK. +// 02-May-2006 -- Nutricato Raffaele: Added ennewline. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),0,5); - -if argn(2) < 5 - formattedstring = 'n'; - if argn(2) < 4 - ennewline = 'y'; - if argn(2) < 3 - outputtype = 'stdout'; - if argn(2) < 2 - filename = ''; - if argn(2) < 1 - str = ''; - end - end - end - end -end -if (length(filename) == 0) then - outputtype = 'stdout'; // Prints only on the stdout. -end - -if (outputtype=='both') | (outputtype=='stdout') - disp(str) -end - -if (outputtype=='both') | (outputtype=='file') - if (ennewline=='y') - filenamefprintf(filename,'y',str,formattedstring); - else - filenamefprintf(filename,'n',str,formattedstring); - end -end - -endfunction +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),0,5); + +if argn(2) < 5 + formattedstring = 'n'; + if argn(2) < 4 + ennewline = 'y'; + if argn(2) < 3 + outputtype = 'stdout'; + if argn(2) < 2 + filename = ''; + if argn(2) < 1 + str = ''; + end + end + end + end +end +if (length(filename) == 0) then + outputtype = 'stdout'; // Prints only on the stdout. +end + +if (outputtype=='both') | (outputtype=='stdout') + disp(str) +end + +if (outputtype=='both') | (outputtype=='file') + if (ennewline=='y') + filenamefprintf(filename,'y',str,formattedstring); + else + filenamefprintf(filename,'n',str,formattedstring); + end +end + +endfunction diff --git a/macros/GeneralFunctions/ReadStringCard.sci b/macros/GeneralFunctions/ReadStringCard.sci index a4525d90..d44a22cf 100644 --- a/macros/GeneralFunctions/ReadStringCard.sci +++ b/macros/GeneralFunctions/ReadStringCard.sci @@ -1,61 +1,61 @@ -function cardvalue = ReadStringCard(filename,cardname,commentdelim,enableerror) -// function cardvalue = ReadStringCard(filename,cardname,commentdelim,enableerror) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Reads the string associated to the card cardname placed -// in filename. -// The value of cardname is assumed to be a string. -// If the card is not found an error will occur. -// -// Input data: -// filename: full path + name of the file where the card -// is being searched. -// cardname: string with the name of the card. -// commentdelim: specifies a character for an eventual comment -// (to be discarded) after the card value. -// enableerror: 'y' enable error message. -// 'n' enable warning message. -// -// Output data: -// cardvalue: string associated to the card. Blanks characters -// are discarded. -// #RNU_RES_E -// -// Status: -// 06-Feb-2004 -- Nutricato Raffaele: Author. -// 06-Feb-2004 -- Nutricato Raffaele: TEST OK. -// 25-Jun-2004 -- Nutricato Raffaele: Added Comment delimiter -// and enableerror as input parameter. -// 13-Apr-2007 -- Intelligente Fabio: Rewritten from Matlab to Scilab. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- +function cardvalue = ReadStringCard(filename,cardname,commentdelim,enableerror) +// function cardvalue = ReadStringCard(filename,cardname,commentdelim,enableerror) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Reads the string associated to the card cardname placed +// in filename. +// The value of cardname is assumed to be a string. +// If the card is not found an error will occur. +// +// Input data: +// filename: full path + name of the file where the card +// is being searched. +// cardname: string with the name of the card. +// commentdelim: specifies a character for an eventual comment +// (to be discarded) after the card value. +// enableerror: 'y' enable error message. +// 'n' enable warning message. +// +// Output data: +// cardvalue: string associated to the card. Blanks characters +// are discarded. +// #RNU_RES_E +// +// Status: +// 06-Feb-2004 -- Nutricato Raffaele: Author. +// 06-Feb-2004 -- Nutricato Raffaele: TEST OK. +// 25-Jun-2004 -- Nutricato Raffaele: Added Comment delimiter +// and enableerror as input parameter. +// 13-Apr-2007 -- Intelligente Fabio: Rewritten from Matlab to Scilab. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,3); - -if argn(2) == 2 then - commentdelim = ' '; - enableerror = 'y'; - -elseif argn(2) == 3 then - enableerror = 'y'; -end - -[flag_found,requested_line,dummy2] = ... - KeyString2FileStringPos(filename,cardname,'cut'); -cardvalue = stripblanks(strtok(requested_line,commentdelim)); -clear requested_line dummy2 - -if (flag_found == 0) then - if (enableerror == 'y') then - error(9999, cardname+' not found'); - else - warning([cardname,' not found']); - end -end - -endfunction +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,3); + +if argn(2) == 2 then + commentdelim = ' '; + enableerror = 'y'; + +elseif argn(2) == 3 then + enableerror = 'y'; +end + +[flag_found,requested_line,dummy2] = ... + KeyString2FileStringPos(filename,cardname,'cut'); +cardvalue = stripblanks(strtok(requested_line,commentdelim)); +clear requested_line dummy2 + +if (flag_found == 0) then + if (enableerror == 'y') then + error(9999, cardname+' not found'); + else + warning([cardname,' not found']); + end +end + +endfunction diff --git a/macros/GeneralFunctions/SCI2CCreateDir.sci b/macros/GeneralFunctions/SCI2CCreateDir.sci index dcc39c3e..c74ef124 100644 --- a/macros/GeneralFunctions/SCI2CCreateDir.sci +++ b/macros/GeneralFunctions/SCI2CCreateDir.sci @@ -1,31 +1,31 @@ -function SCI2CCreateDir(OutDir) -// function SCI2CCreateDir(OutDir) -// ----------------------------------------------------------------- -// Create the dir OutDir. -// -// Input data: -// OutDir: full path (absolute or relative) of the directory to be created. -// -// Output data: -// --- -// -// Status: -// 25-Jun-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- +function SCI2CCreateDir(OutDir) +// function SCI2CCreateDir(OutDir) +// ----------------------------------------------------------------- +// Create the dir OutDir. +// +// Input data: +// OutDir: full path (absolute or relative) of the directory to be created. +// +// Output data: +// --- +// +// Status: +// 25-Jun-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -[tmppath,tmpfname,tmpextension]=fileparts(OutDir) ; - -status_dir = mkdir(tmppath,tmpfname+tmpextension) ; -if (status_dir == 0) - error(9999, 'Cannot create: '+OutDir); -end - -endfunction +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +[tmppath,tmpfname,tmpextension]=fileparts(OutDir) ; + +status_dir = mkdir(tmppath,tmpfname+tmpextension) ; +if (status_dir == 0) + error(9999, 'Cannot create: '+OutDir); +end + +endfunction diff --git a/macros/GeneralFunctions/SCI2CFindFile.sci b/macros/GeneralFunctions/SCI2CFindFile.sci index f7271e2e..7cb3e104 100644 --- a/macros/GeneralFunctions/SCI2CFindFile.sci +++ b/macros/GeneralFunctions/SCI2CFindFile.sci @@ -1,40 +1,40 @@ -function [FlagFound,SCIFileName] = SCI2CFindFile(PathList,FileName) -// function [FlagFound,SCIFileName] = SCI2CFindFile(PathList,FileName) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 11-Jul-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); -FlagFound = 0; -SCIFileName = ''; - -// Perform the search in the user .sci files. -Nscipaths = size(PathList,1); -counterscipaths = 1; -while ((FlagFound == 0) & (counterscipaths <= Nscipaths)) - dirscifilename = PathList(counterscipaths); - fullpathscifilename = fullfile(dirscifilename,FileName); - if (SCI2Cfileexist(dirscifilename,FileName)) - // It is a function of the USER2C library. - FlagFound = 1; - SCIFileName = fullpathscifilename; - end - counterscipaths = counterscipaths + 1; -end - -endfunction +function [FlagFound,SCIFileName] = SCI2CFindFile(PathList,FileName) +// function [FlagFound,SCIFileName] = SCI2CFindFile(PathList,FileName) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 11-Jul-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); +FlagFound = 0; +SCIFileName = ''; + +// Perform the search in the user .sci files. +Nscipaths = size(PathList,1); +counterscipaths = 1; +while ((FlagFound == 0) & (counterscipaths <= Nscipaths)) + dirscifilename = PathList(counterscipaths); + fullpathscifilename = fullfile(dirscifilename,FileName); + if (SCI2Cfileexist(dirscifilename,FileName)) + // It is a function of the USER2C library. + FlagFound = 1; + SCIFileName = fullpathscifilename; + end + counterscipaths = counterscipaths + 1; +end + +endfunction diff --git a/macros/GeneralFunctions/SCI2CNInArgCheck.sci b/macros/GeneralFunctions/SCI2CNInArgCheck.sci index 71b93328..3c8dcb2b 100644 --- a/macros/GeneralFunctions/SCI2CNInArgCheck.sci +++ b/macros/GeneralFunctions/SCI2CNInArgCheck.sci @@ -1,26 +1,26 @@ -function SCI2CNInArgCheck(NInArgs,MinNArgs,MaxNArgs) -// function SCI2CNInArgCheck(NInArgs,MinNArgs,MaxNArgs) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Check that NInArgs is in the range specified by MinNArgs and -// MaxNArgs. -// -// Input data: -// NInArgs: number of input arguments of the function under test. -// MinNArgs: minimum number of input arguments allowed. -// MaxNArgs: maximum number of input arguments allowed. -// -// Output data: -// --- -// #RNU_RES_E -// -// Status: -// 23-Nov-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato -// ----------------------------------------------------------------- - -if ((NInArgs < MinNArgs) | (NInArgs > MaxNArgs)) - error(9999, 'Incorrect number of input arguments.'); -end -endfunction +function SCI2CNInArgCheck(NInArgs,MinNArgs,MaxNArgs) +// function SCI2CNInArgCheck(NInArgs,MinNArgs,MaxNArgs) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Check that NInArgs is in the range specified by MinNArgs and +// MaxNArgs. +// +// Input data: +// NInArgs: number of input arguments of the function under test. +// MinNArgs: minimum number of input arguments allowed. +// MaxNArgs: maximum number of input arguments allowed. +// +// Output data: +// --- +// #RNU_RES_E +// +// Status: +// 23-Nov-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato +// ----------------------------------------------------------------- + +if ((NInArgs < MinNArgs) | (NInArgs > MaxNArgs)) + error(9999, 'Incorrect number of input arguments.'); +end +endfunction diff --git a/macros/GeneralFunctions/SCI2COpenFileRead.sci b/macros/GeneralFunctions/SCI2COpenFileRead.sci index 1ad60ce5..1132a507 100644 --- a/macros/GeneralFunctions/SCI2COpenFileRead.sci +++ b/macros/GeneralFunctions/SCI2COpenFileRead.sci @@ -1,30 +1,30 @@ -function fidnumber = SCI2COpenFileRead(filename) -// function fidnumber = SCI2COpenFileRead(filename) -// -------------------------------------------------------------------------------- -// Open a file in read mode. -// -// Input data: -// filename: path + name of the file to read. -// -// Output data: -// fidnumber: file identifier. -// -// Status: -// 27-Oct-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -// --- Open the .sci file (read only). --- -[fidnumber,fiderror] = mopen(filename,'r'); -if (fiderror < 0) - SCI2Cerror(['Cannot open (in read mode): '+filename]); -end - -endfunction +function fidnumber = SCI2COpenFileRead(filename) +// function fidnumber = SCI2COpenFileRead(filename) +// -------------------------------------------------------------------------------- +// Open a file in read mode. +// +// Input data: +// filename: path + name of the file to read. +// +// Output data: +// fidnumber: file identifier. +// +// Status: +// 27-Oct-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +// --- Open the .sci file (read only). --- +[fidnumber,fiderror] = mopen(filename,'r'); +if (fiderror < 0) + SCI2Cerror(['Cannot open (in read mode): '+filename]); +end + +endfunction diff --git a/macros/GeneralFunctions/SCI2COpenFileWrite.sci b/macros/GeneralFunctions/SCI2COpenFileWrite.sci index f87aef87..37b0c9d8 100644 --- a/macros/GeneralFunctions/SCI2COpenFileWrite.sci +++ b/macros/GeneralFunctions/SCI2COpenFileWrite.sci @@ -1,30 +1,30 @@ -function fidnumber = SCI2COpenFileWrite(filename) -// function fidnumber = SCI2COpenFileWrite(filename) -// -------------------------------------------------------------------------------- -// Open a file in write mode. -// -// Input data: -// filename: path + name of the file to be written. -// -// Output data: -// fidnumber: file identifier. -// -// Status: -// 27-Oct-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -// --- Open the .sci file (write mode). --- -[fidnumber,fiderror] = mopen(filename,'w'); -if (fiderror < 0) - error(9999, 'Cannot open (in write mode): '+filename); -end - -endfunction +function fidnumber = SCI2COpenFileWrite(filename) +// function fidnumber = SCI2COpenFileWrite(filename) +// -------------------------------------------------------------------------------- +// Open a file in write mode. +// +// Input data: +// filename: path + name of the file to be written. +// +// Output data: +// fidnumber: file identifier. +// +// Status: +// 27-Oct-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +// --- Open the .sci file (write mode). --- +[fidnumber,fiderror] = mopen(filename,'w'); +if (fiderror < 0) + error(9999, 'Cannot open (in write mode): '+filename); +end + +endfunction diff --git a/macros/GeneralFunctions/SCI2CTemplate.sci b/macros/GeneralFunctions/SCI2CTemplate.sci index e47bdd00..4166651b 100644 --- a/macros/GeneralFunctions/SCI2CTemplate.sci +++ b/macros/GeneralFunctions/SCI2CTemplate.sci @@ -1,32 +1,32 @@ -function out = SCI2CTemplate(in1,in2) -// function out = SCI2CTemplate(in1,in2) -// ----------------------------------------------------------------- -// This is a template function which shows how to comment functions. -// -// Input data: -// in1: input argument number 1 -// in2: input argument number 2 -// -// Output data: -// out: output argument number 1 -// -// Status: -// 03-Jan-2008 -- Raffaele Nutricato: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -endfunction +function out = SCI2CTemplate(in1,in2) +// function out = SCI2CTemplate(in1,in2) +// ----------------------------------------------------------------- +// This is a template function which shows how to comment functions. +// +// Input data: +// in1: input argument number 1 +// in2: input argument number 2 +// +// Output data: +// out: output argument number 1 +// +// Status: +// 03-Jan-2008 -- Raffaele Nutricato: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +endfunction diff --git a/macros/GeneralFunctions/SCI2Ccopyfile.sci b/macros/GeneralFunctions/SCI2Ccopyfile.sci index f95c29ef..40d43f40 100644 --- a/macros/GeneralFunctions/SCI2Ccopyfile.sci +++ b/macros/GeneralFunctions/SCI2Ccopyfile.sci @@ -1,49 +1,49 @@ -function SCI2Ccopyfile(InFileName,OutFileName,CopyMode) -// function SCI2Ccopyfile(InFileName,OutFileName,CopyMode) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Copy the contents of infile into outfile. Append mode is used. -// -// Input data: -// InFileName: path+filename of the input file. -// OutFileName: path+filename of the input file. -// CopyMode: 'append' or 'overwrite' -// #RNU_RES_E -// -// Output data: -// --- -// -// Status: -// 23-Nov-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),3,3); - -if (CopyMode == 'append') - // ------------------------ - // --- Open Input file. --- - // ------------------------ - fidIn = SCI2COpenFileRead(InFileName); - - // ------------------- - // --- Read lines. --- - // ------------------- - tmpline = mgetl(fidIn,1); - while (meof(fidIn) == 0) - PrintStringInfo(tmpline, OutFileName, 'file', 'y'); - tmpline = mgetl(fidIn,1); - end - mclose(fidIn); -elseif (CopyMode == 'overwrite') - PrintStringInfo(' ', OutFileName, 'file', 'y'); // Cannot use scilab copyfile when the directory is empty!. - copyfile(InFileName,OutFileName); -else - SCI2Cerror('Unknown CopyMode: ""'+CopyMode+'""'); -end - -endfunction +function SCI2Ccopyfile(InFileName,OutFileName,CopyMode) +// function SCI2Ccopyfile(InFileName,OutFileName,CopyMode) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Copy the contents of infile into outfile. Append mode is used. +// +// Input data: +// InFileName: path+filename of the input file. +// OutFileName: path+filename of the input file. +// CopyMode: 'append' or 'overwrite' +// #RNU_RES_E +// +// Output data: +// --- +// +// Status: +// 23-Nov-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),3,3); + +if (CopyMode == 'append') + // ------------------------ + // --- Open Input file. --- + // ------------------------ + fidIn = SCI2COpenFileRead(InFileName); + + // ------------------- + // --- Read lines. --- + // ------------------- + tmpline = mgetl(fidIn,1); + while (meof(fidIn) == 0) + PrintStringInfo(tmpline, OutFileName, 'file', 'y'); + tmpline = mgetl(fidIn,1); + end + mclose(fidIn); +elseif (CopyMode == 'overwrite') + PrintStringInfo(' ', OutFileName, 'file', 'y'); // Cannot use scilab copyfile when the directory is empty!. + copyfile(InFileName,OutFileName); +else + SCI2Cerror('Unknown CopyMode: ""'+CopyMode+'""'); +end + +endfunction diff --git a/macros/GeneralFunctions/SCI2Cfileexist.sci b/macros/GeneralFunctions/SCI2Cfileexist.sci index 05dbf590..d01a283d 100644 --- a/macros/GeneralFunctions/SCI2Cfileexist.sci +++ b/macros/GeneralFunctions/SCI2Cfileexist.sci @@ -1,38 +1,38 @@ -function ExistTest = SCI2Cfileexist(InDir,FileName) -// function ExistTest = SCI2Cfileexist(InDir,FileName) -// ----------------------------------------------------------------- -// Searches for the file FileName in the directory InDir. -// Return %F if it doesn't exist. -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 12-Jun-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -tmppwd = pwd(); -cd(InDir); -allfiles = ls(FileName); -cd(tmppwd); - -if (size(allfiles,1) == 0) - ExistTest = %F; -elseif (size(allfiles,1) == 1) - ExistTest = %T; -else - SCI2Cerror('Very Strange! Found more than one file with the same name.'); -end - -endfunction +function ExistTest = SCI2Cfileexist(InDir,FileName) +// function ExistTest = SCI2Cfileexist(InDir,FileName) +// ----------------------------------------------------------------- +// Searches for the file FileName in the directory InDir. +// Return %F if it doesn't exist. +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 12-Jun-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +tmppwd = pwd(); +cd(InDir); +allfiles = ls(FileName); +cd(tmppwd); + +if (size(allfiles,1) == 0) + ExistTest = %F; +elseif (size(allfiles,1) == 1) + ExistTest = %T; +else + SCI2Cerror('Very Strange! Found more than one file with the same name.'); +end + +endfunction diff --git a/macros/GeneralFunctions/SCI2Cflipud.sci b/macros/GeneralFunctions/SCI2Cflipud.sci index 2e988c1b..6fe841fd 100644 --- a/macros/GeneralFunctions/SCI2Cflipud.sci +++ b/macros/GeneralFunctions/SCI2Cflipud.sci @@ -1,40 +1,40 @@ -function OutputData = SCI2Cflipud(InputData) -// function OutputData = SCI2Cflipud(InputData) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Inverts (flips) the position of the arguments of InputData. -// Input data can be a struct or an array. -// Ex.: -// A(1) = 'one'; -// A(2) = 'two'; -// A(3) = 'three'; -// B = SCI2Cflipud(A); -// B(1) = 'three'; -// B(2) = 'two'; -// B(3) = 'one'; -// -// Input data: -// InputData: input array or structure. -// -// Output data: -// OutputData: flipped version of the input array. -// -// #RNU_RES_E -// Status: -// 12-May-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -NInputs = size(InputData,1); -OutputData = InputData; // To be sure that they will have the same structure. -for cnt = 1:NInputs - OutputData(cnt) = InputData(NInputs-cnt+1); -end -endfunction +function OutputData = SCI2Cflipud(InputData) +// function OutputData = SCI2Cflipud(InputData) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Inverts (flips) the position of the arguments of InputData. +// Input data can be a struct or an array. +// Ex.: +// A(1) = 'one'; +// A(2) = 'two'; +// A(3) = 'three'; +// B = SCI2Cflipud(A); +// B(1) = 'three'; +// B(2) = 'two'; +// B(3) = 'one'; +// +// Input data: +// InputData: input array or structure. +// +// Output data: +// OutputData: flipped version of the input array. +// +// #RNU_RES_E +// Status: +// 12-May-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +NInputs = size(InputData,1); +OutputData = InputData; // To be sure that they will have the same structure. +for cnt = 1:NInputs + OutputData(cnt) = InputData(NInputs-cnt+1); +end +endfunction diff --git a/macros/GeneralFunctions/SCI2Cmdelete.sci b/macros/GeneralFunctions/SCI2Cmdelete.sci index d19233dc..62dd4b89 100644 --- a/macros/GeneralFunctions/SCI2Cmdelete.sci +++ b/macros/GeneralFunctions/SCI2Cmdelete.sci @@ -1,33 +1,33 @@ -function SCI2Cmdelete(InFile) -// function SCI2Cmdelete(InFile) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Deletes the input files only if the file really exists. -// This avoids the issuing of the error generated by mdelete. -// -// Input data: -// InFile: full path of the file to be deleted. -// -// Output data: -// #RNU_RES_E -// -// Status: -// 12-Apr-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -[Inx,Inierr]=fileinfo(InFile); -if Inierr == 0 - mdelete(InFile);//NUT: questa stampa a video il file che sta cancellando. - //NUT ho fatto delle altre prove e mi funzionava tutto. solo che quando - //NUT eseguo il codice scilab to c mi stampa a video tutto il nome del file. -end - -endfunction +function SCI2Cmdelete(InFile) +// function SCI2Cmdelete(InFile) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Deletes the input files only if the file really exists. +// This avoids the issuing of the error generated by mdelete. +// +// Input data: +// InFile: full path of the file to be deleted. +// +// Output data: +// #RNU_RES_E +// +// Status: +// 12-Apr-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +[Inx,Inierr]=fileinfo(InFile); +if Inierr == 0 + mdelete(InFile);//NUT: questa stampa a video il file che sta cancellando. + //NUT ho fatto delle altre prove e mi funzionava tutto. solo che quando + //NUT eseguo il codice scilab to c mi stampa a video tutto il nome del file. +end + +endfunction diff --git a/macros/GeneralFunctions/SCI2Cresize.sci b/macros/GeneralFunctions/SCI2Cresize.sci index ba78fde0..da4fd967 100644 --- a/macros/GeneralFunctions/SCI2Cresize.sci +++ b/macros/GeneralFunctions/SCI2Cresize.sci @@ -1,33 +1,33 @@ -function out = SCI2Cresize(in) -// function out = SCI2Cresize(in) -// ----------------------------------------------------------------- -// #RNU_RES_B -// It is a dummy function used by the programmer to specify at a given -// point that a variable is changing its size. This will be translated -// into C code by re-assigning the size array. -// Next releases of this function will include check to avoid -// increment of the size outside the limits specified by the first -// initialization of the variable. -// -// Input data: -// in: input variable to be resized -// -// Output data: -// out: resized variable -// -// #RNU_RES_E -// Status: -// 10-Jun-2008 -- Nutricato Raffaele: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -out = in; - -endfunction +function out = SCI2Cresize(in) +// function out = SCI2Cresize(in) +// ----------------------------------------------------------------- +// #RNU_RES_B +// It is a dummy function used by the programmer to specify at a given +// point that a variable is changing its size. This will be translated +// into C code by re-assigning the size array. +// Next releases of this function will include check to avoid +// increment of the size outside the limits specified by the first +// initialization of the variable. +// +// Input data: +// in: input variable to be resized +// +// Output data: +// out: resized variable +// +// #RNU_RES_E +// Status: +// 10-Jun-2008 -- Nutricato Raffaele: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +out = in; + +endfunction diff --git a/macros/GeneralFunctions/SCI2Cstring.sci b/macros/GeneralFunctions/SCI2Cstring.sci index cf6d4370..5b16c250 100644 --- a/macros/GeneralFunctions/SCI2Cstring.sci +++ b/macros/GeneralFunctions/SCI2Cstring.sci @@ -1,34 +1,34 @@ -function outstring = SCI2Cstring(innum) -// function outstring = SCI2Cstring(innum) -// ----------------------------------------------------------------- -// #RNU_RES_B -// It fixes the bug of string function when applied to -// exponential formats: -// Example: -// -->string(10e-10) -// ans = -// 1.000D-09 -// Note how the "D" is syntactically wrong. -// -// Input data: -// innnum: input number to be converted into string. -// -// Output data: -// outstring: string containing the conversion. -// #RNU_RES_E -// -// Status: -// 07-May-2008 -- Nutricato Raffaele: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -outstring=strsubst(string(innum),'D','e'); - -endfunction +function outstring = SCI2Cstring(innum) +// function outstring = SCI2Cstring(innum) +// ----------------------------------------------------------------- +// #RNU_RES_B +// It fixes the bug of string function when applied to +// exponential formats: +// Example: +// -->string(10e-10) +// ans = +// 1.000D-09 +// Note how the "D" is syntactically wrong. +// +// Input data: +// innnum: input number to be converted into string. +// +// Output data: +// outstring: string containing the conversion. +// #RNU_RES_E +// +// Status: +// 07-May-2008 -- Nutricato Raffaele: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +outstring=strsubst(string(innum),'D','e'); + +endfunction diff --git a/macros/GeneralFunctions/SCI2Cstrncmp.sci b/macros/GeneralFunctions/SCI2Cstrncmp.sci index 54a5e148..1d9f7c91 100644 --- a/macros/GeneralFunctions/SCI2Cstrncmp.sci +++ b/macros/GeneralFunctions/SCI2Cstrncmp.sci @@ -1,27 +1,27 @@ -function res = SCI2Cstrncmp(s1,s2,n) -// function res = SCI2Cstrncmp(s1,s2,n) -// ----------------------------------------------------------------- -// This function compares first n characters of strings s1 and s2. -// SCI2Cstrncmp(s1,s2,n) returns 1logical T (true) if the first n characters of -// the strings s1 and s2 are the same and logical 0 (false) otherwise. -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 16-Apr-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),3,3); - -res = (part(s1,1:n) == part(s2,1:n)); -endfunction +function res = SCI2Cstrncmp(s1,s2,n) +// function res = SCI2Cstrncmp(s1,s2,n) +// ----------------------------------------------------------------- +// This function compares first n characters of strings s1 and s2. +// SCI2Cstrncmp(s1,s2,n) returns 1logical T (true) if the first n characters of +// the strings s1 and s2 are the same and logical 0 (false) otherwise. +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 16-Apr-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),3,3); + +res = (part(s1,1:n) == part(s2,1:n)); +endfunction diff --git a/macros/GeneralFunctions/SCI2Cstrncmps1size.sci b/macros/GeneralFunctions/SCI2Cstrncmps1size.sci index 38e8c371..909de50d 100644 --- a/macros/GeneralFunctions/SCI2Cstrncmps1size.sci +++ b/macros/GeneralFunctions/SCI2Cstrncmps1size.sci @@ -1,32 +1,32 @@ -function res = SCI2Cstrncmps1size(s1,s2); -// function res = SCI2Cstrncmps1size(s1,s2); -// ----------------------------------------------------------------- -// #RNU_RES_B -// This function compares first n characters of strings s1 and s2. -// n is the size of the string s1. -// SCI2Cstrncmps1size returns logical T (true) if the first n characters of -// the strings s1 and s2 are the same and logical 0 (false) otherwise. -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// #RNU_RES_E -// Status: -// 16-Apr-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -n = length(s1); -res = (part(s1,1:n) == part(s2,1:n)); - -endfunction +function res = SCI2Cstrncmps1size(s1,s2); +// function res = SCI2Cstrncmps1size(s1,s2); +// ----------------------------------------------------------------- +// #RNU_RES_B +// This function compares first n characters of strings s1 and s2. +// n is the size of the string s1. +// SCI2Cstrncmps1size returns logical T (true) if the first n characters of +// the strings s1 and s2 are the same and logical 0 (false) otherwise. +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// #RNU_RES_E +// Status: +// 16-Apr-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +n = length(s1); +res = (part(s1,1:n) == part(s2,1:n)); + +endfunction diff --git a/macros/GeneralFunctions/SizeInByte.sci b/macros/GeneralFunctions/SizeInByte.sci index fa2d4f94..9807d180 100644 --- a/macros/GeneralFunctions/SizeInByte.sci +++ b/macros/GeneralFunctions/SizeInByte.sci @@ -1,41 +1,41 @@ -function SizeIn = SizeInByte(InDataType) -// function SizeIn = SizeInByte(InDataType) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Returns the size in bytes of the input data type. -// -// Input data: -// InDataType: input data type. It can be: -// 'float' -// 'double' -// 'floatComplex*' -// 'doubleComplex*' -// -// Output data: -// SizeIn: size in bytes of the input data type. -// -// #RNU_RES_E -// Status: -// 12-May-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -if (InDataType == 'float') - SizeIn = 4; -elseif (InDataType == 'double') - SizeIn = 8; -elseif (InDataType == 'floatComplex*') - SizeIn = 8; -elseif (InDataType == 'doubleComplex*') - SizeIn = 16; -else - error('Unknown data type: '+InDataType); -end -endfunction +function SizeIn = SizeInByte(InDataType) +// function SizeIn = SizeInByte(InDataType) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Returns the size in bytes of the input data type. +// +// Input data: +// InDataType: input data type. It can be: +// 'float' +// 'double' +// 'floatComplex*' +// 'doubleComplex*' +// +// Output data: +// SizeIn: size in bytes of the input data type. +// +// #RNU_RES_E +// Status: +// 12-May-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +if (InDataType == 'float') + SizeIn = 4; +elseif (InDataType == 'double') + SizeIn = 8; +elseif (InDataType == 'floatComplex*') + SizeIn = 8; +elseif (InDataType == 'doubleComplex*') + SizeIn = 16; +else + error('Unknown data type: '+InDataType); +end +endfunction diff --git a/macros/GeneralFunctions/dispina.sci b/macros/GeneralFunctions/dispina.sci index dc07cddc..6ce3c489 100644 --- a/macros/GeneralFunctions/dispina.sci +++ b/macros/GeneralFunctions/dispina.sci @@ -1,31 +1,31 @@ -function dispina(instring); -// function dispina(instring); -// ----------------------------------------------------------------- -// Quista sacciu sulu iou comu funziona e a ce me serve. -// -// Input data: -// -// Output data: -// -// Status: -// 12-Apr-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- +function dispina(instring); +// function dispina(instring); +// ----------------------------------------------------------------- +// Quista sacciu sulu iou comu funziona e a ce me serve. +// +// Input data: +// +// Output data: +// +// Status: +// 12-Apr-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -disp('++++++++++++++++++++++++++++++++++++++++++++++++++') -disp('++++++++++++++++++++++++++++++++++++++++++++++++++') -disp('++++++++++++++++++++++++++++++++++++++++++++++++++') -disp('++++++++++++++++++++++++++++++++++++++++++++++++++') -disp(instring); -disp('++++++++++++++++++++++++++++++++++++++++++++++++++') -disp('++++++++++++++++++++++++++++++++++++++++++++++++++') -disp('++++++++++++++++++++++++++++++++++++++++++++++++++') -disp('++++++++++++++++++++++++++++++++++++++++++++++++++') -endfunction +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +disp('++++++++++++++++++++++++++++++++++++++++++++++++++') +disp('++++++++++++++++++++++++++++++++++++++++++++++++++') +disp('++++++++++++++++++++++++++++++++++++++++++++++++++') +disp('++++++++++++++++++++++++++++++++++++++++++++++++++') +disp(instring); +disp('++++++++++++++++++++++++++++++++++++++++++++++++++') +disp('++++++++++++++++++++++++++++++++++++++++++++++++++') +disp('++++++++++++++++++++++++++++++++++++++++++++++++++') +disp('++++++++++++++++++++++++++++++++++++++++++++++++++') +endfunction diff --git a/macros/GeneralFunctions/filenamefprintf.sci b/macros/GeneralFunctions/filenamefprintf.sci index de546feb..b9650eeb 100644 --- a/macros/GeneralFunctions/filenamefprintf.sci +++ b/macros/GeneralFunctions/filenamefprintf.sci @@ -1,57 +1,57 @@ -function filenamefprintf(filename,ennewline,str,formattedstring) -// function filenamefprintf(filename,ennewline,str,formattedstring) -// -------------------------------------------------------------------------------- -// Uses the printf to print the string specified by varargin. filenamefprintf -// uses the filename instead of the fid parameter used by fprintf. -// Everytime filenamefprintf is called it -// opens the file, prints the string in it and then closes it. -// Opening is performed in read/append mode (at+). -// -// Input data: -// filename: string that specifies the name of the file. -// varargin are the input arguments for the printf. -// formattedstring: if 'n' (default) it means that str is considered as a simple string (mputstr). -// if 'y' then str is considered formatted according to mfprint syntax -// -// Output data: -// --- -// -// Status: -// 31-Jan-2006 -- Nutricato Raffaele: Author. -// 31-Jan-2006 -- Nutricato Raffaele: TEST OK. -// -// Copyright 2006 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),4,4); - - -// [FidReportFile, mess] = mopen(deblank(filename),'at+'); - if type(filename) == 1 then // double - FidReportFile = filename; - mess = "invalid filename"; - elseif type(filename) == 10 then // string - [FidReportFile, mess] = mopen(filename,'a+'); - else - FidReportFile = -1; - mess = "invalid filename type"; - end - if (FidReportFile == -1) then - error(9999, mess); - end - if formattedstring == 'n' - mputstr(str,FidReportFile); - else - mfprintf(FidReportFile, str); - end - if ennewline=='y' then - mfprintf(FidReportFile,'\n'); - end - if type(filename) == 10 then - mclose(FidReportFile); - end -endfunction +function filenamefprintf(filename,ennewline,str,formattedstring) +// function filenamefprintf(filename,ennewline,str,formattedstring) +// -------------------------------------------------------------------------------- +// Uses the printf to print the string specified by varargin. filenamefprintf +// uses the filename instead of the fid parameter used by fprintf. +// Everytime filenamefprintf is called it +// opens the file, prints the string in it and then closes it. +// Opening is performed in read/append mode (at+). +// +// Input data: +// filename: string that specifies the name of the file. +// varargin are the input arguments for the printf. +// formattedstring: if 'n' (default) it means that str is considered as a simple string (mputstr). +// if 'y' then str is considered formatted according to mfprint syntax +// +// Output data: +// --- +// +// Status: +// 31-Jan-2006 -- Nutricato Raffaele: Author. +// 31-Jan-2006 -- Nutricato Raffaele: TEST OK. +// +// Copyright 2006 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),4,4); + + +// [FidReportFile, mess] = mopen(deblank(filename),'at+'); + if type(filename) == 1 then // double + FidReportFile = filename; + mess = "invalid filename"; + elseif type(filename) == 10 then // string + [FidReportFile, mess] = mopen(filename,'a+'); + else + FidReportFile = -1; + mess = "invalid filename type"; + end + if (FidReportFile == -1) then + error(9999, mess); + end + if formattedstring == 'n' + mputstr(str,FidReportFile); + else + mfprintf(FidReportFile, str); + end + if ennewline=='y' then + mfprintf(FidReportFile,'\n'); + end + if type(filename) == 10 then + mclose(FidReportFile); + end +endfunction diff --git a/macros/GeneralFunctions/float.sci b/macros/GeneralFunctions/float.sci index 634950b1..33b8ec0a 100644 --- a/macros/GeneralFunctions/float.sci +++ b/macros/GeneralFunctions/float.sci @@ -1,26 +1,26 @@ -function y = float(x) -// ----------------------------------------------------------------- -// Dummy function for float precision specifier. -// -// Input data: -// x: input array or scalar. -// -// Output data: -// y: output array or scalar. -// -// Status: -// 12-Apr-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- +function y = float(x) +// ----------------------------------------------------------------- +// Dummy function for float precision specifier. +// +// Input data: +// x: input array or scalar. +// +// Output data: +// y: output array or scalar. +// +// Status: +// 12-Apr-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - - -y = x; - -endfunction +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + + +y = x; + +endfunction diff --git a/macros/GeneralFunctions/squeezestrings.sci b/macros/GeneralFunctions/squeezestrings.sci index 049476d1..a01f15ab 100644 --- a/macros/GeneralFunctions/squeezestrings.sci +++ b/macros/GeneralFunctions/squeezestrings.sci @@ -1,31 +1,31 @@ -function OutString = squeezestrings(InStringArray) -// function OutString = squeezestrings(InStringArray) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Converts an array of strings into a single string. -// -// Input data: -// InStringArray: Array of strings. -// -// Output data: -// OutString: Output string. -// -// #RNU_RES_E -// Status: -// 12-Apr-2007 -- Nutricato Raffaele: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -OutString = []; -for counterstrings = 1:max(size(InStringArray)) - OutString = OutString+InStringArray(counterstrings); -end - -endfunction +function OutString = squeezestrings(InStringArray) +// function OutString = squeezestrings(InStringArray) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Converts an array of strings into a single string. +// +// Input data: +// InStringArray: Array of strings. +// +// Output data: +// OutString: Output string. +// +// #RNU_RES_E +// Status: +// 12-Apr-2007 -- Nutricato Raffaele: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +OutString = []; +for counterstrings = 1:max(size(InStringArray)) + OutString = OutString+InStringArray(counterstrings); +end + +endfunction diff --git a/macros/Hardware/RasberryPi/raspi.sci b/macros/Hardware/RasberryPi/raspi.sci index 4da09ca4..2168f349 100644 --- a/macros/Hardware/RasberryPi/raspi.sci +++ b/macros/Hardware/RasberryPi/raspi.sci @@ -1,94 +1,94 @@ -// 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 -// Organization: FOSSEE, IIT Bombay -// Email: toolbox@scilab.in - -global RPI_piAdress; - -if getos()=="Linux" then - RPI_MacrosPath=get_absolute_file_path("raspi.sci"); - RPI_MacrosPath=part(RPI_MacrosPath,1:(length(RPI_MacrosPath)-7)); - RPI_MacrosPath=RPI_MacrosPath+'src/python/'; -// disp("Linux"); - function raspi(adress,local,username) - // Function to initiate the connection to the raspberry pi - // - // Calling Sequence - // raspi(adress,local,username) - // - // Parameters - // address : Network address of the raspberry pi. Eg:10.42.0.82 - // local : username of the local computer. - // username: username on the raspberry pi. - // - // Description - // This program initiates the connection to the raspberry pi at the given address by running the python server script on port 9077 on the pi. - // - // Examples - // raspi('10.42.0.82','panda','pi') - // See also - // raspi_close - // - // Authors - // Jorawar Singh - - global RPI_piAdress; - RPI_piAdress=adress; - - disp("Step 1/6") - TCL_EvalStr("if {[file exists /home/"+local+"/.ssh/id_rsa]} {} else {exec ssh-keygen -N """" -f /home/"+local+"/.ssh/id_rsa -q}"); - disp("Step 2/6") - TCL_EvalStr("exec ssh-add >logs.txt 2>&1"); - disp("Step 3/6") - TCL_EvalStr("exec ssh-copy-id -i /home/"+local+"/.ssh/id_rsa.pub "+username+"@"+adress+" > logs.txt 2>&1"); - disp("Step 4/6") - TCL_EvalStr("exec rsync -avz "+RPI_MacrosPath+"serverWP.py "+username+"@"+adress+":.scilab/ >logs.txt"); - disp("Step 5/6") - TCL_EvalStr("exec ssh "+username+"@"+adress+" sudo python /home/"+username+"/.scilab/serverWP.py &"); - disp("Step 6/6") - TCL_EvalStr(["file delete logs.txt";"file delete &1"]); - endfunction -elseif getos()=='Windows' then - tempPath=get_absolute_file_path("raspi.sci"); - RPI_MacrosPath=strsubst(tempPath,'\','/'); - RPI_MacrosPath=part(RPI_MacrosPath,1:(length(RPI_MacrosPath)-7)); - RPI_MacrosPath=RPI_MacrosPath+'src/python/'; - function raspi(adress,username) - // Function to initiate the connection to the raspberry pi - // - // Calling Sequence - // raspi(adress,username) - // - // Parameters - // address : Network address of the raspberry pi. Eg:10.42.0.82 - // username: username on the raspberry pi. - // - // Description - // This program initiates the connection to the raspberry pi at the given address by running the python server script on port 9077 on the pi. - // - // Examples - // raspi('169.254.191.116','pi') - // See also - // raspi_close - // - // Authors - // Jorawar Singh - - global RPI_piAdress; - RPI_piAdress=adress; - - disp("Step 1/3") - TCL_EvalStr("exec mintty ssh "+username+"@"+adress+" mkdir .scilab"); - disp("Step 2/3") - TCL_EvalStr("exec mintty scp "+RPI_MacrosPath+"serverWP.py "+username+"@"+adress+":/home/"+username+"/.scilab/"); - disp("Step 3/3 (Wait ~15 seconds)") - TCL_EvalStr("exec mintty ssh "+username+"@"+adress+" sudo python /home/"+username+"/.scilab/serverWP.py &"); - sleep(15000) - TCL_EvalStr("exec taskkill /IM mintty.exe"); - endfunction -end +// 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 +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +global RPI_piAdress; + +if getos()=="Linux" then + RPI_MacrosPath=get_absolute_file_path("raspi.sci"); + RPI_MacrosPath=part(RPI_MacrosPath,1:(length(RPI_MacrosPath)-7)); + RPI_MacrosPath=RPI_MacrosPath+'src/python/'; +// disp("Linux"); + function raspi(adress,local,username) + // Function to initiate the connection to the raspberry pi + // + // Calling Sequence + // raspi(adress,local,username) + // + // Parameters + // address : Network address of the raspberry pi. Eg:10.42.0.82 + // local : username of the local computer. + // username: username on the raspberry pi. + // + // Description + // This program initiates the connection to the raspberry pi at the given address by running the python server script on port 9077 on the pi. + // + // Examples + // raspi('10.42.0.82','panda','pi') + // See also + // raspi_close + // + // Authors + // Jorawar Singh + + global RPI_piAdress; + RPI_piAdress=adress; + + disp("Step 1/6") + TCL_EvalStr("if {[file exists /home/"+local+"/.ssh/id_rsa]} {} else {exec ssh-keygen -N """" -f /home/"+local+"/.ssh/id_rsa -q}"); + disp("Step 2/6") + TCL_EvalStr("exec ssh-add >logs.txt 2>&1"); + disp("Step 3/6") + TCL_EvalStr("exec ssh-copy-id -i /home/"+local+"/.ssh/id_rsa.pub "+username+"@"+adress+" > logs.txt 2>&1"); + disp("Step 4/6") + TCL_EvalStr("exec rsync -avz "+RPI_MacrosPath+"serverWP.py "+username+"@"+adress+":.scilab/ >logs.txt"); + disp("Step 5/6") + TCL_EvalStr("exec ssh "+username+"@"+adress+" sudo python /home/"+username+"/.scilab/serverWP.py &"); + disp("Step 6/6") + TCL_EvalStr(["file delete logs.txt";"file delete &1"]); + endfunction +elseif getos()=='Windows' then + tempPath=get_absolute_file_path("raspi.sci"); + RPI_MacrosPath=strsubst(tempPath,'\','/'); + RPI_MacrosPath=part(RPI_MacrosPath,1:(length(RPI_MacrosPath)-7)); + RPI_MacrosPath=RPI_MacrosPath+'src/python/'; + function raspi(adress,username) + // Function to initiate the connection to the raspberry pi + // + // Calling Sequence + // raspi(adress,username) + // + // Parameters + // address : Network address of the raspberry pi. Eg:10.42.0.82 + // username: username on the raspberry pi. + // + // Description + // This program initiates the connection to the raspberry pi at the given address by running the python server script on port 9077 on the pi. + // + // Examples + // raspi('169.254.191.116','pi') + // See also + // raspi_close + // + // Authors + // Jorawar Singh + + global RPI_piAdress; + RPI_piAdress=adress; + + disp("Step 1/3") + TCL_EvalStr("exec mintty ssh "+username+"@"+adress+" mkdir .scilab"); + disp("Step 2/3") + TCL_EvalStr("exec mintty scp "+RPI_MacrosPath+"serverWP.py "+username+"@"+adress+":/home/"+username+"/.scilab/"); + disp("Step 3/3 (Wait ~15 seconds)") + TCL_EvalStr("exec mintty ssh "+username+"@"+adress+" sudo python /home/"+username+"/.scilab/serverWP.py &"); + sleep(15000) + TCL_EvalStr("exec taskkill /IM mintty.exe"); + endfunction +end diff --git a/macros/SymbolTable/ST_AnalyzeScope.sci b/macros/SymbolTable/ST_AnalyzeScope.sci index 8389c09a..c9e7fa0c 100644 --- a/macros/SymbolTable/ST_AnalyzeScope.sci +++ b/macros/SymbolTable/ST_AnalyzeScope.sci @@ -1,124 +1,124 @@ -function OutArg = ST_AnalyzeScope(OldOutArg,NOutArg,FileInfo,SharedInfo); -// function OutArg = ST_AnalyzeScope(OldOutArg,NOutArg,FileInfo,SharedInfo); -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),4,4); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -nxtscifunname = SharedInfo.NextSCIFunName; -nxtscifunnumber = SharedInfo.NextSCIFunNumber; -ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; - -// #RNU_RES_B -PrintStringInfo(' ',ReportFileName,'file','y'); -PrintStringInfo('***Getting output arguments info from the symbol table***',ReportFileName,'file','y'); -// #RNU_RES_E - -OutArg = OldOutArg; -GlobalVarsFileName = FileInfo.GlobalVarFileName; -LocalVarsFileName = FileInfo.Funct(nxtscifunnumber).LocalVarFileName; -TempVarsFileName = FileInfo.Funct(nxtscifunnumber).TempVarFileName; -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -// #RNU_RES_B -// ------------------------------------------------------------------ -// --- Check if the out variables already exist in symbol tables. --- -// ------------------------------------------------------------------ -// #RNU_RES_E -for cntout = 1:NOutArg - - // #RNU_RES_B - PrintStringInfo(' Symbol ""'+OutArg(cntout).Name+'""',ReportFileName,'file','y'); - // #RNU_RES_E - TBName = OutArg(cntout).Name; - - // #RNU_RES_B - // --- Check in temporary symbol table. --- - // #RNU_RES_E - SymbolTableFileName = TempVarsFileName; - [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... - ST_Get(TBName,SymbolTableFileName); - if (TBFlagfound == 0) - // #RNU_RES_B - PrintStringInfo(' ...not found in: '+SymbolTableFileName+'.',ReportFileName,'file','y'); - // #RNU_RES_E - else - error(9999, 'Found a temp symbol in '+SymbolTableFileName+... - ' with the same name of the equal output argument ""'+TBName+'"".'); - end - - // #RNU_RES_B - // --- Check in local symbol table. --- - // #RNU_RES_E - SymbolTableFileName = LocalVarsFileName; - [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... - ST_Get(TBName,SymbolTableFileName); - if (TBFlagfound == 0) - // #RNU_RES_B - PrintStringInfo(' ...not found in: '+SymbolTableFileName+'.',ReportFileName,'file','y'); - // #RNU_RES_E - else - // #RNU_RES_B - PrintStringInfo(' ...found in: '+SymbolTableFileName+'.',ReportFileName,'file','y'); - // #RNU_RES_E - OutArg(cntout).Scope = 'Local'; - end - // #RNU_RES_B - // --- Check in global symbol table. --- - // #RNU_RES_E - if (TBFlagfound == 0) - // Local wins over global. - SymbolTableFileName = GlobalVarsFileName; - [TBFlagfound2,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... - ST_Get(TBName,SymbolTableFileName); - if (TBFlagfound2 == 0) - // #RNU_RES_B - PrintStringInfo(' ...not found in: '+SymbolTableFileName+'.',ReportFileName,'file','y'); - // #RNU_RES_E - if SCI2Cstrncmps1size(SharedInfo.ASTReader.TempVarsName,OutArg(cntout).Name) - OutArg(cntout).Scope = 'Temp'; - else - OutArg(cntout).Scope = 'Local'; - end - else - // #RNU_RES_B - PrintStringInfo(' ...found in: '+SymbolTableFileName+'.',ReportFileName,'file','y'); - // #RNU_RES_E - OutArg(cntout).Scope = 'Global'; - end - end - - // #RNU_RES_B - PrintStringInfo(' Type: '+OutArg(cntout).Type,ReportFileName,'file','y'); - PrintStringInfo(' Size(1): '+string(OutArg(cntout).Size(1)),ReportFileName,'file','y'); - PrintStringInfo(' Size(2): '+string(OutArg(cntout).Size(2)),ReportFileName,'file','y'); - PrintStringInfo(' Value: '+string(OutArg(cntout).Value),ReportFileName,'file','y'); - PrintStringInfo(' FindLike: '+string(OutArg(cntout).FindLike),ReportFileName,'file','y'); - PrintStringInfo(' Dimension: '+string(OutArg(cntout).Dimension),ReportFileName,'file','y'); - PrintStringInfo(' Scope: '+string(OutArg(cntout).Scope),ReportFileName,'file','y'); - PrintStringInfo(' ',ReportFileName,'file','y'); - // #RNU_RES_E -end - -endfunction +function OutArg = ST_AnalyzeScope(OldOutArg,NOutArg,FileInfo,SharedInfo); +// function OutArg = ST_AnalyzeScope(OldOutArg,NOutArg,FileInfo,SharedInfo); +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),4,4); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +nxtscifunname = SharedInfo.NextSCIFunName; +nxtscifunnumber = SharedInfo.NextSCIFunNumber; +ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; + +// #RNU_RES_B +PrintStringInfo(' ',ReportFileName,'file','y'); +PrintStringInfo('***Getting output arguments info from the symbol table***',ReportFileName,'file','y'); +// #RNU_RES_E + +OutArg = OldOutArg; +GlobalVarsFileName = FileInfo.GlobalVarFileName; +LocalVarsFileName = FileInfo.Funct(nxtscifunnumber).LocalVarFileName; +TempVarsFileName = FileInfo.Funct(nxtscifunnumber).TempVarFileName; +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +// #RNU_RES_B +// ------------------------------------------------------------------ +// --- Check if the out variables already exist in symbol tables. --- +// ------------------------------------------------------------------ +// #RNU_RES_E +for cntout = 1:NOutArg + + // #RNU_RES_B + PrintStringInfo(' Symbol ""'+OutArg(cntout).Name+'""',ReportFileName,'file','y'); + // #RNU_RES_E + TBName = OutArg(cntout).Name; + + // #RNU_RES_B + // --- Check in temporary symbol table. --- + // #RNU_RES_E + SymbolTableFileName = TempVarsFileName; + [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... + ST_Get(TBName,SymbolTableFileName); + if (TBFlagfound == 0) + // #RNU_RES_B + PrintStringInfo(' ...not found in: '+SymbolTableFileName+'.',ReportFileName,'file','y'); + // #RNU_RES_E + else + error(9999, 'Found a temp symbol in '+SymbolTableFileName+... + ' with the same name of the equal output argument ""'+TBName+'"".'); + end + + // #RNU_RES_B + // --- Check in local symbol table. --- + // #RNU_RES_E + SymbolTableFileName = LocalVarsFileName; + [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... + ST_Get(TBName,SymbolTableFileName); + if (TBFlagfound == 0) + // #RNU_RES_B + PrintStringInfo(' ...not found in: '+SymbolTableFileName+'.',ReportFileName,'file','y'); + // #RNU_RES_E + else + // #RNU_RES_B + PrintStringInfo(' ...found in: '+SymbolTableFileName+'.',ReportFileName,'file','y'); + // #RNU_RES_E + OutArg(cntout).Scope = 'Local'; + end + // #RNU_RES_B + // --- Check in global symbol table. --- + // #RNU_RES_E + if (TBFlagfound == 0) + // Local wins over global. + SymbolTableFileName = GlobalVarsFileName; + [TBFlagfound2,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... + ST_Get(TBName,SymbolTableFileName); + if (TBFlagfound2 == 0) + // #RNU_RES_B + PrintStringInfo(' ...not found in: '+SymbolTableFileName+'.',ReportFileName,'file','y'); + // #RNU_RES_E + if SCI2Cstrncmps1size(SharedInfo.ASTReader.TempVarsName,OutArg(cntout).Name) + OutArg(cntout).Scope = 'Temp'; + else + OutArg(cntout).Scope = 'Local'; + end + else + // #RNU_RES_B + PrintStringInfo(' ...found in: '+SymbolTableFileName+'.',ReportFileName,'file','y'); + // #RNU_RES_E + OutArg(cntout).Scope = 'Global'; + end + end + + // #RNU_RES_B + PrintStringInfo(' Type: '+OutArg(cntout).Type,ReportFileName,'file','y'); + PrintStringInfo(' Size(1): '+string(OutArg(cntout).Size(1)),ReportFileName,'file','y'); + PrintStringInfo(' Size(2): '+string(OutArg(cntout).Size(2)),ReportFileName,'file','y'); + PrintStringInfo(' Value: '+string(OutArg(cntout).Value),ReportFileName,'file','y'); + PrintStringInfo(' FindLike: '+string(OutArg(cntout).FindLike),ReportFileName,'file','y'); + PrintStringInfo(' Dimension: '+string(OutArg(cntout).Dimension),ReportFileName,'file','y'); + PrintStringInfo(' Scope: '+string(OutArg(cntout).Scope),ReportFileName,'file','y'); + PrintStringInfo(' ',ReportFileName,'file','y'); + // #RNU_RES_E +end + +endfunction diff --git a/macros/SymbolTable/ST_Del.sci b/macros/SymbolTable/ST_Del.sci index 7eda874d..c61f49af 100644 --- a/macros/SymbolTable/ST_Del.sci +++ b/macros/SymbolTable/ST_Del.sci @@ -1,41 +1,41 @@ -function ST_Del(TBName,SymbolTableFileName) -// function ST_Del(TBName,SymbolTableFileName) -// ----------------------------------------------------------------- -// Delete function for the symbol table. -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// --- Load symbol table. --- -SCI2CSymbolTable = ST_Load(SymbolTableFileName); - -// --- Find symbol position. --- -[TBFlagfound,TBPosition] = ST_FindPos(TBName,SymbolTableFileName); - -if (TBFlagfound == 0) - error(9999, 'Missing symbol: trying to del a non existing symbol ""'+TBName+'"".'); -elseif (TBFlagfound == 1) - // --- Update symbol table. --- - SCI2CSymbolTable(TBPosition) = []; - - // --- Save symbol table. --- - ST_Save(SymbolTableFileName,SCI2CSymbolTable); -end - -endfunction +function ST_Del(TBName,SymbolTableFileName) +// function ST_Del(TBName,SymbolTableFileName) +// ----------------------------------------------------------------- +// Delete function for the symbol table. +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// --- Load symbol table. --- +SCI2CSymbolTable = ST_Load(SymbolTableFileName); + +// --- Find symbol position. --- +[TBFlagfound,TBPosition] = ST_FindPos(TBName,SymbolTableFileName); + +if (TBFlagfound == 0) + error(9999, 'Missing symbol: trying to del a non existing symbol ""'+TBName+'"".'); +elseif (TBFlagfound == 1) + // --- Update symbol table. --- + SCI2CSymbolTable(TBPosition) = []; + + // --- Save symbol table. --- + ST_Save(SymbolTableFileName,SCI2CSymbolTable); +end + +endfunction diff --git a/macros/SymbolTable/ST_FindPos.sci b/macros/SymbolTable/ST_FindPos.sci index 737b7de4..2bb94b9e 100644 --- a/macros/SymbolTable/ST_FindPos.sci +++ b/macros/SymbolTable/ST_FindPos.sci @@ -1,46 +1,46 @@ -function [TBFlagfound,TBPosition] = ST_FindPos(TBName,SymbolTableFileName) -// function [TBFlagfound,TBPosition] = ST_FindPos(TBName,SymbolTableFileName) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Finds position of symbol TBName in the symbol table. -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// #RNU_RES_E -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// --- Load symbol table. --- -SCI2CSymbolTable = ST_Load(SymbolTableFileName); - -// --- Find position of the line to be removed. --- -TBFlagfound = 0; -TBPosition = 0; -NEntries = max(size(SCI2CSymbolTable)); -for countertable = 1:NEntries - if (mtlb_strcmp(TBName,SCI2CSymbolTable(countertable).Name)) - TBFlagfound = TBFlagfound + 1; - TBPosition = countertable; - end -end - -if (TBFlagfound > 1) - error(9999, 'Symbol table conflict: found two symbols with the same name ""'+TBName+'"".'); -end - -endfunction +function [TBFlagfound,TBPosition] = ST_FindPos(TBName,SymbolTableFileName) +// function [TBFlagfound,TBPosition] = ST_FindPos(TBName,SymbolTableFileName) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Finds position of symbol TBName in the symbol table. +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// #RNU_RES_E +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// --- Load symbol table. --- +SCI2CSymbolTable = ST_Load(SymbolTableFileName); + +// --- Find position of the line to be removed. --- +TBFlagfound = 0; +TBPosition = 0; +NEntries = max(size(SCI2CSymbolTable)); +for countertable = 1:NEntries + if (mtlb_strcmp(TBName,SCI2CSymbolTable(countertable).Name)) + TBFlagfound = TBFlagfound + 1; + TBPosition = countertable; + end +end + +if (TBFlagfound > 1) + error(9999, 'Symbol table conflict: found two symbols with the same name ""'+TBName+'"".'); +end + +endfunction diff --git a/macros/SymbolTable/ST_Get.sci b/macros/SymbolTable/ST_Get.sci index 636a873a..3482dafc 100644 --- a/macros/SymbolTable/ST_Get.sci +++ b/macros/SymbolTable/ST_Get.sci @@ -1,64 +1,64 @@ -function [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... - ST_Get(Field_Name,SymbolTableFileName) -// function [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... -// ST_Get(Field_Name,SymbolTableFileName) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Get function for the symbol table. -// -// #RNU_RES_E -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// -------------------------- -// --- Load Symbol Table. --- -// -------------------------- -[tmpnams,tmptyps,tmpdims,tmpvols]=listvarinfile(SymbolTableFileName); -if (max(size(tmpnams)) > 1) - error(9999, 'More than one variable found in ""'+SymbolTableFileName+'"".'); -end -load(SymbolTableFileName,tmpnams); -SCI2CSymbolTable = eval(tmpnams); -// ------------------------------ -// --- End Load Symbol Table. --- -// ------------------------------ - -TBFlagfound = 0; -TBType = ''; -TBSize(1) = ''; -TBSize(2) = ''; -TBValue = %nan; -TBFindLike = %nan; -TBDimension = %nan; -NEntries = max(size(SCI2CSymbolTable)); -for countertable = 1:NEntries - if (mtlb_strcmp(Field_Name,SCI2CSymbolTable(countertable).Name)) - TBFlagfound = TBFlagfound + 1; - TBType = SCI2CSymbolTable(countertable).Type; // String - TBSize = SCI2CSymbolTable(countertable).Size; // String - TBValue = SCI2CSymbolTable(countertable).Value; - TBFindLike = SCI2CSymbolTable(countertable).FindLike; // Number: 0 or 1. - TBDimension = SCI2CSymbolTable(countertable).Dimension; // Number: 0 or 1 or 2. - end -end - -if (TBFlagfound > 1) - error(9999, 'Symbol table conflict: found two symbols with the same name ""'+TBName+'"".'); -end -endfunction +function [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... + ST_Get(Field_Name,SymbolTableFileName) +// function [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... +// ST_Get(Field_Name,SymbolTableFileName) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Get function for the symbol table. +// +// #RNU_RES_E +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// -------------------------- +// --- Load Symbol Table. --- +// -------------------------- +[tmpnams,tmptyps,tmpdims,tmpvols]=listvarinfile(SymbolTableFileName); +if (max(size(tmpnams)) > 1) + error(9999, 'More than one variable found in ""'+SymbolTableFileName+'"".'); +end +load(SymbolTableFileName,tmpnams); +SCI2CSymbolTable = eval(tmpnams); +// ------------------------------ +// --- End Load Symbol Table. --- +// ------------------------------ + +TBFlagfound = 0; +TBType = ''; +TBSize(1) = ''; +TBSize(2) = ''; +TBValue = %nan; +TBFindLike = %nan; +TBDimension = %nan; +NEntries = max(size(SCI2CSymbolTable)); +for countertable = 1:NEntries + if (mtlb_strcmp(Field_Name,SCI2CSymbolTable(countertable).Name)) + TBFlagfound = TBFlagfound + 1; + TBType = SCI2CSymbolTable(countertable).Type; // String + TBSize = SCI2CSymbolTable(countertable).Size; // String + TBValue = SCI2CSymbolTable(countertable).Value; + TBFindLike = SCI2CSymbolTable(countertable).FindLike; // Number: 0 or 1. + TBDimension = SCI2CSymbolTable(countertable).Dimension; // Number: 0 or 1 or 2. + end +end + +if (TBFlagfound > 1) + error(9999, 'Symbol table conflict: found two symbols with the same name ""'+TBName+'"".'); +end +endfunction diff --git a/macros/SymbolTable/ST_GetInArgInfo.sci b/macros/SymbolTable/ST_GetInArgInfo.sci index 69885dda..ddefe1e4 100644 --- a/macros/SymbolTable/ST_GetInArgInfo.sci +++ b/macros/SymbolTable/ST_GetInArgInfo.sci @@ -1,220 +1,220 @@ -function [UpdatedInArg,SharedInfo] = ST_GetInArgInfo(InArg,NInArg,FileInfo,SharedInfo,ASTFunName) -// function UpdatedInArg = ST_GetInArgInfo(InArg,NInArg,FileInfo,SharedInfo) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Generate all the info concerning the input arguments. -// -// Input data: -// InArg: InArg structure containing only the names of the input -// arguments. -// //NUT: add description here -// -// Output data: -// UpdatedInArg: InArg structure with all the info on the input -// arguments. -// FileInfoDatFile: name of the .dat file containing the FileInfo -// structure. -// #RNU_RES_E -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),5,5); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -nxtscifunname = SharedInfo.NextSCIFunName; -nxtscifunnumber = SharedInfo.NextSCIFunNumber; -ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; - -// #RNU_RES_B -PrintStringInfo(' ',ReportFileName,'file','y'); -PrintStringInfo('***Analyzing Input Arguments***',ReportFileName,'file','y'); -// #RNU_RES_E - -UpdatedInArg = InArg; -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -for cntinarg = 1:NInArg - tmpname = InArg(cntinarg).Name; - tmpscope = InArg(cntinarg).Scope; - lengthNumber = length('Number_'); - if (part(tmpscope,1:lengthNumber) == 'Number_') - // #RNU_RES_B - PrintStringInfo('Input Argument '+string(cntinarg)+' is a number: '+tmpname+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - // #RNU_RES_E - UpdatedInArg(cntinarg).Type = part(tmpscope,lengthNumber+1:lengthNumber+1); - if (UpdatedInArg(cntinarg).Type == 'x') - UpdatedInArg(cntinarg).Type = SharedInfo.DefaultPrecision; // It is the default - elseif (UpdatedInArg(cntinarg).Type == 'X') - if (SharedInfo.DefaultPrecision == 's') - UpdatedInArg(cntinarg).Type = 'c'; // It is the default. - elseif (SharedInfo.DefaultPrecision == 'd') - UpdatedInArg(cntinarg).Type = 'z'; // It is the default. - else - error(9999, 'Unexpected value for SharedInfo.DefaultPrecision: ""'+SharedInfo.DefaultPrecision+'""'); - end - end - if (tmpname == '%pi') - UpdatedInArg(cntinarg).Name = 'SCI2C_PI'; - numvalue = %pi; - elseif (tmpname == '%e') - UpdatedInArg(cntinarg).Name = 'SCI2C_E'; - numvalue = %e; - elseif (tmpname == '%T' | tmpname == '%t') - UpdatedInArg(cntinarg).Name = 'SCI2C_T'; - numvalue = 1; - elseif (tmpname == '%F' | tmpname == '%f') - UpdatedInArg(cntinarg).Name = 'SCI2C_F'; - numvalue = 0; - elseif (tmpname == '%nan') - UpdatedInArg(cntinarg).Name = 'SCI2C_NAN'; - numvalue = %nan; - elseif (tmpname == '%inf') - UpdatedInArg(cntinarg).Name = 'SCI2C_INF'; - numvalue = %nan; // Otherwise it will put in the C code Inf value. - elseif (tmpname == '%i') - // #RNU_RES_B - //NUT: Other complex numbers are always - //NUT: stored in variables, and don't appear as immediate numbers. - // #RNU_RES_E - UpdatedInArg(cntinarg).Name = 'SCI2C_IMG_'+convstr(UpdatedInArg(cntinarg).Type,'u'); - numvalue = %i; - else - numvalue = eval(tmpname); - //UpdatedInArg(cntinarg).Type = 'd'; // it is the default. - end - - UpdatedInArg(cntinarg).Size(1) = '1'; - UpdatedInArg(cntinarg).Size(2) = '1'; - UpdatedInArg(cntinarg).Value = numvalue; - UpdatedInArg(cntinarg).FindLike = 0; - UpdatedInArg(cntinarg).Dimension = 0; - UpdatedInArg(cntinarg).Scope = 'Number'; - if((ASTFunName == 'cmd_analog_in' | ASTFunName == 'cmd_analog_in_volt' ) & cntinarg == 2) - numvalue = eval(tmpname); - if (SharedInfo.Board_name == 'mega' | SharedInfo.Board_name == 'mega2560') then - tmpname = string(numvalue + 54) - UpdatedInArg(cntinarg).Value = 54 + numvalue; - else - tmpname = string(numvalue + 14) - UpdatedInArg(cntinarg).Value = 14 + numvalue; - end - UpdatedInArg(cntinarg).Name = tmpname; // Change the name. - end - - elseif (tmpscope == 'String') - // #RNU_RES_B - PrintStringInfo('Input Argument '+string(cntinarg)+' is a string: '+tmpname+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - // #RNU_RES_E - SharedInfo.ASTReader.UsedTempVars = SharedInfo.ASTReader.UsedTempVars + 1; - TmpOutArgName = strcat([SharedInfo.ASTReader.TempVarsName,string(SharedInfo.ASTReader.UsedTempVars)]); - - UpdatedInArg(cntinarg).Name = TmpOutArgName; // Change the name. - UpdatedInArg(cntinarg).Type = 'g'; // it is the default. - UpdatedInArg(cntinarg).Size(1) = '1'; - UpdatedInArg(cntinarg).Size(2) = string(length(tmpname)+1); //+1 = (\0) - UpdatedInArg(cntinarg).Value = '""'+tmpname+'""'; - UpdatedInArg(cntinarg).FindLike = 0; - UpdatedInArg(cntinarg).Dimension = 2; //Keep it zero to avoid extra argument 'funcnameSize'. - UpdatedInArg(cntinarg).Scope = 'Temp'; - - // #RNU_RES_B - // Add the new symbol in the symbol table. - // #RNU_RES_E - ST_InsOutArg(UpdatedInArg(cntinarg),1,FileInfo,SharedInfo,'all'); - - elseif (tmpscope == 'Variable' | tmpscope == 'Global' | tmpscope == 'Local' | tmpscope == 'Temp') - // #RNU_RES_B - //NUT: nelle future versioni qui si puo' fare una utile differenziazione per rendere piu' intelligente il tutto. - PrintStringInfo('Input Argument '+string(cntinarg)+' is a symbol: '+tmpname+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - // #RNU_RES_E - [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension,TBScope] = ST_GetSymbolInfo(tmpname,FileInfo,SharedInfo); - - if (TBFlagfound == 0) - if(ASTFunName == 'ode') - if((NInArg == 4 & cntinarg == 4) | (NInArg == 6 & cntinarg == 6)) - //incase of 4 arguments, fourth argument is function name - UpdatedInArg(cntinarg).Name = tmpname; // Change the name. - UpdatedInArg(cntinarg).Type = 'fn'; //it is a function name - UpdatedInArg(cntinarg).Size(1) = '1'; - UpdatedInArg(cntinarg).Size(2) = '1'; //+1 = (\0) - UpdatedInArg(cntinarg).Value = '&'+tmpname; - UpdatedInArg(cntinarg).FindLike = 0; - UpdatedInArg(cntinarg).Dimension = 0; //NUT: in future releases you can set this field to 1. - UpdatedInArg(cntinarg).Scope = 'Temp'; - ST_InsOutArg(UpdatedInArg(cntinarg),1,FileInfo,SharedInfo,'all'); - elseif (NInArg == 5 & cntinarg == 5) then - //incase of 5 arguments, fifth argument is function name - UpdatedInArg(cntinarg).Name = tmpname; // Change the name. - UpdatedInArg(cntinarg).Type = 'fn'; //it is a function name - UpdatedInArg(cntinarg).Size(1) = '1'; - UpdatedInArg(cntinarg).Size(2) = '1'; //+1 = (\0) - UpdatedInArg(cntinarg).Value = '&'+tmpname; - UpdatedInArg(cntinarg).FindLike = 0; - UpdatedInArg(cntinarg).Dimension = 0; //NUT: in future releases you can set this field to 1. - UpdatedInArg(cntinarg).Scope = 'Temp'; - ST_InsOutArg(UpdatedInArg(cntinarg),1,FileInfo,SharedInfo,'all'); - end - elseif (ASTFunName == 'RPI_ThreadCreate') - UpdatedInArg(cntinarg).Name = tmpname; // Change the name. - UpdatedInArg(cntinarg).Type = 'fn'; //it is a function name - UpdatedInArg(cntinarg).Size(1) = '1'; - UpdatedInArg(cntinarg).Size(2) = '1'; //+1 = (\0) - UpdatedInArg(cntinarg).Value = '&'+tmpname; - UpdatedInArg(cntinarg).FindLike = 0; - UpdatedInArg(cntinarg).Dimension = 0; //NUT: in future releases you can set this field to 1. - UpdatedInArg(cntinarg).Scope = 'Temp'; - ST_InsOutArg(UpdatedInArg(cntinarg),1,FileInfo,SharedInfo,'all'); - elseif (ASTFunName == 'RPI_PinISR') - UpdatedInArg(cntinarg).Name = tmpname; // Change the name. - UpdatedInArg(cntinarg).Type = 'fn'; //it is a function name - UpdatedInArg(cntinarg).Size(1) = '1'; - UpdatedInArg(cntinarg).Size(2) = '1'; //+1 = (\0) - UpdatedInArg(cntinarg).Value = '&'+tmpname; - UpdatedInArg(cntinarg).FindLike = 0; - UpdatedInArg(cntinarg).Dimension = 0; //NUT: in future releases you can set this field to 1. - UpdatedInArg(cntinarg).Scope = 'Temp'; - ST_InsOutArg(UpdatedInArg(cntinarg),1,FileInfo,SharedInfo,'all'); - else - PrintStringInfo(' ',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Unknown symbol ""'+tmpname+'"".',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Be sure to initialize every symbol you are using.',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Before running the SCI2C translator, remember to run the code you are trying',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: to translate in order to check syntax errors.',ReportFileName,'both','y'); - PrintStringInfo(' ',ReportFileName,'both','y'); - error(9999, 'SCI2CERROR: Unknown symbol ""'+tmpname+'"".'); - end - else - UpdatedInArg(cntinarg).Type = TBType; - UpdatedInArg(cntinarg).Size = TBSize; - UpdatedInArg(cntinarg).Value = TBValue; - UpdatedInArg(cntinarg).FindLike = TBFindLike; - UpdatedInArg(cntinarg).Dimension = TBDimension; - UpdatedInArg(cntinarg).Scope = TBScope; - end - else - error(9999, 'Unknown scope identifier ""'+tmpscope+'"" for variable ""'+tmpname+'"".'); - end - // #RNU_RES_B - PrintStringInfo(' Type: '+UpdatedInArg(cntinarg).Type,FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - PrintStringInfo(' Size(1): '+string(UpdatedInArg(cntinarg).Size(1)),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - PrintStringInfo(' Size(2): '+string(UpdatedInArg(cntinarg).Size(2)),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - //PrintStringInfo(' Value: '+string(UpdatedInArg(cntinarg).Value),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - PrintStringInfo(' FindLike: '+string(UpdatedInArg(cntinarg).FindLike),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - PrintStringInfo(' Dimension: '+string(UpdatedInArg(cntinarg).Dimension),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - PrintStringInfo(' Scope: '+UpdatedInArg(cntinarg).Scope,FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - // #RNU_RES_E -end - -endfunction +function [UpdatedInArg,SharedInfo] = ST_GetInArgInfo(InArg,NInArg,FileInfo,SharedInfo,ASTFunName) +// function UpdatedInArg = ST_GetInArgInfo(InArg,NInArg,FileInfo,SharedInfo) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Generate all the info concerning the input arguments. +// +// Input data: +// InArg: InArg structure containing only the names of the input +// arguments. +// //NUT: add description here +// +// Output data: +// UpdatedInArg: InArg structure with all the info on the input +// arguments. +// FileInfoDatFile: name of the .dat file containing the FileInfo +// structure. +// #RNU_RES_E +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),5,5); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +nxtscifunname = SharedInfo.NextSCIFunName; +nxtscifunnumber = SharedInfo.NextSCIFunNumber; +ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; + +// #RNU_RES_B +PrintStringInfo(' ',ReportFileName,'file','y'); +PrintStringInfo('***Analyzing Input Arguments***',ReportFileName,'file','y'); +// #RNU_RES_E + +UpdatedInArg = InArg; +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +for cntinarg = 1:NInArg + tmpname = InArg(cntinarg).Name; + tmpscope = InArg(cntinarg).Scope; + lengthNumber = length('Number_'); + if (part(tmpscope,1:lengthNumber) == 'Number_') + // #RNU_RES_B + PrintStringInfo('Input Argument '+string(cntinarg)+' is a number: '+tmpname+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + // #RNU_RES_E + UpdatedInArg(cntinarg).Type = part(tmpscope,lengthNumber+1:lengthNumber+1); + if (UpdatedInArg(cntinarg).Type == 'x') + UpdatedInArg(cntinarg).Type = SharedInfo.DefaultPrecision; // It is the default + elseif (UpdatedInArg(cntinarg).Type == 'X') + if (SharedInfo.DefaultPrecision == 's') + UpdatedInArg(cntinarg).Type = 'c'; // It is the default. + elseif (SharedInfo.DefaultPrecision == 'd') + UpdatedInArg(cntinarg).Type = 'z'; // It is the default. + else + error(9999, 'Unexpected value for SharedInfo.DefaultPrecision: ""'+SharedInfo.DefaultPrecision+'""'); + end + end + if (tmpname == '%pi') + UpdatedInArg(cntinarg).Name = 'SCI2C_PI'; + numvalue = %pi; + elseif (tmpname == '%e') + UpdatedInArg(cntinarg).Name = 'SCI2C_E'; + numvalue = %e; + elseif (tmpname == '%T' | tmpname == '%t') + UpdatedInArg(cntinarg).Name = 'SCI2C_T'; + numvalue = 1; + elseif (tmpname == '%F' | tmpname == '%f') + UpdatedInArg(cntinarg).Name = 'SCI2C_F'; + numvalue = 0; + elseif (tmpname == '%nan') + UpdatedInArg(cntinarg).Name = 'SCI2C_NAN'; + numvalue = %nan; + elseif (tmpname == '%inf') + UpdatedInArg(cntinarg).Name = 'SCI2C_INF'; + numvalue = %nan; // Otherwise it will put in the C code Inf value. + elseif (tmpname == '%i') + // #RNU_RES_B + //NUT: Other complex numbers are always + //NUT: stored in variables, and don't appear as immediate numbers. + // #RNU_RES_E + UpdatedInArg(cntinarg).Name = 'SCI2C_IMG_'+convstr(UpdatedInArg(cntinarg).Type,'u'); + numvalue = %i; + else + numvalue = eval(tmpname); + //UpdatedInArg(cntinarg).Type = 'd'; // it is the default. + end + + UpdatedInArg(cntinarg).Size(1) = '1'; + UpdatedInArg(cntinarg).Size(2) = '1'; + UpdatedInArg(cntinarg).Value = numvalue; + UpdatedInArg(cntinarg).FindLike = 0; + UpdatedInArg(cntinarg).Dimension = 0; + UpdatedInArg(cntinarg).Scope = 'Number'; + if((ASTFunName == 'cmd_analog_in' | ASTFunName == 'cmd_analog_in_volt' ) & cntinarg == 2) + numvalue = eval(tmpname); + if (SharedInfo.Board_name == 'mega' | SharedInfo.Board_name == 'mega2560') then + tmpname = string(numvalue + 54) + UpdatedInArg(cntinarg).Value = 54 + numvalue; + else + tmpname = string(numvalue + 14) + UpdatedInArg(cntinarg).Value = 14 + numvalue; + end + UpdatedInArg(cntinarg).Name = tmpname; // Change the name. + end + + elseif (tmpscope == 'String') + // #RNU_RES_B + PrintStringInfo('Input Argument '+string(cntinarg)+' is a string: '+tmpname+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + // #RNU_RES_E + SharedInfo.ASTReader.UsedTempVars = SharedInfo.ASTReader.UsedTempVars + 1; + TmpOutArgName = strcat([SharedInfo.ASTReader.TempVarsName,string(SharedInfo.ASTReader.UsedTempVars)]); + + UpdatedInArg(cntinarg).Name = TmpOutArgName; // Change the name. + UpdatedInArg(cntinarg).Type = 'g'; // it is the default. + UpdatedInArg(cntinarg).Size(1) = '1'; + UpdatedInArg(cntinarg).Size(2) = string(length(tmpname)+1); //+1 = (\0) + UpdatedInArg(cntinarg).Value = '""'+tmpname+'""'; + UpdatedInArg(cntinarg).FindLike = 0; + UpdatedInArg(cntinarg).Dimension = 2; //Keep it zero to avoid extra argument 'funcnameSize'. + UpdatedInArg(cntinarg).Scope = 'Temp'; + + // #RNU_RES_B + // Add the new symbol in the symbol table. + // #RNU_RES_E + ST_InsOutArg(UpdatedInArg(cntinarg),1,FileInfo,SharedInfo,'all'); + + elseif (tmpscope == 'Variable' | tmpscope == 'Global' | tmpscope == 'Local' | tmpscope == 'Temp') + // #RNU_RES_B + //NUT: nelle future versioni qui si puo' fare una utile differenziazione per rendere piu' intelligente il tutto. + PrintStringInfo('Input Argument '+string(cntinarg)+' is a symbol: '+tmpname+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + // #RNU_RES_E + [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension,TBScope] = ST_GetSymbolInfo(tmpname,FileInfo,SharedInfo); + + if (TBFlagfound == 0) + if(ASTFunName == 'ode') + if((NInArg == 4 & cntinarg == 4) | (NInArg == 6 & cntinarg == 6)) + //incase of 4 arguments, fourth argument is function name + UpdatedInArg(cntinarg).Name = tmpname; // Change the name. + UpdatedInArg(cntinarg).Type = 'fn'; //it is a function name + UpdatedInArg(cntinarg).Size(1) = '1'; + UpdatedInArg(cntinarg).Size(2) = '1'; //+1 = (\0) + UpdatedInArg(cntinarg).Value = '&'+tmpname; + UpdatedInArg(cntinarg).FindLike = 0; + UpdatedInArg(cntinarg).Dimension = 0; //NUT: in future releases you can set this field to 1. + UpdatedInArg(cntinarg).Scope = 'Temp'; + ST_InsOutArg(UpdatedInArg(cntinarg),1,FileInfo,SharedInfo,'all'); + elseif (NInArg == 5 & cntinarg == 5) then + //incase of 5 arguments, fifth argument is function name + UpdatedInArg(cntinarg).Name = tmpname; // Change the name. + UpdatedInArg(cntinarg).Type = 'fn'; //it is a function name + UpdatedInArg(cntinarg).Size(1) = '1'; + UpdatedInArg(cntinarg).Size(2) = '1'; //+1 = (\0) + UpdatedInArg(cntinarg).Value = '&'+tmpname; + UpdatedInArg(cntinarg).FindLike = 0; + UpdatedInArg(cntinarg).Dimension = 0; //NUT: in future releases you can set this field to 1. + UpdatedInArg(cntinarg).Scope = 'Temp'; + ST_InsOutArg(UpdatedInArg(cntinarg),1,FileInfo,SharedInfo,'all'); + end + elseif (ASTFunName == 'RPI_ThreadCreate') + UpdatedInArg(cntinarg).Name = tmpname; // Change the name. + UpdatedInArg(cntinarg).Type = 'fn'; //it is a function name + UpdatedInArg(cntinarg).Size(1) = '1'; + UpdatedInArg(cntinarg).Size(2) = '1'; //+1 = (\0) + UpdatedInArg(cntinarg).Value = '&'+tmpname; + UpdatedInArg(cntinarg).FindLike = 0; + UpdatedInArg(cntinarg).Dimension = 0; //NUT: in future releases you can set this field to 1. + UpdatedInArg(cntinarg).Scope = 'Temp'; + ST_InsOutArg(UpdatedInArg(cntinarg),1,FileInfo,SharedInfo,'all'); + elseif (ASTFunName == 'RPI_PinISR') + UpdatedInArg(cntinarg).Name = tmpname; // Change the name. + UpdatedInArg(cntinarg).Type = 'fn'; //it is a function name + UpdatedInArg(cntinarg).Size(1) = '1'; + UpdatedInArg(cntinarg).Size(2) = '1'; //+1 = (\0) + UpdatedInArg(cntinarg).Value = '&'+tmpname; + UpdatedInArg(cntinarg).FindLike = 0; + UpdatedInArg(cntinarg).Dimension = 0; //NUT: in future releases you can set this field to 1. + UpdatedInArg(cntinarg).Scope = 'Temp'; + ST_InsOutArg(UpdatedInArg(cntinarg),1,FileInfo,SharedInfo,'all'); + else + PrintStringInfo(' ',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Unknown symbol ""'+tmpname+'"".',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Be sure to initialize every symbol you are using.',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Before running the SCI2C translator, remember to run the code you are trying',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: to translate in order to check syntax errors.',ReportFileName,'both','y'); + PrintStringInfo(' ',ReportFileName,'both','y'); + error(9999, 'SCI2CERROR: Unknown symbol ""'+tmpname+'"".'); + end + else + UpdatedInArg(cntinarg).Type = TBType; + UpdatedInArg(cntinarg).Size = TBSize; + UpdatedInArg(cntinarg).Value = TBValue; + UpdatedInArg(cntinarg).FindLike = TBFindLike; + UpdatedInArg(cntinarg).Dimension = TBDimension; + UpdatedInArg(cntinarg).Scope = TBScope; + end + else + error(9999, 'Unknown scope identifier ""'+tmpscope+'"" for variable ""'+tmpname+'"".'); + end + // #RNU_RES_B + PrintStringInfo(' Type: '+UpdatedInArg(cntinarg).Type,FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + PrintStringInfo(' Size(1): '+string(UpdatedInArg(cntinarg).Size(1)),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + PrintStringInfo(' Size(2): '+string(UpdatedInArg(cntinarg).Size(2)),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + //PrintStringInfo(' Value: '+string(UpdatedInArg(cntinarg).Value),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + PrintStringInfo(' FindLike: '+string(UpdatedInArg(cntinarg).FindLike),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + PrintStringInfo(' Dimension: '+string(UpdatedInArg(cntinarg).Dimension),FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + PrintStringInfo(' Scope: '+UpdatedInArg(cntinarg).Scope,FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + // #RNU_RES_E +end + +endfunction diff --git a/macros/SymbolTable/ST_GetSymbolInfo.sci b/macros/SymbolTable/ST_GetSymbolInfo.sci index 1fb2f3de..c7fc569d 100644 --- a/macros/SymbolTable/ST_GetSymbolInfo.sci +++ b/macros/SymbolTable/ST_GetSymbolInfo.sci @@ -1,99 +1,99 @@ -function [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension,TBScope] = ST_GetSymbolInfo(TBName,FileInfo,SharedInfo) -// function [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension,TBScope] = ST_GetSymbolInfo(TBName,FileInfo,SharedInfo) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),3,3); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -// --- Extraction of the function name and number. --- -nxtscifunname = SharedInfo.NextSCIFunName; -nxtscifunnumber = SharedInfo.NextSCIFunNumber; - -GlobalVarsFileName = FileInfo.GlobalVarFileName; -LocalVarsFileName = FileInfo.Funct(nxtscifunnumber).LocalVarFileName; -TempVarsFileName = FileInfo.Funct(nxtscifunnumber).TempVarFileName; - -TBFlagfound = 0; -TBType = ''; -TBSize(1) = ''; -TBSize(2) = ''; -TBValue = %nan -TBFindLike = %nan -TBDimension = %nan; -TBScope = ''; -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -// #RNU_RES_B -// ------------------------------------------------ -// --- Search in the temporary variables table. --- -// ------------------------------------------------ -PrintStringInfo('Searching ""'+TBName+'"" in '+FileInfo.Funct(nxtscifunnumber).TempVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); -// #RNU_RES_E -[TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... - ST_Get(TBName,TempVarsFileName); -if (TBFlagfound == 1); - // #RNU_RES_B - PrintStringInfo('...Found in: ""'+FileInfo.Funct(nxtscifunnumber).TempVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - // #RNU_RES_E - TBScope = 'Temp'; -end - -// -------------------------------------------- -// --- Search in the local variables table. --- -// -------------------------------------------- -if (TBFlagfound == 0); - // #RNU_RES_B - PrintStringInfo('Searching ""'+TBName+'"" in '+FileInfo.Funct(nxtscifunnumber).LocalVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - // #RNU_RES_E - [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... - ST_Get(TBName,LocalVarsFileName); - if (TBFlagfound == 1); - // #RNU_RES_B - PrintStringInfo('...Found in: ""'+FileInfo.Funct(nxtscifunnumber).LocalVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - // #RNU_RES_E - TBScope = 'Local'; - end -end - -// #RNU_RES_B -// --------------------------------------------- -// --- Search in the global variables table. --- -// --------------------------------------------- -// #RNU_RES_E -if (TBFlagfound == 0); - // #RNU_RES_B - PrintStringInfo('Searching ""'+TBName+'"" in '+FileInfo.GlobalVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - // #RNU_RES_E - [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... - ST_Get(TBName,GlobalVarsFileName); - if (TBFlagfound == 1); - // #RNU_RES_B - PrintStringInfo('...Found in: ""'+FileInfo.GlobalVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); - // #RNU_RES_E - TBScope = 'Global'; - end -end - -endfunction +function [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension,TBScope] = ST_GetSymbolInfo(TBName,FileInfo,SharedInfo) +// function [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension,TBScope] = ST_GetSymbolInfo(TBName,FileInfo,SharedInfo) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),3,3); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +// --- Extraction of the function name and number. --- +nxtscifunname = SharedInfo.NextSCIFunName; +nxtscifunnumber = SharedInfo.NextSCIFunNumber; + +GlobalVarsFileName = FileInfo.GlobalVarFileName; +LocalVarsFileName = FileInfo.Funct(nxtscifunnumber).LocalVarFileName; +TempVarsFileName = FileInfo.Funct(nxtscifunnumber).TempVarFileName; + +TBFlagfound = 0; +TBType = ''; +TBSize(1) = ''; +TBSize(2) = ''; +TBValue = %nan +TBFindLike = %nan +TBDimension = %nan; +TBScope = ''; +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +// #RNU_RES_B +// ------------------------------------------------ +// --- Search in the temporary variables table. --- +// ------------------------------------------------ +PrintStringInfo('Searching ""'+TBName+'"" in '+FileInfo.Funct(nxtscifunnumber).TempVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); +// #RNU_RES_E +[TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... + ST_Get(TBName,TempVarsFileName); +if (TBFlagfound == 1); + // #RNU_RES_B + PrintStringInfo('...Found in: ""'+FileInfo.Funct(nxtscifunnumber).TempVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + // #RNU_RES_E + TBScope = 'Temp'; +end + +// -------------------------------------------- +// --- Search in the local variables table. --- +// -------------------------------------------- +if (TBFlagfound == 0); + // #RNU_RES_B + PrintStringInfo('Searching ""'+TBName+'"" in '+FileInfo.Funct(nxtscifunnumber).LocalVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + // #RNU_RES_E + [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... + ST_Get(TBName,LocalVarsFileName); + if (TBFlagfound == 1); + // #RNU_RES_B + PrintStringInfo('...Found in: ""'+FileInfo.Funct(nxtscifunnumber).LocalVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + // #RNU_RES_E + TBScope = 'Local'; + end +end + +// #RNU_RES_B +// --------------------------------------------- +// --- Search in the global variables table. --- +// --------------------------------------------- +// #RNU_RES_E +if (TBFlagfound == 0); + // #RNU_RES_B + PrintStringInfo('Searching ""'+TBName+'"" in '+FileInfo.GlobalVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + // #RNU_RES_E + [TBFlagfound,TBType,TBSize,TBValue,TBFindLike,TBDimension] = ... + ST_Get(TBName,GlobalVarsFileName); + if (TBFlagfound == 1); + // #RNU_RES_B + PrintStringInfo('...Found in: ""'+FileInfo.GlobalVarFileName+'.',FileInfo.Funct(nxtscifunnumber).ReportFileName,'file'); + // #RNU_RES_E + TBScope = 'Global'; + end +end + +endfunction diff --git a/macros/SymbolTable/ST_InsForCntVars.sci b/macros/SymbolTable/ST_InsForCntVars.sci index b0e6f356..140c34c8 100644 --- a/macros/SymbolTable/ST_InsForCntVars.sci +++ b/macros/SymbolTable/ST_InsForCntVars.sci @@ -1,191 +1,191 @@ -function [OutArg,SharedInfo] = ST_InsForCntVars(InArg,NInArg,OutArg,NOutArg,FunctionName,FileInfo,SharedInfo) -// function [OutArg,SharedInfo] = ST_InsForCntVars(InArg,NInArg,OutArg,NOutArg,FunctionName,FileInfo,SharedInfo) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),7,7); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -nxtscifunname = SharedInfo.NextSCIFunName; -nxtscifunnumber = SharedInfo.NextSCIFunNumber; -ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; - -// #RNU_RES_B -PrintStringInfo(' ',ReportFileName,'file','y'); -PrintStringInfo('***Checking if the current function is handling for counter variables.***',ReportFileName,'file','y'); -// #RNU_RES_E - -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -// ----------------------------------------------- -// --- Initial Check on For counter variables. --- -// ----------------------------------------------- -if ((SharedInfo.ForExpr.OnExec > 0) & (NOutArg==1) & (OutArg.Scope~='Temp')) - // #RNU_RES_B - // If we are here, for sure we are in the last assignment of a for loop expression. - // - // All the following cases must be handled: - // OpColon (1,10,cnt) or Opcolon (1,1,10,cnt) --> cnt must be redefined to dim=0 - // cnt = a; where a is scalar - // OpEqual(TMP,cnt); where TMP is matrix --> cnt must be redefined to dim=0, a SCI2Cint counter must be generated - // Fun(TMP,cnt); where TMP is matrix.--> cnt must be redefined to dim=0, a SCI2Cint counter must be generated, CNT must be generated where CNT is a Matrix - // #RNU_RES_E - if (FunctionName == 'OpColon') - // #RNU_RES_B - PrintStringInfo(' The for expression is using an OpColon-based assignment',ReportFileName,'file','y'); - // #RNU_RES_E - SharedInfo.SkipNextFun = 1; - - OutArg.Size(1) = '1'; - OutArg.Size(2) = '1'; - OutArg.Value = %nan; - OutArg.FindLike = 0; - OutArg.Dimension = 0; - SharedInfo.ForExpr.OpColonInfoIn1 = InArg(1).Name; - - if (NInArg == 2) - SharedInfo.ForExpr.OpColonInfoIn2 = '1'; - SharedInfo.ForExpr.OpColonInfoIn3 = InArg(2).Name; - else - SharedInfo.ForExpr.OpColonInfoIn2 = InArg(2).Name; - if isnan(InArg(2).Value) - EM_UnknownStep(ReportFileName); - end - - SharedInfo.ForExpr.OpColonInfoIn3 = InArg(3).Name; - end - - // #RNU_RES_B - // Generate all info to generate the C for expression - // #RNU_RES_E - SharedInfo.ForExpr.AssignmentFun = SharedInfo.CFunId.OpColon; - SharedInfo.ForExpr.IntCntArg = []; - SharedInfo.ForExpr.MtxValCntArg = []; - SharedInfo.ForExpr.SclValCntArg = OutArg; - - elseif ((FunctionName == 'OpEqual') & (SharedInfo.ForExpr.AssignmentFun == 0)) - // #RNU_RES_B - //NUT: Test also that SharedInfo.ForExpr.AssignmentFun because sometimes Equal are dummy! - //NUT: verifica se e' giusta questa mia affermazione. - // #RNU_RES_E - if (OutArg.Dimension > 0) - // #RNU_RES_B - PrintStringInfo(' The for expression is using a Matrix-Equal-based assignment',ReportFileName,'file','y'); - // #RNU_RES_E - SharedInfo.SkipNextFun = 1; //NUT: forse qui sarebbe meglio mettere uno skipnextequal per precisione. - // #RNU_RES_B - //NUT: a dire il vero occorre capire se c'e' differenza tra i vari skip. - // #RNU_RES_E - OutArg.Size(1) = '1'; - OutArg.Size(2) = '1'; - OutArg.Value = %nan; - OutArg.FindLike = 0; - OutArg.Dimension = 0; - - // #RNU_RES_B - // Introduce the int counter variable. - // #RNU_RES_E - NNewArg = 1; - NewArg(NNewArg).Name = SharedInfo.ASTReader.TempForCntVarsName+string(SharedInfo.CountForTempVars); - SharedInfo.CountForTempVars = SharedInfo.CountForTempVars + 1; - NewArg(NNewArg).Size(1) = '1'; - NewArg(NNewArg).Size(2) = '1'; - NewArg(NNewArg).Type = 'i'; - NewArg(NNewArg).Value = 0; - NewArg(NNewArg).FindLike = 0; - NewArg(NNewArg).Dimension = 0; - NewArg(NNewArg).Scope = 'Temp'; - - // #RNU_RES_B - // Insert New Arguments in the symbol table. - // #RNU_RES_E - NNewArg = 1; - ST_InsOutArg(NewArg,NNewArg,FileInfo,SharedInfo,'all'); - - // #RNU_RES_B - // Generate all info to generate the C for expression - // #RNU_RES_E - SharedInfo.ForExpr.AssignmentFun = SharedInfo.CFunId.EqMatrix; - SharedInfo.ForExpr.IntCntArg = NewArg(1); - SharedInfo.ForExpr.MtxValCntArg = InArg(1); - SharedInfo.ForExpr.SclValCntArg = OutArg; - else - // #RNU_RES_B - PrintStringInfo(' The for expression is using a Scalar-Equal-based assignment',ReportFileName,'file','y'); - // #RNU_RES_E - SharedInfo.ForExpr.AssignmentFun = SharedInfo.CFunId.EqScalar; - end - else - if (OutArg.Dimension > 0) - // #RNU_RES_B - PrintStringInfo(' The for expression is using a Matrix-Function-based assignment',ReportFileName,'file','y'); - - // Introduce the val counter variable. - // #RNU_RES_E - NewArg = OutArg; - OutArg.Name = SharedInfo.ASTReader.TempForValVarsName+OutArg.Name; - - // #RNU_RES_B - // Set the counter variable to scalar. - // #RNU_RES_E - NNewArg = 1; - NewArg(NNewArg).Size(1) = '1'; - NewArg(NNewArg).Size(2) = '1'; - NewArg(NNewArg).Value = %nan; - NewArg(NNewArg).FindLike = 0; - NewArg(NNewArg).Dimension = 0; - - // #RNU_RES_B - // Introduce the int counter variable. - // #RNU_RES_E - NNewArg = 2; - NewArg(NNewArg).Name = SharedInfo.ASTReader.TempForCntVarsName+string(SharedInfo.CountForTempVars); - SharedInfo.CountForTempVars = SharedInfo.CountForTempVars + 1; - NewArg(NNewArg).Size(1) = '1'; - NewArg(NNewArg).Size(2) = '1'; - NewArg(NNewArg).Type = 'i'; - NewArg(NNewArg).Value = 0; - NewArg(NNewArg).FindLike = 0; - NewArg(NNewArg).Dimension = 0; - NewArg(NNewArg).Scope = 'Temp'; - - // #RNU_RES_B - // Insert New Arguments in the symbol table. - // #RNU_RES_E - NNewArg = 2; - ST_InsOutArg(NewArg,NNewArg,FileInfo,SharedInfo,'all'); - - // #RNU_RES_B - // Generate all info to generate the C for expression - // #RNU_RES_E - SharedInfo.ForExpr.AssignmentFun = SharedInfo.CFunId.GenFunMtx; - SharedInfo.ForExpr.IntCntArg = NewArg(2); - SharedInfo.ForExpr.MtxValCntArg = OutArg(1); - SharedInfo.ForExpr.SclValCntArg = NewArg(1); - end - end -end - -endfunction +function [OutArg,SharedInfo] = ST_InsForCntVars(InArg,NInArg,OutArg,NOutArg,FunctionName,FileInfo,SharedInfo) +// function [OutArg,SharedInfo] = ST_InsForCntVars(InArg,NInArg,OutArg,NOutArg,FunctionName,FileInfo,SharedInfo) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),7,7); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +nxtscifunname = SharedInfo.NextSCIFunName; +nxtscifunnumber = SharedInfo.NextSCIFunNumber; +ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; + +// #RNU_RES_B +PrintStringInfo(' ',ReportFileName,'file','y'); +PrintStringInfo('***Checking if the current function is handling for counter variables.***',ReportFileName,'file','y'); +// #RNU_RES_E + +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +// ----------------------------------------------- +// --- Initial Check on For counter variables. --- +// ----------------------------------------------- +if ((SharedInfo.ForExpr.OnExec > 0) & (NOutArg==1) & (OutArg.Scope~='Temp')) + // #RNU_RES_B + // If we are here, for sure we are in the last assignment of a for loop expression. + // + // All the following cases must be handled: + // OpColon (1,10,cnt) or Opcolon (1,1,10,cnt) --> cnt must be redefined to dim=0 + // cnt = a; where a is scalar + // OpEqual(TMP,cnt); where TMP is matrix --> cnt must be redefined to dim=0, a SCI2Cint counter must be generated + // Fun(TMP,cnt); where TMP is matrix.--> cnt must be redefined to dim=0, a SCI2Cint counter must be generated, CNT must be generated where CNT is a Matrix + // #RNU_RES_E + if (FunctionName == 'OpColon') + // #RNU_RES_B + PrintStringInfo(' The for expression is using an OpColon-based assignment',ReportFileName,'file','y'); + // #RNU_RES_E + SharedInfo.SkipNextFun = 1; + + OutArg.Size(1) = '1'; + OutArg.Size(2) = '1'; + OutArg.Value = %nan; + OutArg.FindLike = 0; + OutArg.Dimension = 0; + SharedInfo.ForExpr.OpColonInfoIn1 = InArg(1).Name; + + if (NInArg == 2) + SharedInfo.ForExpr.OpColonInfoIn2 = '1'; + SharedInfo.ForExpr.OpColonInfoIn3 = InArg(2).Name; + else + SharedInfo.ForExpr.OpColonInfoIn2 = InArg(2).Name; + if isnan(InArg(2).Value) + EM_UnknownStep(ReportFileName); + end + + SharedInfo.ForExpr.OpColonInfoIn3 = InArg(3).Name; + end + + // #RNU_RES_B + // Generate all info to generate the C for expression + // #RNU_RES_E + SharedInfo.ForExpr.AssignmentFun = SharedInfo.CFunId.OpColon; + SharedInfo.ForExpr.IntCntArg = []; + SharedInfo.ForExpr.MtxValCntArg = []; + SharedInfo.ForExpr.SclValCntArg = OutArg; + + elseif ((FunctionName == 'OpEqual') & (SharedInfo.ForExpr.AssignmentFun == 0)) + // #RNU_RES_B + //NUT: Test also that SharedInfo.ForExpr.AssignmentFun because sometimes Equal are dummy! + //NUT: verifica se e' giusta questa mia affermazione. + // #RNU_RES_E + if (OutArg.Dimension > 0) + // #RNU_RES_B + PrintStringInfo(' The for expression is using a Matrix-Equal-based assignment',ReportFileName,'file','y'); + // #RNU_RES_E + SharedInfo.SkipNextFun = 1; //NUT: forse qui sarebbe meglio mettere uno skipnextequal per precisione. + // #RNU_RES_B + //NUT: a dire il vero occorre capire se c'e' differenza tra i vari skip. + // #RNU_RES_E + OutArg.Size(1) = '1'; + OutArg.Size(2) = '1'; + OutArg.Value = %nan; + OutArg.FindLike = 0; + OutArg.Dimension = 0; + + // #RNU_RES_B + // Introduce the int counter variable. + // #RNU_RES_E + NNewArg = 1; + NewArg(NNewArg).Name = SharedInfo.ASTReader.TempForCntVarsName+string(SharedInfo.CountForTempVars); + SharedInfo.CountForTempVars = SharedInfo.CountForTempVars + 1; + NewArg(NNewArg).Size(1) = '1'; + NewArg(NNewArg).Size(2) = '1'; + NewArg(NNewArg).Type = 'i'; + NewArg(NNewArg).Value = 0; + NewArg(NNewArg).FindLike = 0; + NewArg(NNewArg).Dimension = 0; + NewArg(NNewArg).Scope = 'Temp'; + + // #RNU_RES_B + // Insert New Arguments in the symbol table. + // #RNU_RES_E + NNewArg = 1; + ST_InsOutArg(NewArg,NNewArg,FileInfo,SharedInfo,'all'); + + // #RNU_RES_B + // Generate all info to generate the C for expression + // #RNU_RES_E + SharedInfo.ForExpr.AssignmentFun = SharedInfo.CFunId.EqMatrix; + SharedInfo.ForExpr.IntCntArg = NewArg(1); + SharedInfo.ForExpr.MtxValCntArg = InArg(1); + SharedInfo.ForExpr.SclValCntArg = OutArg; + else + // #RNU_RES_B + PrintStringInfo(' The for expression is using a Scalar-Equal-based assignment',ReportFileName,'file','y'); + // #RNU_RES_E + SharedInfo.ForExpr.AssignmentFun = SharedInfo.CFunId.EqScalar; + end + else + if (OutArg.Dimension > 0) + // #RNU_RES_B + PrintStringInfo(' The for expression is using a Matrix-Function-based assignment',ReportFileName,'file','y'); + + // Introduce the val counter variable. + // #RNU_RES_E + NewArg = OutArg; + OutArg.Name = SharedInfo.ASTReader.TempForValVarsName+OutArg.Name; + + // #RNU_RES_B + // Set the counter variable to scalar. + // #RNU_RES_E + NNewArg = 1; + NewArg(NNewArg).Size(1) = '1'; + NewArg(NNewArg).Size(2) = '1'; + NewArg(NNewArg).Value = %nan; + NewArg(NNewArg).FindLike = 0; + NewArg(NNewArg).Dimension = 0; + + // #RNU_RES_B + // Introduce the int counter variable. + // #RNU_RES_E + NNewArg = 2; + NewArg(NNewArg).Name = SharedInfo.ASTReader.TempForCntVarsName+string(SharedInfo.CountForTempVars); + SharedInfo.CountForTempVars = SharedInfo.CountForTempVars + 1; + NewArg(NNewArg).Size(1) = '1'; + NewArg(NNewArg).Size(2) = '1'; + NewArg(NNewArg).Type = 'i'; + NewArg(NNewArg).Value = 0; + NewArg(NNewArg).FindLike = 0; + NewArg(NNewArg).Dimension = 0; + NewArg(NNewArg).Scope = 'Temp'; + + // #RNU_RES_B + // Insert New Arguments in the symbol table. + // #RNU_RES_E + NNewArg = 2; + ST_InsOutArg(NewArg,NNewArg,FileInfo,SharedInfo,'all'); + + // #RNU_RES_B + // Generate all info to generate the C for expression + // #RNU_RES_E + SharedInfo.ForExpr.AssignmentFun = SharedInfo.CFunId.GenFunMtx; + SharedInfo.ForExpr.IntCntArg = NewArg(2); + SharedInfo.ForExpr.MtxValCntArg = OutArg(1); + SharedInfo.ForExpr.SclValCntArg = NewArg(1); + end + end +end + +endfunction diff --git a/macros/SymbolTable/ST_InsOutArg.sci b/macros/SymbolTable/ST_InsOutArg.sci index fd6b426c..6d527b80 100644 --- a/macros/SymbolTable/ST_InsOutArg.sci +++ b/macros/SymbolTable/ST_InsOutArg.sci @@ -1,192 +1,192 @@ -function ST_InsOutArg(OutArg,NOutArg,FileInfo,SharedInfo,MatchRule) -// function ST_InsOutArg(OutArg,NOutArg,FileInfo,SharedInfo,MatchRule) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),5,5); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -nxtscifunname = SharedInfo.NextSCIFunName; -nxtscifunnumber = SharedInfo.NextSCIFunNumber; -ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; -CDeclarationFileName = FileInfo.Funct(nxtscifunnumber).CDeclarationFileName; -CGblDeclarFileName = FileInfo.Funct(nxtscifunnumber).CGblDeclarFileName; - -GlobalVarsFileName = FileInfo.GlobalVarFileName; -LocalVarsFileName = FileInfo.Funct(nxtscifunnumber).LocalVarFileName; -TempVarsFileName = FileInfo.Funct(nxtscifunnumber).TempVarFileName; - -CPass1FileName = FileInfo.Funct(nxtscifunnumber).CPass1FileName; -CPass1FreeFileName = FileInfo.Funct(nxtscifunnumber).CPass1FreeFileName; - - -// #RNU_RES_B -PrintStringInfo(' ',ReportFileName,'file','y'); -PrintStringInfo('***Putting output arguments in the symbol table***',ReportFileName,'file','y','n'); -// #RNU_RES_E -// --------------------------- -// --- End Initialization. --- -// --------------------------- -for counteroutput = 1:NOutArg - // #RNU_RES_B - PrintStringInfo(' Symbol ""'+OutArg(counteroutput).Name+'""',ReportFileName,'file','y','n'); - PrintStringInfo(' Type: '+OutArg(counteroutput).Type,ReportFileName,'file','y','n'); - PrintStringInfo(' Size(1): '+string(OutArg(counteroutput).Size(1)),ReportFileName,'file','y','n'); - PrintStringInfo(' Size(2): '+string(OutArg(counteroutput).Size(2)),ReportFileName,'file','y','n'); - PrintStringInfo(' Value: '+string(OutArg(counteroutput).Value),ReportFileName,'file','y','n'); - PrintStringInfo(' FindLike: '+string(OutArg(counteroutput).FindLike),ReportFileName,'file','y','n'); - PrintStringInfo(' Dimension: '+string(OutArg(counteroutput).Dimension),ReportFileName,'file','y','n'); - PrintStringInfo(' Scope: '+string(OutArg(counteroutput).Scope),ReportFileName,'file','y','n'); - PrintStringInfo(' ',ReportFileName,'file','y','n'); - // #RNU_RES_E - if (OutArg(counteroutput).Scope == 'Temp') - SymbTableFileName = TempVarsFileName; - elseif (OutArg(counteroutput).Scope == 'Local') - SymbTableFileName = LocalVarsFileName; - elseif (OutArg(counteroutput).Scope == 'Global') - SymbTableFileName = GlobalVarsFileName; - else - error(9999, 'Unknown scope ""'+OutArg(counteroutput).Scope+'"" for symbol: '+OutArg(counteroutput).Name); - end - // #RNU_RES_B - PrintStringInfo(' Setting symbol ""'+OutArg(counteroutput).Name+'"" in '+SymbTableFileName+'.',ReportFileName,'file','y'); - // #RNU_RES_E - - // #RNU_RES_B - // Check existence and conflicts in the symbol table. - // Here we have four possibilities: - // 1. the symbol is a global variable not initialized yet -> we have to initialize it. - // 2. the symbol already exists with different settings -> we have to issue an error. - // 3. the symbol already exists with the same settings -> ok, we don't have to do nothing. - // 4. the symbol doesn't exist -> we have to insert it into the table. - // #RNU_RES_E - [TBFlagfound,TBFlagEqualSymbols] = ... - ST_MatchSymbol(OutArg(counteroutput).Name,... - OutArg(counteroutput).Type,... - OutArg(counteroutput).Size,... - OutArg(counteroutput).Value,... - OutArg(counteroutput).FindLike,... - OutArg(counteroutput).Dimension,... - SymbTableFileName,MatchRule); - - if (TBFlagfound == 1) - if (TBFlagEqualSymbols == 0) - PrintStringInfo(' ',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Symbol Table Conflict. Trying to insert again symbol ""'+... - OutArg(counteroutput).Name+'"" with different settings',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: Please check that you are not using variable ""'+OutArg(counteroutput).Name+'""',ReportFileName,'both','y'); - PrintStringInfo('SCI2CERROR: with different sizes and/or types.',ReportFileName,'both','y'); - PrintStringInfo(' ',ReportFileName,'both','y'); - error(9999, 'SCI2CERROR: Symbol Table Conflict. Trying to insert again symbol ""'+... - OutArg(counteroutput).Name+'"" with different settings'); - else - // #RNU_RES_B - // It's ok symbols do match. - //NUT: forse occorre un altro check sulla size per capire se occore fare il malloc. - //NUT: qui entro anche quando ho una variabile global gia' dichiarata tale in un altro - //NUT: per cui devo dichiararala come external. - //RNU qui ci puoi mettere una warning quando stai riallocando uno stesso simbolo con size simbolica. - //RNU puoi anche aggiungere del codice in c o un semplice commento. per esempio una funzione c del tipo checksize che controlla il valore - //RNU prima dopo delle size di una data variabile. Cosa succede se cambio la size anche nel caso di array e approccio - //RNU di resize non attivo? L'unica cosa e' che molte size numeriche scompaiono e incomincio a creare numerose variabili - //RNU con size simbolica. - - // If the symbol is scalar we update its value if it is an array we update its size - // only in case we are using the 'REALLOC_ALL_RESIZE_ALL' resize approach - // #RNU_RES_E - if ((GetSymbolDimension(OutArg(counteroutput).Size)) == 0 | (SharedInfo.ResizeApproach=='REALLOC_ALL_RESIZE_ALL')) - ST_Set(OutArg(counteroutput).Name,... - OutArg(counteroutput).Type,... - OutArg(counteroutput).Size,... - OutArg(counteroutput).Value,... - OutArg(counteroutput).FindLike,... - OutArg(counteroutput).Dimension,... - SymbTableFileName); - end - - // IndentLevelDeclaration = 1; //NUT: per ora lo forzo sempre a 1 - // IndentLevelMalloc = SharedInfo.NIndent; - // FlagExt = 0; - // C_GenDeclarations(OutArg(counteroutput),CDeclarationFileName,IndentLevelDeclaration,ReportFileName,FlagExt,SharedInfo.ResizeApproach); - - - end - elseif (TBFlagfound == 2) - // #RNU_RES_B - // We have a non-initialized global variable. - // Set the non-initialized global variable. - PrintStringInfo(' Found a non-initialized global variable.',ReportFileName,'file','y'); - // #RNU_RES_E - ST_Set(OutArg(counteroutput).Name,... - OutArg(counteroutput).Type,... - OutArg(counteroutput).Size,... - OutArg(counteroutput).Value,... - OutArg(counteroutput).FindLike,... - OutArg(counteroutput).Dimension,... - SymbTableFileName); - IndentLevel = 0; //NUT: forced always to 1 - FlagExt = 0; - C_GenDeclarations(OutArg(counteroutput),CGblDeclarFileName,IndentLevel,ReportFileName,FlagExt,SharedInfo.ResizeApproach); - IndentLevelMalloc = SharedInfo.NIndent; - // #RNU_RES_B - //RNU da verificare bene qui. Cio' che si verifica e' che se la size della globale e' simbolica - //RNU allora si assume che essa sia da allocare come puntatore e poi realloc. - // #RNU_RES_E - C_MemAllocOutTempVars(OutArg(counteroutput),1,CPass1FileName,CPass1FreeFileName,IndentLevelMalloc,ReportFileName,SharedInfo.ResizeApproach); - else - if (OutArg(counteroutput).FindLike == 1) - // #RNU_RES_B - // In presence of find-like functions the size must be always symbolic. - // Don't change here the value of OutArg.Size because the first time - // I need them to declare the OutArg variable with the values assumed by OutArg.Size. - // #RNU_RES_E - TmpOutArgSize(1) = '__'+OutArg(counteroutput).Name+'Size[0]'; - TmpOutArgSize(2) = '__'+OutArg(counteroutput).Name+'Size[1]'; - else - TmpOutArgSize(1) = OutArg(counteroutput).Size(1); - TmpOutArgSize(2) = OutArg(counteroutput).Size(2); - end - // #RNU_RES_B - // Set a new symbol. - // #RNU_RES_E - ST_Set(OutArg(counteroutput).Name,... - OutArg(counteroutput).Type,... - TmpOutArgSize,... - OutArg(counteroutput).Value,... - OutArg(counteroutput).FindLike,... - OutArg(counteroutput).Dimension,... - SymbTableFileName); - IndentLevelDeclaration = 1; //NUT: per ora lo forzo sempre a 1 - IndentLevelMalloc = SharedInfo.NIndent; - FlagExt = 0; - C_GenDeclarations(OutArg(counteroutput),CDeclarationFileName,IndentLevelDeclaration,ReportFileName,FlagExt,SharedInfo.ResizeApproach); - // #RNU_RES_B - //RNU aggiunta qui in modo che le malloc saranno fatte una sola volta: - //RNU verifica che tutto funzioni e chi altro usa la C_MemAlloc per capire se si puo' ottimizzare per questo stadio. - // #RNU_RES_E - C_MemAllocOutTempVars(OutArg(counteroutput),1,CPass1FileName,CPass1FreeFileName,IndentLevelMalloc,ReportFileName,SharedInfo.ResizeApproach); - end - -end - -endfunction +function ST_InsOutArg(OutArg,NOutArg,FileInfo,SharedInfo,MatchRule) +// function ST_InsOutArg(OutArg,NOutArg,FileInfo,SharedInfo,MatchRule) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),5,5); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +nxtscifunname = SharedInfo.NextSCIFunName; +nxtscifunnumber = SharedInfo.NextSCIFunNumber; +ReportFileName = FileInfo.Funct(nxtscifunnumber).ReportFileName; +CDeclarationFileName = FileInfo.Funct(nxtscifunnumber).CDeclarationFileName; +CGblDeclarFileName = FileInfo.Funct(nxtscifunnumber).CGblDeclarFileName; + +GlobalVarsFileName = FileInfo.GlobalVarFileName; +LocalVarsFileName = FileInfo.Funct(nxtscifunnumber).LocalVarFileName; +TempVarsFileName = FileInfo.Funct(nxtscifunnumber).TempVarFileName; + +CPass1FileName = FileInfo.Funct(nxtscifunnumber).CPass1FileName; +CPass1FreeFileName = FileInfo.Funct(nxtscifunnumber).CPass1FreeFileName; + + +// #RNU_RES_B +PrintStringInfo(' ',ReportFileName,'file','y'); +PrintStringInfo('***Putting output arguments in the symbol table***',ReportFileName,'file','y','n'); +// #RNU_RES_E +// --------------------------- +// --- End Initialization. --- +// --------------------------- +for counteroutput = 1:NOutArg + // #RNU_RES_B + PrintStringInfo(' Symbol ""'+OutArg(counteroutput).Name+'""',ReportFileName,'file','y','n'); + PrintStringInfo(' Type: '+OutArg(counteroutput).Type,ReportFileName,'file','y','n'); + PrintStringInfo(' Size(1): '+string(OutArg(counteroutput).Size(1)),ReportFileName,'file','y','n'); + PrintStringInfo(' Size(2): '+string(OutArg(counteroutput).Size(2)),ReportFileName,'file','y','n'); + PrintStringInfo(' Value: '+string(OutArg(counteroutput).Value),ReportFileName,'file','y','n'); + PrintStringInfo(' FindLike: '+string(OutArg(counteroutput).FindLike),ReportFileName,'file','y','n'); + PrintStringInfo(' Dimension: '+string(OutArg(counteroutput).Dimension),ReportFileName,'file','y','n'); + PrintStringInfo(' Scope: '+string(OutArg(counteroutput).Scope),ReportFileName,'file','y','n'); + PrintStringInfo(' ',ReportFileName,'file','y','n'); + // #RNU_RES_E + if (OutArg(counteroutput).Scope == 'Temp') + SymbTableFileName = TempVarsFileName; + elseif (OutArg(counteroutput).Scope == 'Local') + SymbTableFileName = LocalVarsFileName; + elseif (OutArg(counteroutput).Scope == 'Global') + SymbTableFileName = GlobalVarsFileName; + else + error(9999, 'Unknown scope ""'+OutArg(counteroutput).Scope+'"" for symbol: '+OutArg(counteroutput).Name); + end + // #RNU_RES_B + PrintStringInfo(' Setting symbol ""'+OutArg(counteroutput).Name+'"" in '+SymbTableFileName+'.',ReportFileName,'file','y'); + // #RNU_RES_E + + // #RNU_RES_B + // Check existence and conflicts in the symbol table. + // Here we have four possibilities: + // 1. the symbol is a global variable not initialized yet -> we have to initialize it. + // 2. the symbol already exists with different settings -> we have to issue an error. + // 3. the symbol already exists with the same settings -> ok, we don't have to do nothing. + // 4. the symbol doesn't exist -> we have to insert it into the table. + // #RNU_RES_E + [TBFlagfound,TBFlagEqualSymbols] = ... + ST_MatchSymbol(OutArg(counteroutput).Name,... + OutArg(counteroutput).Type,... + OutArg(counteroutput).Size,... + OutArg(counteroutput).Value,... + OutArg(counteroutput).FindLike,... + OutArg(counteroutput).Dimension,... + SymbTableFileName,MatchRule); + + if (TBFlagfound == 1) + if (TBFlagEqualSymbols == 0) + PrintStringInfo(' ',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Symbol Table Conflict. Trying to insert again symbol ""'+... + OutArg(counteroutput).Name+'"" with different settings',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: Please check that you are not using variable ""'+OutArg(counteroutput).Name+'""',ReportFileName,'both','y'); + PrintStringInfo('SCI2CERROR: with different sizes and/or types.',ReportFileName,'both','y'); + PrintStringInfo(' ',ReportFileName,'both','y'); + error(9999, 'SCI2CERROR: Symbol Table Conflict. Trying to insert again symbol ""'+... + OutArg(counteroutput).Name+'"" with different settings'); + else + // #RNU_RES_B + // It's ok symbols do match. + //NUT: forse occorre un altro check sulla size per capire se occore fare il malloc. + //NUT: qui entro anche quando ho una variabile global gia' dichiarata tale in un altro + //NUT: per cui devo dichiararala come external. + //RNU qui ci puoi mettere una warning quando stai riallocando uno stesso simbolo con size simbolica. + //RNU puoi anche aggiungere del codice in c o un semplice commento. per esempio una funzione c del tipo checksize che controlla il valore + //RNU prima dopo delle size di una data variabile. Cosa succede se cambio la size anche nel caso di array e approccio + //RNU di resize non attivo? L'unica cosa e' che molte size numeriche scompaiono e incomincio a creare numerose variabili + //RNU con size simbolica. + + // If the symbol is scalar we update its value if it is an array we update its size + // only in case we are using the 'REALLOC_ALL_RESIZE_ALL' resize approach + // #RNU_RES_E + if ((GetSymbolDimension(OutArg(counteroutput).Size)) == 0 | (SharedInfo.ResizeApproach=='REALLOC_ALL_RESIZE_ALL')) + ST_Set(OutArg(counteroutput).Name,... + OutArg(counteroutput).Type,... + OutArg(counteroutput).Size,... + OutArg(counteroutput).Value,... + OutArg(counteroutput).FindLike,... + OutArg(counteroutput).Dimension,... + SymbTableFileName); + end + + // IndentLevelDeclaration = 1; //NUT: per ora lo forzo sempre a 1 + // IndentLevelMalloc = SharedInfo.NIndent; + // FlagExt = 0; + // C_GenDeclarations(OutArg(counteroutput),CDeclarationFileName,IndentLevelDeclaration,ReportFileName,FlagExt,SharedInfo.ResizeApproach); + + + end + elseif (TBFlagfound == 2) + // #RNU_RES_B + // We have a non-initialized global variable. + // Set the non-initialized global variable. + PrintStringInfo(' Found a non-initialized global variable.',ReportFileName,'file','y'); + // #RNU_RES_E + ST_Set(OutArg(counteroutput).Name,... + OutArg(counteroutput).Type,... + OutArg(counteroutput).Size,... + OutArg(counteroutput).Value,... + OutArg(counteroutput).FindLike,... + OutArg(counteroutput).Dimension,... + SymbTableFileName); + IndentLevel = 0; //NUT: forced always to 1 + FlagExt = 0; + C_GenDeclarations(OutArg(counteroutput),CGblDeclarFileName,IndentLevel,ReportFileName,FlagExt,SharedInfo.ResizeApproach); + IndentLevelMalloc = SharedInfo.NIndent; + // #RNU_RES_B + //RNU da verificare bene qui. Cio' che si verifica e' che se la size della globale e' simbolica + //RNU allora si assume che essa sia da allocare come puntatore e poi realloc. + // #RNU_RES_E + C_MemAllocOutTempVars(OutArg(counteroutput),1,CPass1FileName,CPass1FreeFileName,IndentLevelMalloc,ReportFileName,SharedInfo.ResizeApproach); + else + if (OutArg(counteroutput).FindLike == 1) + // #RNU_RES_B + // In presence of find-like functions the size must be always symbolic. + // Don't change here the value of OutArg.Size because the first time + // I need them to declare the OutArg variable with the values assumed by OutArg.Size. + // #RNU_RES_E + TmpOutArgSize(1) = '__'+OutArg(counteroutput).Name+'Size[0]'; + TmpOutArgSize(2) = '__'+OutArg(counteroutput).Name+'Size[1]'; + else + TmpOutArgSize(1) = OutArg(counteroutput).Size(1); + TmpOutArgSize(2) = OutArg(counteroutput).Size(2); + end + // #RNU_RES_B + // Set a new symbol. + // #RNU_RES_E + ST_Set(OutArg(counteroutput).Name,... + OutArg(counteroutput).Type,... + TmpOutArgSize,... + OutArg(counteroutput).Value,... + OutArg(counteroutput).FindLike,... + OutArg(counteroutput).Dimension,... + SymbTableFileName); + IndentLevelDeclaration = 1; //NUT: per ora lo forzo sempre a 1 + IndentLevelMalloc = SharedInfo.NIndent; + FlagExt = 0; + C_GenDeclarations(OutArg(counteroutput),CDeclarationFileName,IndentLevelDeclaration,ReportFileName,FlagExt,SharedInfo.ResizeApproach); + // #RNU_RES_B + //RNU aggiunta qui in modo che le malloc saranno fatte una sola volta: + //RNU verifica che tutto funzioni e chi altro usa la C_MemAlloc per capire se si puo' ottimizzare per questo stadio. + // #RNU_RES_E + C_MemAllocOutTempVars(OutArg(counteroutput),1,CPass1FileName,CPass1FreeFileName,IndentLevelMalloc,ReportFileName,SharedInfo.ResizeApproach); + end + +end + +endfunction diff --git a/macros/SymbolTable/ST_Load.sci b/macros/SymbolTable/ST_Load.sci index dbe53456..fc6dc5db 100644 --- a/macros/SymbolTable/ST_Load.sci +++ b/macros/SymbolTable/ST_Load.sci @@ -1,36 +1,36 @@ -function SCI2CSymbolTable = ST_Load(SymbolTableFileName) -// function SCI2CSymbolTable = ST_Load(SymbolTableFileName) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Load a symbol table stored into a .dat file. -// #RNU_RES_E -// -// Input data: -// //NUT: add description here -// -// -// Output data: -// //NUT: add description here -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// -------------------------- -// --- Load Symbol Table. --- -// -------------------------- -[tmpnams,tmptyps,tmpdims,tmpvols]=listvarinfile(SymbolTableFileName); -if (max(size(tmpnams)) > 1) - error(9999, 'More than one variable found in ""'+SymbolTableFileName+'"".'); -end -load(SymbolTableFileName,tmpnams); -SCI2CSymbolTable = eval(tmpnams); -// ------------------------------ -// --- End Load Symbol Table. --- -// ------------------------------ - -endfunction +function SCI2CSymbolTable = ST_Load(SymbolTableFileName) +// function SCI2CSymbolTable = ST_Load(SymbolTableFileName) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Load a symbol table stored into a .dat file. +// #RNU_RES_E +// +// Input data: +// //NUT: add description here +// +// +// Output data: +// //NUT: add description here +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// -------------------------- +// --- Load Symbol Table. --- +// -------------------------- +[tmpnams,tmptyps,tmpdims,tmpvols]=listvarinfile(SymbolTableFileName); +if (max(size(tmpnams)) > 1) + error(9999, 'More than one variable found in ""'+SymbolTableFileName+'"".'); +end +load(SymbolTableFileName,tmpnams); +SCI2CSymbolTable = eval(tmpnams); +// ------------------------------ +// --- End Load Symbol Table. --- +// ------------------------------ + +endfunction diff --git a/macros/SymbolTable/ST_MatchSymbol.sci b/macros/SymbolTable/ST_MatchSymbol.sci index 504379c2..2119c302 100644 --- a/macros/SymbolTable/ST_MatchSymbol.sci +++ b/macros/SymbolTable/ST_MatchSymbol.sci @@ -1,69 +1,69 @@ -function [TBFlagfound,TBFlagEqualSymbols] = ST_MatchSymbol(TBName,TBType,TBSize,TBValue,TBFindLike,TBDimension,SymbolTableFileName,MatchRule) -// function [TBFlagfound,TBFlagEqualSymbols] = ST_MatchSymbol(TBName,TBType,TBSize,TBValue,TBFindLike,TBDimension,SymbolTableFileName,MatchRule) -// ----------------------------------------------------------------- -// Match function for the symbol table. -// -// Input data: -// MatchRule: can be 'all','type','size','none' -// //NUT: add description here -// -// Output data: -// TBFlagfound: 0 = if the symbol doesn't exits. -// 1 = the symbol exits. -// 2 = the symbol exists but it is a non-initialized global variable. -// TBFlagEqualSymbols: 0 if the two symbols don't have the same settings, -// 1 if the two symbols have the same settings. -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),8,8); - -TBFlagfound = 0; -TBFlagEqualSymbols = 0; - -// --- Find symbol (If exists). --- -[TBFlagfound,tmpType,tmpSize,tmpValue,tmpFindLike,tmpDimension] = ... - ST_Get(TBName,SymbolTableFileName); -if (TBFlagfound == 1) - if (tmpType == 'GBLToBeDefined') - TBFlagfound = 2; - TBFlagEqualSymbols = 0; // I don't want to force the error issue in ST_InsOutArg.sci - else - // Symbol already exists. Check that it has the same settings of the current output argument. - TBFlagEqualSymbols = 1; - if (MatchRule == 'type' | MatchRule == 'all') - if (mtlb_strcmp(tmpType,TBType) == %F) - TBFlagEqualSymbols = 0; - end - end - if (MatchRule == 'size' | MatchRule == 'all') - // First check the dimension. - if (tmpDimension ~= TBDimension) - TBFlagEqualSymbols = 0; - end - // Then if the size is a number also its value is compared. - if (isnum(tmpSize(1))) & (isnum(TBSize(1))) - if (mtlb_strcmp(tmpSize(1),TBSize(1)) == %F) - TBFlagEqualSymbols = 0; - end - end - if (isnum(tmpSize(2))) & (isnum(TBSize(2))) - if (mtlb_strcmp(tmpSize(2),TBSize(2)) == %F) - TBFlagEqualSymbols = 0; - end - end - end - end -end - -endfunction +function [TBFlagfound,TBFlagEqualSymbols] = ST_MatchSymbol(TBName,TBType,TBSize,TBValue,TBFindLike,TBDimension,SymbolTableFileName,MatchRule) +// function [TBFlagfound,TBFlagEqualSymbols] = ST_MatchSymbol(TBName,TBType,TBSize,TBValue,TBFindLike,TBDimension,SymbolTableFileName,MatchRule) +// ----------------------------------------------------------------- +// Match function for the symbol table. +// +// Input data: +// MatchRule: can be 'all','type','size','none' +// //NUT: add description here +// +// Output data: +// TBFlagfound: 0 = if the symbol doesn't exits. +// 1 = the symbol exits. +// 2 = the symbol exists but it is a non-initialized global variable. +// TBFlagEqualSymbols: 0 if the two symbols don't have the same settings, +// 1 if the two symbols have the same settings. +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),8,8); + +TBFlagfound = 0; +TBFlagEqualSymbols = 0; + +// --- Find symbol (If exists). --- +[TBFlagfound,tmpType,tmpSize,tmpValue,tmpFindLike,tmpDimension] = ... + ST_Get(TBName,SymbolTableFileName); +if (TBFlagfound == 1) + if (tmpType == 'GBLToBeDefined') + TBFlagfound = 2; + TBFlagEqualSymbols = 0; // I don't want to force the error issue in ST_InsOutArg.sci + else + // Symbol already exists. Check that it has the same settings of the current output argument. + TBFlagEqualSymbols = 1; + if (MatchRule == 'type' | MatchRule == 'all') + if (mtlb_strcmp(tmpType,TBType) == %F) + TBFlagEqualSymbols = 0; + end + end + if (MatchRule == 'size' | MatchRule == 'all') + // First check the dimension. + if (tmpDimension ~= TBDimension) + TBFlagEqualSymbols = 0; + end + // Then if the size is a number also its value is compared. + if (isnum(tmpSize(1))) & (isnum(TBSize(1))) + if (mtlb_strcmp(tmpSize(1),TBSize(1)) == %F) + TBFlagEqualSymbols = 0; + end + end + if (isnum(tmpSize(2))) & (isnum(TBSize(2))) + if (mtlb_strcmp(tmpSize(2),TBSize(2)) == %F) + TBFlagEqualSymbols = 0; + end + end + end + end +end + +endfunction diff --git a/macros/SymbolTable/ST_Save.sci b/macros/SymbolTable/ST_Save.sci index 44e6e868..a925bbe9 100644 --- a/macros/SymbolTable/ST_Save.sci +++ b/macros/SymbolTable/ST_Save.sci @@ -1,44 +1,44 @@ -function ST_Save(SymbolTableFileName,SCI2CSymbolTable) -// function ST_Save(SymbolTableFileName,SCI2CSymbolTable) -// ----------------------------------------------------------------- -// Save into a .dat file a symbol table. -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -[tmpnams,tmptyps,tmpdims,tmpvols]=listvarinfile(SymbolTableFileName); -if (max(size(tmpnams)) > 1) - SCI2Cerror('More than one variable found in ""'+SymbolTableFileName+'"".'); -end - -// Identifies the Table name and save it into the .dat file. -if (mtlb_strcmp(tmpnams,'GlobalVars')) - GlobalVars = SCI2CSymbolTable; - save(SymbolTableFileName, "GlobalVars"); -elseif (mtlb_strcmp(tmpnams,'LocalVars')) - LocalVars = SCI2CSymbolTable; - save(SymbolTableFileName, "LocalVars"); -elseif (mtlb_strcmp(tmpnams,'TempVars')) - TempVars = SCI2CSymbolTable; - save(SymbolTableFileName, "TempVars"); -else - SCI2Cerror('Unknow table: ""'+tmpnams+'"".'); -end - -endfunction +function ST_Save(SymbolTableFileName,SCI2CSymbolTable) +// function ST_Save(SymbolTableFileName,SCI2CSymbolTable) +// ----------------------------------------------------------------- +// Save into a .dat file a symbol table. +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +[tmpnams,tmptyps,tmpdims,tmpvols]=listvarinfile(SymbolTableFileName); +if (max(size(tmpnams)) > 1) + SCI2Cerror('More than one variable found in ""'+SymbolTableFileName+'"".'); +end + +// Identifies the Table name and save it into the .dat file. +if (mtlb_strcmp(tmpnams,'GlobalVars')) + GlobalVars = SCI2CSymbolTable; + save(SymbolTableFileName, "GlobalVars"); +elseif (mtlb_strcmp(tmpnams,'LocalVars')) + LocalVars = SCI2CSymbolTable; + save(SymbolTableFileName, "LocalVars"); +elseif (mtlb_strcmp(tmpnams,'TempVars')) + TempVars = SCI2CSymbolTable; + save(SymbolTableFileName, "TempVars"); +else + SCI2Cerror('Unknow table: ""'+tmpnams+'"".'); +end + +endfunction diff --git a/macros/SymbolTable/ST_Set.sci b/macros/SymbolTable/ST_Set.sci index 778f91aa..320c37b3 100644 --- a/macros/SymbolTable/ST_Set.sci +++ b/macros/SymbolTable/ST_Set.sci @@ -1,49 +1,49 @@ -function ST_Set(TBName,TBType,TBSize,TBValue,TBFindLike,TBDimension,SymbolTableFileName) -// function ST_Set(TBName,TBType,TBSize,TBValue,TBFindLike,TBDimension,SymbolTableFileName) -// ----------------------------------------------------------------- -// Set function for the symbol table. -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 26-Oct-2007 -- Raffaele Nutricato: Author. -// 26-Oct-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),7,7); - -// --- Load symbol table. --- -SCI2CSymbolTable = ST_Load(SymbolTableFileName); - -// --- Find symbol position (If exists). --- -[TBFlagfound,TBPosition] = ST_FindPos(TBName,SymbolTableFileName); - -if (TBFlagfound == 0) - TBPosition = max(size(SCI2CSymbolTable))+1; -end - -// --- Update symbol table. --- -SCI2CSymbolTable(TBPosition).Name = TBName; // string. -SCI2CSymbolTable(TBPosition).Type = TBType; // char. -SCI2CSymbolTable(TBPosition).Size = TBSize; // structure of two strings (Size(1) and Size(2)). -SCI2CSymbolTable(TBPosition).Value = TBValue; // int/real/complex number. %nan when the value is not available or isn't a scalar. -SCI2CSymbolTable(TBPosition).FindLike = TBFindLike; // int number. FindLike = 1, when the symbol comes from a find-like function. - // FindLike = -1 when the function is not find-like but it is making use of input arguments that are find-like. - // FindLike = 0 in all other cases. -SCI2CSymbolTable(TBPosition).Dimension = TBDimension; // int number. - -// --- Save symbol table. --- -ST_Save(SymbolTableFileName,SCI2CSymbolTable); - -endfunction +function ST_Set(TBName,TBType,TBSize,TBValue,TBFindLike,TBDimension,SymbolTableFileName) +// function ST_Set(TBName,TBType,TBSize,TBValue,TBFindLike,TBDimension,SymbolTableFileName) +// ----------------------------------------------------------------- +// Set function for the symbol table. +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 26-Oct-2007 -- Raffaele Nutricato: Author. +// 26-Oct-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),7,7); + +// --- Load symbol table. --- +SCI2CSymbolTable = ST_Load(SymbolTableFileName); + +// --- Find symbol position (If exists). --- +[TBFlagfound,TBPosition] = ST_FindPos(TBName,SymbolTableFileName); + +if (TBFlagfound == 0) + TBPosition = max(size(SCI2CSymbolTable))+1; +end + +// --- Update symbol table. --- +SCI2CSymbolTable(TBPosition).Name = TBName; // string. +SCI2CSymbolTable(TBPosition).Type = TBType; // char. +SCI2CSymbolTable(TBPosition).Size = TBSize; // structure of two strings (Size(1) and Size(2)). +SCI2CSymbolTable(TBPosition).Value = TBValue; // int/real/complex number. %nan when the value is not available or isn't a scalar. +SCI2CSymbolTable(TBPosition).FindLike = TBFindLike; // int number. FindLike = 1, when the symbol comes from a find-like function. + // FindLike = -1 when the function is not find-like but it is making use of input arguments that are find-like. + // FindLike = 0 in all other cases. +SCI2CSymbolTable(TBPosition).Dimension = TBDimension; // int number. + +// --- Save symbol table. --- +ST_Save(SymbolTableFileName,SCI2CSymbolTable); + +endfunction diff --git a/macros/ToolInitialization/INIT_CreateDirs.sci b/macros/ToolInitialization/INIT_CreateDirs.sci index e6ef184e..26b102c0 100644 --- a/macros/ToolInitialization/INIT_CreateDirs.sci +++ b/macros/ToolInitialization/INIT_CreateDirs.sci @@ -1,65 +1,65 @@ -function INIT_CreateDirs(FileInfo) -// function INIT_CreateDirs(FileInfo) -// ----------------------------------------------------------------- -// Create directories. -// -// Input data: -// FileInfo: structure containing all info about SCI2C files. -// -// Output data: -// --- -// -// Status: -// 03-Jan-2008 -- Raffaele Nutricato: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -// --------------------------- -// --- Create Directories. --- -// --------------------------- -// --- Main directories. --- -SCI2CCreateDir(FileInfo.WorkingDir); -SCI2CCreateDir(FileInfo.OutCCCodeDir); - -// --- SCI2C Library. --- -SCI2CCreateDir(FileInfo.SCI2CLibDir); -SCI2CCreateDir(FileInfo.SCI2CLibSCIAnnDir); -SCI2CCreateDir(FileInfo.SCI2CLibSCIAnnFun); -SCI2CCreateDir(FileInfo.SCI2CLibSCIAnnCls); -SCI2CCreateDir(FileInfo.SCI2CLibSCIFunListDir); -SCI2CCreateDir(FileInfo.SCI2CLibSCIFLFun); -SCI2CCreateDir(FileInfo.SCI2CLibSCIFLCls); -SCI2CCreateDir(FileInfo.SCI2CLibCAnnDir); -SCI2CCreateDir(FileInfo.SCI2CLibCAnnFun); -SCI2CCreateDir(FileInfo.SCI2CLibCAnnCls); -SCI2CCreateDir(FileInfo.SCI2CLibCFunListDir); -SCI2CCreateDir(FileInfo.SCI2CLibCFLFun); -SCI2CCreateDir(FileInfo.SCI2CLibCFLCls); - -// --- USER2C Library. --- -SCI2CCreateDir(FileInfo.USER2CLibDir); -SCI2CCreateDir(FileInfo.USER2CLibSCIAnnDir); -SCI2CCreateDir(FileInfo.USER2CLibSCIAnnFun); -SCI2CCreateDir(FileInfo.USER2CLibSCIAnnCls); -SCI2CCreateDir(FileInfo.USER2CLibSCIFunListDir); -SCI2CCreateDir(FileInfo.USER2CLibSCIFLFun); -SCI2CCreateDir(FileInfo.USER2CLibSCIFLCls); -SCI2CCreateDir(FileInfo.USER2CLibCAnnDir); -SCI2CCreateDir(FileInfo.USER2CLibCAnnFun); -SCI2CCreateDir(FileInfo.USER2CLibCAnnCls); -SCI2CCreateDir(FileInfo.USER2CLibCFunListDir); -SCI2CCreateDir(FileInfo.USER2CLibCFLFun); -SCI2CCreateDir(FileInfo.USER2CLibCFLCls); - -// --- Function List. --- -SCI2CCreateDir(FileInfo.FunctionList.MainDir); -SCI2CCreateDir(FileInfo.FunctionList.FunInfoDatDir); - -endfunction +function INIT_CreateDirs(FileInfo) +// function INIT_CreateDirs(FileInfo) +// ----------------------------------------------------------------- +// Create directories. +// +// Input data: +// FileInfo: structure containing all info about SCI2C files. +// +// Output data: +// --- +// +// Status: +// 03-Jan-2008 -- Raffaele Nutricato: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +// --------------------------- +// --- Create Directories. --- +// --------------------------- +// --- Main directories. --- +SCI2CCreateDir(FileInfo.WorkingDir); +SCI2CCreateDir(FileInfo.OutCCCodeDir); + +// --- SCI2C Library. --- +SCI2CCreateDir(FileInfo.SCI2CLibDir); +SCI2CCreateDir(FileInfo.SCI2CLibSCIAnnDir); +SCI2CCreateDir(FileInfo.SCI2CLibSCIAnnFun); +SCI2CCreateDir(FileInfo.SCI2CLibSCIAnnCls); +SCI2CCreateDir(FileInfo.SCI2CLibSCIFunListDir); +SCI2CCreateDir(FileInfo.SCI2CLibSCIFLFun); +SCI2CCreateDir(FileInfo.SCI2CLibSCIFLCls); +SCI2CCreateDir(FileInfo.SCI2CLibCAnnDir); +SCI2CCreateDir(FileInfo.SCI2CLibCAnnFun); +SCI2CCreateDir(FileInfo.SCI2CLibCAnnCls); +SCI2CCreateDir(FileInfo.SCI2CLibCFunListDir); +SCI2CCreateDir(FileInfo.SCI2CLibCFLFun); +SCI2CCreateDir(FileInfo.SCI2CLibCFLCls); + +// --- USER2C Library. --- +SCI2CCreateDir(FileInfo.USER2CLibDir); +SCI2CCreateDir(FileInfo.USER2CLibSCIAnnDir); +SCI2CCreateDir(FileInfo.USER2CLibSCIAnnFun); +SCI2CCreateDir(FileInfo.USER2CLibSCIAnnCls); +SCI2CCreateDir(FileInfo.USER2CLibSCIFunListDir); +SCI2CCreateDir(FileInfo.USER2CLibSCIFLFun); +SCI2CCreateDir(FileInfo.USER2CLibSCIFLCls); +SCI2CCreateDir(FileInfo.USER2CLibCAnnDir); +SCI2CCreateDir(FileInfo.USER2CLibCAnnFun); +SCI2CCreateDir(FileInfo.USER2CLibCAnnCls); +SCI2CCreateDir(FileInfo.USER2CLibCFunListDir); +SCI2CCreateDir(FileInfo.USER2CLibCFLFun); +SCI2CCreateDir(FileInfo.USER2CLibCFLCls); + +// --- Function List. --- +SCI2CCreateDir(FileInfo.FunctionList.MainDir); +SCI2CCreateDir(FileInfo.FunctionList.FunInfoDatDir); + +endfunction diff --git a/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci b/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci index fad05601..465b703f 100644 --- a/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci +++ b/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci @@ -1,12323 +1,12323 @@ -function INIT_FillSCI2LibCDirs(FileInfo,SharedInfoExtension) -// function INIT_FillSCI2LibCDirs(FileInfo,SharedInfoExtension) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Generates files for the SCI2CLib CFunctionList and CAnnotations -// directories. -// -// Input data: -// FileInfo: structure containing all info about SCI2C files. -// SharedInfoExtension: structure containing the file extensions. -// -// Output data: -// --- -// -// #RNU_RES_E -// Status: -// 24-Dec-2007 -- Raffaele Nutricato: Author. -// 24-Dec-2007 -- Alberto Morea: Test Ok. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -SCI2CLibCAnnClsDir = FileInfo.SCI2CLibCAnnCls; -ExtensionCAnnCls = SharedInfoExtension.AnnotationClasses; - -SCI2CLibCAnnFunDir = FileInfo.SCI2CLibCAnnFun; -ExtensionCAnnFun = SharedInfoExtension.AnnotationFunctions; - -SCI2CLibCFLClsDir = FileInfo.SCI2CLibCFLCls; -ExtensionCFuncListCls = SharedInfoExtension.FuncListClasses; - -SCI2CLibCFLFunDir = FileInfo.SCI2CLibCFLFun; -ExtensionCFuncListFun = SharedInfoExtension.FuncListFunctions; - -GeneralReport = FileInfo.GeneralReport; -ArgSeparator = ','; -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -// -------------------------------------------------------------------------------- -// --- Generate Function List class files for C functions of the SCI2C library. --- -// -------------------------------------------------------------------------------- -//NUT old call to INIT_GenSCI2CLibCFLCls -// INIT_GenSCI2CLibCFLCls(SCI2CLibCFLClsDir,ExtensionCFuncListCls,GeneralReport) -// SCI2CLibCFLClsDir,ExtensionCFLCls,GeneralReport - -//NUT verifica le annotazioni di tutte le classi. - -// ----------------------------------------------------------------------------------------- -// --- Generate Function List and Annotation files for C functions of the SCI2C library. --- -// ----------------------------------------------------------------------------------------- - - -// --------------------- -// --- Class Global. --- -// --------------------- -ClassName = 'Global'; -// #RNU_RES_B -//NUT: global function can work with a generic number of input arguments. -//NUT: we force the global function to work with one input argument only. -// --- Class Annotation. --- -// #RNU_RES_E -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2'+ArgSeparator+'d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'global'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class Float. --- -// --------------------- -ClassName = 'Float'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y'); - -//PrintStringInfo('c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -//PrintStringInfo('z0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'s2',ClassFileName,'file','y'); -//PrintStringInfo('c2'+ArgSeparator+'s2',ClassFileName,'file','y'); -//PrintStringInfo('z2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'float'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class Double. --- -// --------------------- -ClassName = 'Double'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('c0'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'double'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ---------------------------- -// --- Class FloatComplex. --- -// ---------------------------- -//NUT sulla complex c'e' da capire se servono due o un solo argomento. -//NUT secondo me ne va bene uno perche' serve per fare il casting di una variabile -//NUT reale in una variabile complessa -ClassName = 'FloatComplex'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''c''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'c2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'floatcomplex'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ---------------------------- -// --- Class DoubleComplex. --- -// ---------------------------- -//NUT sulla complex c'e' da capire se servono due o un solo argomento. -//NUT secondo me ne va bene uno perche' serve per fare il casting di una variabile -//NUT reale in una variabile complessa -ClassName = 'DoubleComplex'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''z''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'doublecomplex'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class Uint8. --- -// --------------------- -ClassName = 'Uint8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('c0'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'u82',ClassFileName,'file','y'); -//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'uint8'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// --------------------- -// --- Class Float. --- -// --------------------- -ClassName = 'Float'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -PrintStringInfo('d2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'s2',ClassFileName,'file','y'); -//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'float'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class Int8. --- -// --------------------- -ClassName = 'Int8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i80',ClassFileName,'file','y'); -//PrintStringInfo('c0'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i82',ClassFileName,'file','y'); -//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'int8'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// --------------------- -// --- Class Uint16. --- -// --------------------- -ClassName = 'Uint16'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'u160',ClassFileName,'file','y'); -//PrintStringInfo('c0'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'u162',ClassFileName,'file','y'); -//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'uint16'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// --------------------- -// --- Class Int16. --- -// --------------------- -ClassName = 'Int16'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''i16''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -//PrintStringInfo('c0'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'int16'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// --------------------- -// --- Class Uint32. --- -// --------------------- -ClassName = 'Uint32'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u32''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'u320',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'u320',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u320',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'u320',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u320',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'u320',ClassFileName,'file','y'); -PrintStringInfo('i320'+ArgSeparator+'u320',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'u322',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'u322',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u322',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'u322',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u322',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'u322',ClassFileName,'file','y'); -PrintStringInfo('i322'+ArgSeparator+'u322',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'uint32'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// --------------------- -// --- Class Int32. --- -// --------------------- -ClassName = 'Int32'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''i32''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'i320',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'i320',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'i320',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i320',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'i320',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i320',ClassFileName,'file','y'); -PrintStringInfo('u320'+ArgSeparator+'i320',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'i322',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'i322',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'i322',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i322',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'i322',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i322',ClassFileName,'file','y'); -PrintStringInfo('u322'+ArgSeparator+'i322',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'int32'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------ -// --- Class Sin. --- -// ------------------ -ClassName = 'Sin'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_USER',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'s2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'sin'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'sinh'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'sind'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'asinh'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'cos'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'cosh'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'tan'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'tand'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'tanh'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'exp'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'conj'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//NUT verifica -FunctionName = 'inv'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'int'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'SCI2Cresize'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'chol'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------ -// --- Class OpLogNot -// ------------------ -ClassName = 'OpLogNot'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -FunctionName = 'OpLogNot'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'ceil'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'fix'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'floor'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'round'; //BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - -// ------------------- -// --- Class bitand. --- -// ------------------- -ClassName = 'bitand'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - - -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'bitand'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'bitor'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'bitxor'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -// ------------------- -// --- Class bitcmp. --- -// ------------------- -ClassName = 'bitcmp'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - - -PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u160d0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'bitcmp'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class bitset. --- -// ------------------- -ClassName = 'bitset'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - - -PrintStringInfo('u80d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u160d0d0'+ArgSeparator+'u160',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'bitset'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------- -// --- Class bitget. --- -// ------------------- -ClassName = 'bitget'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - - -PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u160d0'+ArgSeparator+'u160',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'bitget'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -// ------------------ -// --- Class Sign --- -// ------------------ -ClassName = 'Sign'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_USER',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - - -// ------------------- -// --- Class Atan. --- -// ------------------- -ClassName = 'Atan'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -// PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -// PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -// PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -// PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'atan'; //BJ : atan AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class Isrow. --- -// ------------------- -ClassName = 'Isrow'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'g0',ClassFileName,'file','y'); -// --- Annotation Function And Function List Function. --- -FunctionName = 'isrow'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class Nthroot. --- -// ------------------- -ClassName = 'Nthroot'; - -// --- 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= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'nthroot'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------- -// --- Class Pmodulo. --- -// ------------------- -ClassName = 'Pmodulo'; - -// --- 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= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'pmodulo'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------- -// --- Class MOMENT. --- -// ------------------- -ClassName = 'moment'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(3).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(3).VAL)',ClassFileName,'file','y'); - -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2d0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2d0g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z2d0g2'+ArgSeparator+'z2',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'moment'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------- -// --- Class WCENTER. --- -// ------------------- -ClassName = 'wcenter'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2d0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); - - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'wcenter'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------- -// --- Class CENTER. --- -// ------------------- -ClassName = 'center'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2d0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); - - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'center'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------- -// --- Class CORREL. --- -// ------------------- -ClassName = 'correl'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - - - -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z2z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'correl'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------- -// --- Class COVAR. --- -// ------------------- -ClassName = 'covar'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - - - -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z2z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'covar'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - - -// ------------------- -// --- Class Nanmin. --- -// ------------------- -ClassName = 'Nanmin'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''2''',ClassFileName,'file','y'); - - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); - -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0d2',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'nanmin'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------- -// --- Class Nanmax. --- -// ------------------- -ClassName = 'Nanmax'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''2''',ClassFileName,'file','y'); - - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); - -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0d2',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); - -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s0s2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0s2',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'nanmax'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------- -// --- Class Nancumsum. --- -// ------------------- -ClassName = 'Nancumsum'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'nancumsum'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------- -// --- Class Nanmean. --- -// ------------------- -ClassName = 'Nanmean'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'nanmean'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------- -// --- Class Issquare. --- -// ------------------- -ClassName = 'Issquare'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'issquare'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------- -// --- Class Isscalar. --- -// ------------------- -ClassName = 'Isscalar'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'isscalar'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class Iscolumn. --- -// ------------------- -ClassName = 'Iscolumn'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'g0',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'iscolumn'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -// ------------------- -// --- Class Ismatrix. --- -// ------------------- -ClassName = 'Ismatrix'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'g0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'ismatrix'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class Ismatrix. --- -// ------------------- -ClassName = 'Ismatrix'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'ismatrix'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------- -// --- Class Isreal. --- -// ------------------- -ClassName = 'Isreal'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'isreal'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -ClassName = 'gcd'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'gcd'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -ClassName = 'nextpow2'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'nextpow2'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -ClassName = 'interp1'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 4',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -//---Function list class. ---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s2s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'interp1'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------- -// --- Class DCT. --- -// ------------------- -ClassName = 'dct'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -// --- Annotation Function And Function List Function. --- -FunctionName = 'dct'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class IDCT. --- -// ------------------- -ClassName = 'idct'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -// --- Annotation Function And Function List Function. --- -FunctionName = 'idct'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------- -// --- Class Sqrt. --- -// ------------------- -ClassName = 'Sqrt'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'c0',ClassFileName,'file','y'); - - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'c2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'asin'; //BJ : Works but not able to generate all cases , AS : same for float - //--> asin(%pi). -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'acos'; //BJ : Works but not able to generate all cases , AS : same for float - //--> acos(%pi) -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'acosd'; //BJ : Works but not able to generate all cases , AS : same for float - //--> acosd(%pi) -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'acosh'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'atanh'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -FunctionName = 'acot'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -FunctionName = 'acotd'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -FunctionName = 'acoth'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'acsc'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'asec'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'asech'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'asind'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'atand'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -FunctionName = 'asecd'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'acscd'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'acsch'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -FunctionName = 'sqrt'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'log'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'log2'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'log10'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'log1p'; // BJ : Ok AS : Float_Done - //--> log1p(%i) Not implemented in Scilab. - //WARNING z0log1pz0 will never happened. -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// -------------------- -// --- Class Zeros. --- -// -------------------- -ClassName = 'Zeros'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 0',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= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ)',ClassFileName,'file','y'); - -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= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_FROM_VAL(IN(1).VAL,IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(IN(2).VAL,IN(2).TP)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',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= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_FROM_VAL(IN(1).VAL,IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(IN(2).VAL,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(3)= FA_SZ_FROM_VAL(IN(3).VAL,IN(3).TP)',ClassFileName,'file','y'); - - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo(ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo(ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo(ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo(ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo(ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - - - -//NUT: no mixed input types are allowed. -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('d0d0d0'+ArgSeparator+'d3',ClassFileName,'file','y'); - - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'zeros'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'ones'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'eye'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// -------------------- -// --- Class Diag. --- -// -------------------- -ClassName = 'diag'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); - -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_ROW_DIAG(IN(1).SZ)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_COLUMN_DIAG(IN(1).SZ)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); - -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_ROW_DIAG_INS_EXT(IN(1).SZ,IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_COL_DIAG_IN_EX(IN(1).SZ,IN(2).VAL)',ClassFileName,'file','y'); - -// ---Function List Class.---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u80d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u160d0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u160d0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162d0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i80d0'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i80d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82d0'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i160d0'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i160d0'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162d0'+ArgSeparator+'i160',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'diag'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// -------------------- -// --- Class linspace & logspace --- -// -------------------- -ClassName = 'linspace'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); - -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_LINSPACE_ROW(IN(1).SZ)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(3).VAL',ClassFileName,'file','y'); - - -// ---Function List Class.---- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - - -PrintStringInfo('d0d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'linspace'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'logspace'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//--------------------- -//-----Class Rand.------ -//--------------------- - ClassName = 'rand' - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 0',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= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',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= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ)',ClassFileName,'file','y'); - -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= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_FROM_VAL(IN(1).VAL,IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(IN(2).VAL,IN(2).TP)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',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= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_FROM_VAL(IN(1).VAL,IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(IN(2).VAL,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(3)= FA_SZ_FROM_VAL(IN(3).VAL,IN(3).TP)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - - -//For rand operator -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'d2',ClassFileName,'file','y'); - -//NUT rand function doesn't behave like zeros and ones functions. -FunctionName = 'rand'; // BJ : Done => rien pour f loat -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// -------------------- -// --- Class Sum. --- -// -------------------- -ClassName = 'Sum'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s0',ClassFileName,'file','y'); //* possible ? */ -PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); //* possible ? */ -PrintStringInfo('c2s0'+ArgSeparator+'c0',ClassFileName,'file','y'); //* possible ? */ -PrintStringInfo('z2d0'+ArgSeparator+'z0',ClassFileName,'file','y'); //* possible ? */ -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('s0g2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0g2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0g2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0g2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c2g2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z2g2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2g2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('u80g2'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82g2'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82g2'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i80g2'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i82g2'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i82g2'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u160g2'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162g2'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162g2'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i160g2'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162g2'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162g2'+ArgSeparator+'i162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'sum'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'prod'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'mean'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'median'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'nansum'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'nanmedian'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'strange'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'st_deviation'; // BJ : Not implemented -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'variance'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'stdev'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'nanstdev'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// -------------------- -// --- Class Max. --- -// -------------------- -ClassName = 'Max'; - - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPPLUS(IN(1).SZ,IN(2).SZ,IN(1).TP,IN(2).TP))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPPLUS(IN(1).SZ,IN(2).SZ,IN(1).TP,IN(2).TP))',ClassFileName,'file','y'); - - -//PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -//PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i160',ClassFileName,'file','y'); - - -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); - -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); - -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); - -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0g2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0g2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u80g2'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82g2'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i80g2'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i82g2'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u160g2'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162g2'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i160g2'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162g2'+ArgSeparator+'i162',ClassFileName,'file','y'); - -FunctionName = 'max'; // BJ : Done AS : Float_Done - // WARNING : Complex case will never be - // WARNING : max(x, 2) <=> max(x, 2 * ones(x)) nothing to do with 'r' nor 'c' -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -FunctionName = 'min'; // BJ : Done AS : Float_Done - // WARNING : Complex case will never be - // WARNING : max(x, 2) <=> max(x, 2 * ones(x)) nothing to do with 'r' nor 'c' -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - -// -------------------- -// --- Class Abs. --- -// -------------------- -ClassName = 'Abs'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'abs'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'real'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -FunctionName = 'imag'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// -------------------- -// --- Class Gsort. --- -// -------------------- -ClassName = 'Gsort'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2g2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162g2'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162g2g2'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2g2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'gsort'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------------ -// --- Class OpDotStar. --- -// ------------------------ -ClassName = 'OpDotStar'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i160i60'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpDotStar'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'OpDotSlash'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------------ -// --- Class OpDotHat. --- -// ------------------------ -ClassName = 'OpDotHat'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpDotHat'; // BJ : Done AS : Float_Done but poor precision -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//NUT verifica l'hat se e' ben annotato. L'input deve essere una matrice quadrata -FunctionName = 'OpHat'; // BJ : Done AS : Float_Done but poor precision - // WARNING : d2d2 / z2z2 / d2z2 / z2d2 Not implemented in Scilab ... -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'OpDotBackSlash'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'OpLogLt'; // BJ : Done AS : Float_Done - // WARNING : Complex cases are useless. -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'OpLogLe'; // BJ : Done AS : Float_Done - // WARNING : Complex cases are useless. -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'OpLogGt'; // BJ : Done AS : Float_Done - // WARNING : Complex cases are useless. -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'OpLogGe'; // BJ : Done AS : Float_Done - // WARNING : Complex cases are useless. -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ---------------------- -// --- Class OpLogEq. --- -// ---------------------- -ClassName = 'OpLogEq'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MIN_REAL(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); //RNU -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('g0g0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('g0g0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('g2g0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('g2g0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('g0g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('g0g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -//mixed types -PrintStringInfo('c2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2c0'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -PrintStringInfo('c0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0c2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('c2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2c2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80d0'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160d0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160d0'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d0i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('d0u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('d0i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpLogEq'; // BJ : Done AS : Float_Done - // WARNING : Unable to generate g2 nor g0 code ... -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'OpLogNe'; // BJ : Done AS : Float_Done - // WARNING : Unable to generate g2 nor g0 code ... -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'OpLogAnd'; // AS : Double and Float_Done - // ERROR : z0z0OpLogAndz0 -> z0z0OpLogAndd0 -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'OpLogOr'; // AS : Double and Float_Done - // ERROR : z0z0OpLogAndz0 -> z0z0OpLogAndd0 -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class OpStar. --- -// --------------------- -ClassName = 'OpStar'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u80i80'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u80u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u80i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i80u80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i80u80'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i80u160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i80i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u160u80'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u160i80'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i160u80'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i160i80'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i160u160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u82u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u82i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i82u80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82u160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i82i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u162u80'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162i80'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162u80'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162i80'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162u160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u80u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u80i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i80u82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i80u162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i80i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u160u82'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u160i82'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - - -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u82u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u82i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i82u82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82u162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i82i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u162u82'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162i82'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162u82'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162i82'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162u162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82i82'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u82u162'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u82i162'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i82u82'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i82u162'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i82i162'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u162u82'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162i82'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162i162'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162u82'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162i82'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162u162'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i160',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpStar'; // BJ : Done AS : Float_Done - - -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -//NUT vedi che la opstar non funziona quando faccio scalare*matrice. o matrice*scalare. -//NUT la lista delle funzioni disponibili e' identica a quella della classe 3. - - -// --------------------- -// --- Class OpSlash. --- -// --------------------- -ClassName = 'OpSlash'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPSLASH(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPSLASH(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i160',ClassFileName,'file','y'); - - -FunctionName = 'OpSlash'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class OpApex. --- -// --------------------- -ClassName = 'OpApex'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpApex'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'OpDotApex'; // BJ : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// --------------------- -// --- Class IsNan. --- -// --------------------- -ClassName = 'IsNan'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - - -FunctionName = 'isnan'; // BJ : Done AS : Float_Done - // ERROR : z2isnanz2 must be z2isnand2 // z0isnanz0 must be z0isnand0 -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class OpPlus. --- -// --------------------- -ClassName = 'OpPlus'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPPLUS(IN(1).SZ,IN(2).SZ,IN(1).TP,IN(2).TP))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPPLUS(IN(1).SZ,IN(2).SZ,IN(1).TP,IN(2).TP))',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('g0g0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('g2g0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('g0g2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpPlus'; // BJ : Done AS : Float_Done - // ERROR : Strings are not correctly allowed. -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - -// ---------------------- -// --- Class OpMinus. --- -// ---------------------- -ClassName = 'OpMinus'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPMINUS(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPMINUS(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- - -FunctionName = 'OpMinus'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class OpRc. --- -// ------------------- -ClassName = 'OpRc'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_ADD(IN(1).SZ(2),IN(2).SZ(2))',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types considered -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -PrintStringInfo('c0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); - -PrintStringInfo('z0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('z0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); - -PrintStringInfo('s0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpRc'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class OpCc. --- -// ------------------- -ClassName = 'OpCc'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(1).SZ(1),IN(2).SZ(1))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types considered -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -PrintStringInfo('c0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); - -PrintStringInfo('z0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('z0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); - -PrintStringInfo('s0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpCc'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------- -// --- Class cat. --- -// ------------------- -ClassName = 'cat'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(2).TP,IN(3).TP)',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(3).SZ(1))',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(2)= FA_ADD(IN(2).SZ(2),IN(3).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_ROW_COLUMN_CAT(IN(1).VAL,IN(2).SZ(1),IN(3).SZ(1)))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_ROW_COLUMN_CAT(IN(1).VAL,IN(2).SZ(2),IN(3).SZ(2)))',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(1)= FA_SZ_ROW_COLUMN_CAT(IN(1).VAL,IN(2).SZ(1),IN(3).SZ(1))',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(2)= FA_SZ_ROW_COLUMN_CAT(IN(1).VAL,IN(2).SZ(2),IN(3).SZ(2))',ClassFileName,'file','y'); - - -// --- Function List Class. --- -//NUT: no mixed data types considered -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d2d2' +ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0u82u82' +ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('d0u162u162' +ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('d0i82i82' +ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('d0i162i162' +ArgSeparator+'i162',ClassFileName,'file','y'); - - - -PrintStringInfo('c0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); - -PrintStringInfo('z0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('u80u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('z0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); - -PrintStringInfo('s0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cat'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class Find. --- -// ------------------- -ClassName = 'Find'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MAX(FA_MUL(IN(1).SZ(1),IN(1).SZ(2)),''1'')',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_MAX(FA_MUL(IN(1).SZ(1),IN(1).SZ(2)),''1'')',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(FA_MIN( IN(2).VAL ,FA_MUL(IN(1).SZ(1),IN(1).SZ(2))) ,IN(2).TP)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(FA_MIN( IN(2).VAL ,FA_MUL(IN(1).SZ(1),IN(1).SZ(2))) ,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SZ_FROM_VAL(FA_MIN( IN(2).VAL ,FA_MUL(IN(1).SZ(1),IN(1).SZ(2))) ,IN(2).TP)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80u80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160u160',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80i80',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i60i60',ClassFileName,'file','y'); - -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); - - -PrintStringInfo('s0s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80u80',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160u160',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80i80',ClassFileName,'file','y'); -PrintStringInfo('i160i60'+ArgSeparator+'i60i60',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'find'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class Length. --- -// --------------------- -ClassName = 'Length'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_USER',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'d0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'length'; // AS : done AS : Float_Done - // warning for string input , the length is +1 than scilab because - // in C we must take in account the ending '\0' -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'type'; // AS : done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class Size. --- -// ------------------- -ClassName = 'Size'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'d2',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -PrintStringInfo('s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s0s0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0d0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'s0s0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'d0d0',ClassFileName,'file','y'); - -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); - -PrintStringInfo('d2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'size'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class Return. --- -// --------------------- -ClassName = 'Return'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 0',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo(ArgSeparator,ClassFileName,'file','y'); - -//NUT anche se metto Return funziona bene comunque! cerca di capire il motivo. -//NUT limited use to zero in and out args only. -// --- Annotation Function And Function List Function. --- -FunctionName = 'return'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ---------------------- -// --- Class OpColon. --- -// ---------------------- -ClassName = 'OpColon'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MIN_REAL(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); - - - -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(FA_ADD(FA_SUB(FA_REAL(IN(2).VAL,IN(2).TP),FA_REAL(IN(1).VAL,IN(1).TP)),''1''),FA_TP_REAL(IN(2).TP))',ClassFileName,'file','y'); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MIN_REAL(IN(1).TP,FA_TP_MIN_REAL(IN(2).TP,IN(3).TP))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(FA_ADD(FA_DIV(FA_SUB(FA_REAL(IN(3).VAL,IN(3).TP),FA_REAL(IN(1).VAL, IN(1).TP)),FA_REAL(IN(2).VAL,IN(2).TP)),''1''),FA_TP_REAL(IN(3).TP))',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); - -PrintStringInfo('s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); - - -PrintStringInfo('s0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); - - -PrintStringInfo('s0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); - - - - -PrintStringInfo('s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z0z0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); - -PrintStringInfo('s0s0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s0c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s0c0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -PrintStringInfo('c0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('c0c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('c0s0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -PrintStringInfo('d0z0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0d0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); - -PrintStringInfo('z0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('z0z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('z0d0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); - - -PrintStringInfo('s0s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c0c0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z0z0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); - - -PrintStringInfo('s0s0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0c0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0c0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('c0s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('c0c0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('c0s0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('d0z0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0z0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); - -PrintStringInfo('z0d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('z0z0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('z0d0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpColon'; // AS : done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ---------------------- -// --- Class IsEmpty. --- -// ---------------------- -ClassName = 'IsEmpty'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_USER',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'isempty'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ---------------------- -// --- Class Trace. --- -// ---------------------- -ClassName = 'Trace'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'trace'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//NUT det is a little bit complex but for the moment we assume that -//NUT that det works as trace function. -FunctionName = 'det'; // AS : Done AS : Float_Done - -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// -------------------- -// --- Class OpIns. --- -// -------------------- -ClassName = 'OpIns'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 5',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s2s0s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2s2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s0s0s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s0s2s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2s0s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2s2s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s0s2s2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2s0s2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2s2s2'+ArgSeparator,ClassFileName,'file','y'); - -PrintStringInfo('d2d0d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2d2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d0d0d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d0d2d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2d0d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2d2d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d0d2d2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2d0d2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2d2d2'+ArgSeparator,ClassFileName,'file','y'); - -PrintStringInfo('c2s0c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2c2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s0s0c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s0s2c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2s0c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2s2c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s0s2c2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2s0c2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2s2c2'+ArgSeparator,ClassFileName,'file','y'); - -PrintStringInfo('z2d0z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2z2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d0d0z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d0d2z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2d0z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2d2z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d0d2z2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2d0z2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2d2z2'+ArgSeparator,ClassFileName,'file','y'); - -//Mixed input arguments -PrintStringInfo('s2s0c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2c2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s0s0c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s0s2c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2s0c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2s2c0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s0s2c2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2s0c2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2s2s2c2'+ArgSeparator,ClassFileName,'file','y'); - -PrintStringInfo('d2d0z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2z2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d0d0z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d0d2z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2d0z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2d2z0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d0d2z2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2d0z2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2d2d2z2'+ArgSeparator,ClassFileName,'file','y'); - -PrintStringInfo('c2s0s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2s2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s0s0s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s0s2s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2s0s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2s2s0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s0s2s2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2s0s2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('c2s2s2s2'+ArgSeparator,ClassFileName,'file','y'); - -PrintStringInfo('z2d0d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2d2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d0d0d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d0d2d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2d0d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2d2d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d0d2d2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2d0d2'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('z2d2d2d2'+ArgSeparator,ClassFileName,'file','y'); - -// Hypermatrix management -PrintStringInfo('d3d0d0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d3d0d0d0d0'+ArgSeparator,ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpIns'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// -------------------- -// --- Class OpExt. --- -// -------------------- -ClassName = 'OpExt'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(2).SZ(1),IN(2).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(2).SZ(1),IN(2).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(3).SZ(1),IN(3).SZ(2))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(2).SZ(1),IN(2).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(3).SZ(1),IN(3).SZ(2))',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s2s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -PrintStringInfo('c2s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c2s2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); - -PrintStringInfo('z2d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z2d2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// Hypermatrix Management -PrintStringInfo('s3s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d3d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d3d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d3s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpExt'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class Disp. --- -// ------------------- -ClassName = 'Disp'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'',ClassFileName,'file','y'); - -PrintStringInfo('d3'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'disp'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class String --- -// ------------------- -ClassName = 'String'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(IN.SZ)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(IN.SZ)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'g0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'g2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'string'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ---------------------- -// --- Class OpEqual. --- -// ---------------------- -ClassName = 'OpEqual'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ)',ClassFileName,'file','y'); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(2).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(IN(2).SZ)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SZ_2(IN(2).SZ)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); -//NUT per ora non considero le equal con nin != 1 - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpEqual'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// -------------------- -// --- Class Mopen. --- -// -------------------- -ClassName = 'Mopen'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= FA_TP_USER',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= FA_TP_USER',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= FA_TP_USER',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2'+ArgSeparator+'f0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'f0s0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'f0d0',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'f0',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'f0s0',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'f0d0',ClassFileName,'file','y'); -PrintStringInfo('g2g2s0'+ArgSeparator+'f0s0',ClassFileName,'file','y'); -PrintStringInfo('g2g2s0'+ArgSeparator+'f0d0',ClassFileName,'file','y'); -PrintStringInfo('g2g2d0'+ArgSeparator+'f0s0',ClassFileName,'file','y'); -PrintStringInfo('g2g2d0'+ArgSeparator+'f0d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'mopen'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class Mput. --- -// ------------------- -ClassName = 'Mput'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''i''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('s2g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d0g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('d2g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('u80g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('u82g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('i80g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('i82g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('u160g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('u162g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('i160g2f0'+ArgSeparator,ClassFileName,'file','y'); -PrintStringInfo('i162g2f0'+ArgSeparator,ClassFileName,'file','y'); - -PrintStringInfo('s0g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); //NUT la mput e' strana -PrintStringInfo('s2g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); -PrintStringInfo('d0g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); -PrintStringInfo('d2g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); -PrintStringInfo('u80g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); -PrintStringInfo('u82g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); -PrintStringInfo('i80g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); -PrintStringInfo('i82g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); -PrintStringInfo('u160g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); -PrintStringInfo('u162g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); -PrintStringInfo('i160g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); -PrintStringInfo('i162g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'mput'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class Mget. --- -// ------------------- -ClassName = 'Mget'; -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_USER',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_RTMAX(FA_SZ_FROM_VAL(IN(1).VAL,IN(1).TP))',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0g2f0'+ArgSeparator+'s0',ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('s0g2f0'+ArgSeparator+'d0',ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('d0g2f0'+ArgSeparator+'s0',ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('d0g2f0'+ArgSeparator+'d0',ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('s0g2f0'+ArgSeparator+'s2',ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('s0g2f0'+ArgSeparator+'d2',ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('d0g2f0'+ArgSeparator+'s2',ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('d0g2f0'+ArgSeparator+'d2',ClassFileName,'file','y'); //NUT da chiarire - -// --- Annotation Function And Function List Function. --- -FunctionName = 'mget'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class Mclose. --- -// --------------------- -ClassName = 'Mclose'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 0',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''i''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('f0'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('f0'+ArgSeparator+'i0',ClassFileName,'file','y'); //NUT da chiarire - -// --- Annotation Function And Function List Function. --- -FunctionName = 'mclose'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class Mseek. --- -// --------------------- -ClassName = 'Mseek'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('s0f0'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('s0f0g2'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire - -PrintStringInfo('d0'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire -PrintStringInfo('d0f0'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire - - -PrintStringInfo('d0f0g2'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire - -// --- Annotation Function And Function List Function. --- -FunctionName = 'mseek'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// --------------------- -// --- Class Convol. --- -// --------------------- -ClassName = 'Convol'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SUB(FA_ADD(IN(1).SZ(2),IN(2).SZ(2)),''1'')',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SUB(FA_ADD(IN(1).SZ(2),IN(2).SZ(2)),''1'')',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(FA_TP_MAX(IN(1).TP,IN(2).TP),IN(3).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= FA_TP_MAX(FA_TP_MAX(IN(1).TP,IN(2).TP),IN(3).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SUB(FA_ADD(IN(1).SZ(2),IN(2).SZ(2)),''1'')',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s0s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0c0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'z0z0',ClassFileName,'file','y'); - -PrintStringInfo('s0s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2c2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2c2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2z2',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2c2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); - -PrintStringInfo('s0s0s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0c0'+ArgSeparator+'c0c0',ClassFileName,'file','y'); -PrintStringInfo('z0z0z0'+ArgSeparator+'z0z0',ClassFileName,'file','y'); - -PrintStringInfo('s0s2s0'+ArgSeparator+'s2s0',ClassFileName,'file','y'); -PrintStringInfo('d0d2d0'+ArgSeparator+'d2d0',ClassFileName,'file','y'); -PrintStringInfo('c0c2c0'+ArgSeparator+'c2c0',ClassFileName,'file','y'); -PrintStringInfo('z0z2z0'+ArgSeparator+'z2z0',ClassFileName,'file','y'); - -PrintStringInfo('s2s2s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('c2c2c2'+ArgSeparator+'c2c2',ClassFileName,'file','y'); -PrintStringInfo('z2z2z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); - -PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); - -//added combination - -PrintStringInfo('d2d0'+ArgSeparator+'d0d2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z0z2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z0z2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z0z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'convol'; // AS : done except 2 ouputs cases and 3 inputs cases AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class IFFT. --- -// ------------------- -ClassName = 'IFFT'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'ifft'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------ -// --- Class FFT. --- -// ------------------ -ClassName = 'FFT'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// scilab2c doesn't handle multidimensionnal Fft - -//PrintStringInfo('s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -//PrintStringInfo('d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('s0s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -//PrintStringInfo('d0d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -//PrintStringInfo('c0s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -//PrintStringInfo('z0d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -//PrintStringInfo('s2s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -//PrintStringInfo('d2d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('s2s0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -//PrintStringInfo('d2d0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -//PrintStringInfo('c2s0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -//PrintStringInfo('z2d0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); - -//PrintStringInfo('s0s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -//PrintStringInfo('d0d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('s0s0s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -//PrintStringInfo('d0d0d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -//PrintStringInfo('c0s0s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -//PrintStringInfo('z0d0d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -//PrintStringInfo('s2s0s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -//PrintStringInfo('d2d0d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('s2s0s0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -//PrintStringInfo('d2d0d0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -//PrintStringInfo('c2s0s0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -//PrintStringInfo('z2d0d0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); - - -//NUT non metto tutte le combinazioni ma prima cerco di capire cosa mi offre INRIA -//NUT come libreria a disposizione. -// --- Annotation Function And Function List Function. --- -FunctionName = 'fft'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ----------------------- -// --- Class FFTShift. --- -// ----------------------- -ClassName = 'FFTShift'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s0g2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0g2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0g2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0g2'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2g2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'fftshift'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// -------------------- -// --- Class Meanf. --- -// -------------------- -ClassName = 'Meanf'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP, IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP, IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(3).VAL)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(3).VAL)',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2s2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2d2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -// -PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s0c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c0c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -// -PrintStringInfo('s0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); - -PrintStringInfo('s2c2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'d0',ClassFileName,'file','y'); - -PrintStringInfo('s0c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('d0z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('c0c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z0z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); - -PrintStringInfo('s2c2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2z2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2c2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2z2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'meanf'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'variancef'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'stdevf'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// -------------------- -// --- Class Frmag. --- -// -------------------- -ClassName = 'Frmag'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(2).VAL',ClassFileName,'file','y'); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); - -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(2).VAL',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(2).VAL',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(3).VAL',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(3).VAL',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(3).VAL',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2d0'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); - -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); -PrintStringInfo('s2s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s2s0'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s0s0s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'frmag'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------ -// --- Class Lev. --- -// ------------------ -ClassName = 'Lev'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); - -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SUB(FA_ADD(IN(1).SZ(1),IN(1).SZ(2)),''2'')',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SUB(FA_ADD(IN(1).SZ(1),IN(1).SZ(2)),''2'')',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SUB(FA_ADD(IN(1).SZ(1),IN(1).SZ(2)),''2'')',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= FA_SUB(FA_ADD(IN(1).SZ(1),IN(1).SZ(2)),''2'')',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2s0s2',ClassFileName,'file','y'); - -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d0d2',ClassFileName,'file','y'); - -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2c0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2c0c2',ClassFileName,'file','y'); - -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2z0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2z0z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'lev'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// -------------------------- -// --- Class OpBackSlash. --- -// -------------------------- -ClassName = 'OpBackSlash'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP) ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPBACKSLASH(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPBACKSLASH(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); - -PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - - -PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); - -PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); - -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); - -PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'OpBackSlash'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ----------------------- -// --- Class Cepstrum. --- -// ----------------------- -ClassName = 'Cepstrum'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP) ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo('s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'Cepstrum'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class TOEPLITZ ---------------- -//------------------------------------ -ClassName = 'toeplitz'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'toeplitz'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class CROSS ---------------- -//------------------------------------ -ClassName = 'cross'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cross'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class NDGRID ---------------- -//------------------------------------ -ClassName = 'ndgrid'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('z2z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'ndgrid'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -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 ISINF ---------------- -//------------------------------------ -ClassName = 'isinf'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'isinf'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class CALERF ---------------- -//------------------------------------ -ClassName = 'calerf'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0d0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2d0'+ArgSeparator+'s2',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'calerf'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class ERF ---------------- -//------------------------------------ -ClassName = 'erf'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'erf'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class GAMMA ---------------- -//------------------------------------ -ClassName = 'gamma'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'gamma'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class GAMMALN ---------------- -//------------------------------------ -ClassName = 'gammaln'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -//------------------------------------ -//---- Class BETA ---------------- -//------------------------------------ -ClassName = 'beta'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'beta'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class BESSELI ---------------- -//------------------------------------ -ClassName = 'besseli'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'besseli'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class BESSELJ ---------------- -//------------------------------------ -ClassName = 'besselj'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'besselj'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class BESSELK ---------------- -//------------------------------------ -ClassName = 'besselk'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'besselk'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class BESSELY ---------------- -//------------------------------------ -ClassName = 'bessely'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'bessely'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - -//------------------------------------ -//---- Class ERFC ---------------- -//------------------------------------ -ClassName = 'erfc'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'erfc'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class ERFCX ---------------- -//------------------------------------ -ClassName = 'erfcx'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'erfcx'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class ERFINV ---------------- -//------------------------------------ -ClassName = 'erfinv'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'erfinv'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------- -// --- Class Spec. --- -// ------------------- -ClassName = 'Spec'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); //FOR INRIA FA_TP_MAX NEEDS 2 Input args -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); //FOR INRIA FA_TP_MAX NEEDS 2 Input args -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// Edited by Sandeep Gupta, IITB FOSSEE Project. -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo('s0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s0'+ArgSeparator+'c0c0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'z0z0',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0c0',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0z0',ClassFileName,'file','y'); - -PrintStringInfo('s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'c2c2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); - -PrintStringInfo('d2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'z2d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'z2d2z2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'z2d2z2z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'spec'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ------------------- -// --- Class Part. --- -// ------------------- -ClassName = 'Part'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_RTMAX(IN(1).SZ(2))',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo('g2s0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('g2d0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('g2s2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('g2d2'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'part'; // to code -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ----------------------- -// --- Class Strindex. --- -// ----------------------- -ClassName = 'Strindex'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_RTMAX(IN(1).SZ(2))',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -PrintStringInfo('g2g2'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'strindex'; // to code -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -// ----------------------- -// --- Class StrSubSt. --- -// ----------------------- -//ClassName = 'StrSubSt'; - -// --- Class Annotation. --- -//PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -//ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -//PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -//PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(2)= FA_SZ_RTMAX(FA_MUL(IN(1).SZ(2),IN(3).SZ(2)))',ClassFileName,'file','y'); - -// --- Function List Class. --- -//NUT: no mixed data types -//ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -//PrintStringInfo('g2g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -//FunctionName = 'strsubst'; // to code -//PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -//INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -//INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -// ------------------ -// --- Class Expm. --- -// ------------------ -ClassName = 'Expm'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'expm'; // AS : Done AS : Float_Done -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---Functions for Scilab-arduino ---- -//------------------------------------ - - -//------------------------------------ -//---- Class cmd_digital_out --------- -//------------------------------------ -ClassName = 'cmd_digital_out'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0u80'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_digital_out'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class cmd_digital_in ---------- -//------------------------------------ -ClassName = 'cmd_digital_in'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_digital_in'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class cmd_analog_out ---------- -//------------------------------------ -ClassName = 'cmd_analog_out'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0u80'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_analog_out'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class cmd_analog_in ----------- -//------------------------------------ -ClassName = 'cmd_analog_in'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'u160',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_analog_in'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class cmd_dcmotor_setup ------- -//------------------------------------ -ClassName = 'cmd_dcmotor_setup'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 5',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_dcmotor_setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class cmd_dcmotor_run ------- -//------------------------------------ -ClassName = 'cmd_dcmotor_run'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0i160'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_dcmotor_run'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//---Class cmd_servo_attach.--- -ClassName = 'cmd_servo_attach'; - -//----Class Annotation.---- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -//---Function List Class.----- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_servo_attach'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//---Class cmd_servo_detach.--- -ClassName = 'cmd_servo_detach'; - -//----Class Annotation.---- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -//---Function List Class.----- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_servo_detach'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//---Class cmd_servo_move.--- -ClassName = 'cmd_servo_move'; - -//----Class Annotation.---- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -//---Function List Class.----- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_servo_move'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class cmd_analog_in_volt ----------- -//------------------------------------ -ClassName = 'cmd_analog_in_volt'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_analog_in_volt'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class cmd_i2c_dev ----------- -//------------------------------------ -ClassName = 'cmd_i2c_dev'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_i2c_dev'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class cmd_i2c_write ----------- -//------------------------------------ -ClassName = 'cmd_i2c_write'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('u80d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_i2c_write'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class cmd_i2c_read ----------- -//------------------------------------ -ClassName = 'cmd_i2c_read'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u80d0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_i2c_read'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class cmd_i2c_read_register ----------- -//------------------------------------ -ClassName = 'cmd_i2c_read_register'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('u80d0'+ArgSeparator+'u160',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_i2c_read_register'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -//------------------------------------ -//---- Class cmd_i2c_write_register ----------- -//------------------------------------ -ClassName = 'cmd_i2c_write_register'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('u80d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_i2c_write_register'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -//------------------------------------ -//---- Class Sleep ------------------- - -//------------------------------------ -ClassName = 'sleep'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'sleep'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class cmd_analog_out_volt ---------- -//------------------------------------ -ClassName = 'cmd_analog_out_volt'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0s0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_analog_out_volt'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class cmd_dcmotor_release ------- -//------------------------------------ -ClassName = 'cmd_dcmotor_release'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cmd_dcmotor_release'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---Functions for AVR --------------- -//------------------------------------ - - -//------------------------------------ -//---- Class AVRDigitalSetup --------- -//------------------------------------ -ClassName = 'AVRDigitalSetup'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRDigitalSetup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class AVRDigitalPortSetup --------- -//------------------------------------ -ClassName = 'AVRDigitalPortSetup'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRDigitalPortSetup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - - -//------------------------------------ -//---- Class AVRDigitalOut ----------- -//------------------------------------ -ClassName = 'AVRDigitalOut'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); - -//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRDigitalOut'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class AVRDigitalOut ----------- -//------------------------------------ -ClassName = 'AVRDigitalIn'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRDigitalIn'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class AVRADCSetup ----------- -//------------------------------------ -ClassName = 'AVRADCSetup'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRADCSetup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class AVRReadADC ----------- -//------------------------------------ -ClassName = 'AVRReadADC'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRReadADC'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class AVRPWM0Setup ------------- -//------------------------------------ -ClassName = 'AVRPWM0Setup'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRPWM0Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class AVRPWM2Setup ------------- -//------------------------------------ -ClassName = 'AVRPWM2Setup'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRPWM2Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class AVRPWM1Setup ------------- -//------------------------------------ -ClassName = 'AVRPWM1Setup'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRPWM1Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -//------------------------------------ -//---- Class AVRPWM0SetDuty ----------- -//------------------------------------ -ClassName = 'AVRPWM0SetDuty'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRPWM0SetDuty'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class AVRPWM2SetDuty ----------- -//------------------------------------ -ClassName = 'AVRPWM2SetDuty'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRPWM2SetDuty'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class AVRPWM1SetDuty ----------- -//------------------------------------ -ClassName = 'AVRPWM1SetDuty'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRPWM1SetDuty'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - -//------------------------------------ -//---- Class AVRTimerInit ----------- -//------------------------------------ -ClassName = 'AVRTimerSetup'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRTimerSetup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - -//------------------------------------ -//---- Class AVRGetTimerValue ----------- -//------------------------------------ -ClassName = 'AVRGetTimerValue'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRGetTimerValue'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class AVRSleep ----------- -//------------------------------------ -ClassName = 'AVRSleep'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRSleep'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -//------------------------------------ -//---- Class AVRUARTSetup ----------- -//------------------------------------ -ClassName = 'AVRUARTSetup'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRUARTSetup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class AVRUARTTransmit ----------- -//------------------------------------ -ClassName = 'AVRUARTTransmit'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('g0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -// -//PrintStringInfo('d2'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'u80',ClassFileName,'file','y'); - -//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRUARTTransmit'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class AVRUARTReceiveChar ----------- -//------------------------------------ -ClassName = 'AVRUARTReceiveChar'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 0',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'AVRUARTReceiveChar'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -//------------------------------------ -//---- Class RPI_0IN_Void ---------- -//------------------------------------ -ClassName = 'RPI_0IN_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 0',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_gertBoardSPISetup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_0IN_u8 ------------ -//------------------------------------ -ClassName = 'RPI_0IN_u8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 0',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo(''+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_boardRev'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_digitalReadByte'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_0IN_u32 ----------- -//------------------------------------ -ClassName = 'RPI_0IN_u32'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 0',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u32''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo(''+ArgSeparator+'u320',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_millis'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_micros'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_1IN_u8_Void ------- -//------------------------------------ -ClassName = 'RPI_1IN_u8_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_digitalWriteByte'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_lcdClear'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_lcdHome'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_piGlowSetup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_serialClose'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_serialFlush'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_softPwmStop'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_softToneStop'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_1IN_u16_Void ------ -//------------------------------------ -ClassName = 'RPI_1IN_u16_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u160'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_pwmClock'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_1IN_u32_Void ------ -//------------------------------------ -ClassName = 'RPI_1IN_u32_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u320'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_pwmRange'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_delay'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_delayMicro'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_1IN_g_Void -------- -//------------------------------------ -ClassName = 'RPI_1IN_g_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_pwmMode'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_1IN_u8_i8 --------- -//------------------------------------ -ClassName = 'RPI_1IN_u8_i8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'i80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_I2CSetup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_wpiToGpio'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_physToGpio'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_1IN_u16_i8 -------- -//------------------------------------ -ClassName = 'RPI_1IN_u16_i8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u160'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'i80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_I2CRead'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_gertboardAnalogSetup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_sn3218Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_1IN_g_i8 ---------- -//------------------------------------ -ClassName = 'RPI_1IN_g_i8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2'+ArgSeparator+'i80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_pinNumbering'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_1IN_u8_u8 --------- -//------------------------------------ -ClassName = 'RPI_1IN_u8_u8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_getAlt'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_digitalRead'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_serialDataAvail'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_softToneCreate'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_1IN_u16_u16 ------- -//------------------------------------ -ClassName = 'RPI_1IN_u16_u16'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'u160',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_gertboardAnalogRead'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_1IN_u8_g ------ -//------------------------------------ -ClassName = 'RPI_1IN_u8_g'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -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'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_serialGetchar'; - -//------------------------------------ -//---- Class RPI_2IN_u8u8_Void ----- -//------------------------------------ -ClassName = 'RPI_2IN_u8u8_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80u80'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_pinModeAlt'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_lcdCursor'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_lcdSendCommand'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_lcdCursorBlink'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_lcdDisplay'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_lcdPutchar'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_padDrive'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_piGlowLeg'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_piGlowRing'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_digitalWrite'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_serialPutchar'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_2IN_u8u16_Void ---- -//------------------------------------ -ClassName = 'RPI_2IN_u8u16_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80u160'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_pwmWrite'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_pwmToneWrite'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_softPwmWrite'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_2IN_u16u16_Void --- -//------------------------------------ -ClassName = 'RPI_2IN_u16u16_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u160u160'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_gertboardAnalogWrite'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_2IN_u8g_Void ------ -//------------------------------------ -ClassName = 'RPI_2IN_u8g_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80g2'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0g2'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_pinMode'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_lcdPuts'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_lcdPrintf'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_pullControl'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_serialPrintf'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_serialPuts'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_2IN_u8u32_Void ---- -//------------------------------------ -ClassName = 'RPI_2IN_u8u32_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80u320'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_softToneWrite'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_2IN_u8i16_i8 ------ -//------------------------------------ -ClassName = 'RPI_2IN_u8i16_i8'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80i160'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'i80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_waitForInterrupt'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_2IN_u16u16_i8 ----- -//------------------------------------ -ClassName = 'RPI_2IN_u16u16_i8'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u160u160'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'i80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_I2CWrite'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_I2CReadReg8'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_I2CReadReg16'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_2IN_gu32_i8 ----- -//------------------------------------ -ClassName = 'RPI_2IN_gu32_i8'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2u320'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('g2d0'+ArgSeparator+'i80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_serialOpen'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_2IN_u16u8_u8 ----- -//------------------------------------ -ClassName = 'RPI_2IN_u16u8_u8'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u160u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_pcf8574Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_pcf8591Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_mcp23008Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_mcp23016Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_mcp23017Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_3IN_u8u8u8_Void --- -//------------------------------------ -ClassName = 'RPI_3IN_u8u8u8_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80u80u80'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_lcdPosition'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_piGlow1'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_3IN_u16u16u16_i8 -- -//------------------------------------ -ClassName = 'RPI_3IN_u16u16u16_i8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u160u160u160'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'i80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_I2CWriteReg8'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_I2CWriteReg16'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_3IN_u8u8u8_u8 ----- -//------------------------------------ -ClassName = 'RPI_3IN_u8u8u8_u8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_shiftIn'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_3IN_u8u16u16_u8 --- -//------------------------------------ -ClassName = 'RPI_3IN_u8u16u16_u8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80u160u160'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_softPwmCreate'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_3IN_u16u8u16_u8 --- -//------------------------------------ -ClassName = 'RPI_3IN_u16u8u16_u8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u160u160u160'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_mcp23s08Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'RPI_mcp23s17Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_4IN_u8u8u8u8_Void - -//------------------------------------ -ClassName = 'RPI_4IN_u8u8u8u8_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80u80u80u80'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_shiftOut'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//-------------------------------------- -//---- Class RPI_5IN_u16u8u8u8u8_i8 -- -//-------------------------------------- -ClassName = 'RPI_5IN_u16u8u8u8u8_i8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 5',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u160u80u80u80u80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0d0d0'+ArgSeparator+'i80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_sr595Setup'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_10IN_u8x10_Void --- -//------------------------------------ -ClassName = 'RPI_10IN_u8x10_Void'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 10',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80u80u80u80u80u80u80u80u80u80'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0d0d0d0d0d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_lcdCharDef'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RPI_13IN_u8x13_u8 ----- -//------------------------------------ -ClassName = 'RPI_13IN_u8x13_u8'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 10',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('u80u80u80u80u80u80u80u80u80u80u80u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('d0d0d0d0d0d0d0d0d0d0d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'RPI_lcdInit'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class ODE --------------------- -//------------------------------------ -ClassName = 'ODE'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(1).SZ(2),IN(3).SZ(2))',ClassFileName,'file','y'); - -//Arguements specified: initial value, start time, end time, ode function -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); - -//Arguements specified: solver type, initial value, start time, end time, ode function -PrintStringInfo('NIN= 5',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(2).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(2).SZ(2),IN(4).SZ(2))',ClassFileName,'file','y'); - -//Arguements specified: solver type, initial value, start time, end time, ode function -PrintStringInfo('NIN= 5',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(2).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(4).SZ(2)',ClassFileName,'file','y'); - -//Arguements specified: initial value, start time, end time, relative tolerance, -// absolute tolerance, ode function -PrintStringInfo('NIN= 6',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(1).SZ(2),IN(3).SZ(2))',ClassFileName,'file','y'); - -//Arguements specified: initial value, start time, end time, relative tolerance, -// absolute tolerance, ode function -PrintStringInfo('NIN= 6',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0fn0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0d0fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d0d2fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0d2fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); - -PrintStringInfo('g2d0d0d0fn0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('g2d2d0d0fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('g2d0d0d2fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('g2d2d0d2fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); - -PrintStringInfo('d0d0d0d0d0fn0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0d0d0d0fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d0d2d0d0fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0d2d0d0fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'ode'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CUMSUM --------------------- -//------------------------------------ -ClassName = 'CUMSUM'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82g2'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82g2'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162g2'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162g2'+ArgSeparator+'i162',ClassFileName,'file','y'); -// --- Annotation Function And Function List Function. --- -FunctionName = 'cumsum'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'cumprod'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class MATRIX--------------------- -//------------------------------------ -ClassName = 'MATRIX'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(2).VAL',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(3).VAL',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2s0s0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2u160u160'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2u80u80'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('z2d0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2s0s0'+ArgSeparator+'z2',ClassFileName,'file','y'); - -PrintStringInfo('s2d0d0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2u160u160'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2u80u80'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('u162d0d0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162s0s0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u82g2'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82g2'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162g2'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162g2'+ArgSeparator+'i162',ClassFileName,'file','y'); -// --- Annotation Function And Function List Function. --- -FunctionName = 'matrix'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class NNZ--------------------- -//------------------------------------ -ClassName = 'NNZ'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'u160',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'nnz'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class PERTRANS--------------------- -//------------------------------------ -ClassName = 'PERTRANS'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'pertrans'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class TRIU --------------------- -//------------------------------------ -ClassName = 'TRIU'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80d0'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160d0'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160d0'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'triu'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -FunctionName = 'tril'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class KRON -------------------- -//------------------------------------ -ClassName = 'KRON'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(1).SZ(1),IN(2).SZ(1))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(1).SZ(2),IN(2).SZ(2))',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'kron'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class HANK -------------------- -//------------------------------------ -ClassName = 'HANK'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(1).VAL,IN(3).SZ(1))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(2).VAL,IN(3).SZ(1))',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'hank'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); -//------------------------------------ -//---- Class FLIPDIM ----------------- -//------------------------------------ -ClassName = 'FLIPDIM'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); -PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); - -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('d2d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s0d0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82u80u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82i80u80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u160u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162i160i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u82d0d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82d0d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162d0d0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162d0d0'+ArgSeparator+'i162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'flipdim'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class DIFF ----------------- -//------------------------------------ -ClassName = 'DIFF'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_DIFF(IN(1).SZ,''1'',''0''))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_DIFF(IN(1).SZ,''1'',''0''))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_DIFF(IN(1).SZ,IN(2).VAL,''0''))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_DIFF(IN(1).SZ,IN(2).VAL,''0''))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_DIFF(IN(1).SZ,IN(2).VAL, IN(3).VAL))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_DIFF(IN(1).SZ,IN(2).VAL, IN(3).VAL))',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2d0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82u80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162u160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); - -PrintStringInfo('d2d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2d0d0'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2s0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u82d0d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u82u80d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('i82d0d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i82u80d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('u162d0d0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('u162u160d0'+ArgSeparator+'u162',ClassFileName,'file','y'); -PrintStringInfo('i162d0d0'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('i162u160d0'+ArgSeparator+'i162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'diff'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class NORM -------------------- -//------------------------------------ -ClassName = 'NORM'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',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('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); - -PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2d0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -PrintStringInfo('d2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2g2'+ArgSeparator+'s0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'norm'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CONVSTR -------------------- -//------------------------------------ -ClassName = 'CONVSTR'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('g0g0'+ArgSeparator+'g0',ClassFileName,'file','y'); -PrintStringInfo('g2g0'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'convstr'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class cvCreateImage -------------------- -//------------------------------------ -ClassName = 'CV_CreateImage'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',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('d0d0g2d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_CreateImage'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class cvLoadImage -------------------- -//------------------------------------ -ClassName = 'CV_LoadImage'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''mt''',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('g2d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_LoadImage'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class cvShowImage ------------- -//------------------------------------ -ClassName = 'CV_ShowImage'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',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('g2mt0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('mt0'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_ShowImage'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'CV_SaveImage'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_WaitKey -------------- -//------------------------------------ -ClassName = 'CV_WaitKey'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',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('d0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_WaitKey'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_CvtColor ------------- -//------------------------------------ -ClassName = 'CV_CvtColor'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''mt''',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('mt0g2'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_CvtColor'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_GetImgSize ----------- -//------------------------------------ -ClassName = 'CV_GetImgSize'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('mt0'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_GetImgSize'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_Threshold ----------- -//------------------------------------ -ClassName = 'CV_Threshold'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0d0g2'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_Threshold'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_AdaptiveThreshold ----------- -//------------------------------------ -ClassName = 'CV_AdaptiveThreshold'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 6',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0g2g2d0d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_AdaptiveThreshold'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_DistanceTransform ---- -//------------------------------------ -ClassName = 'CV_DistanceTransform'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',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('mt0g2d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_DistanceTransform'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_Blur ----------------- -//------------------------------------ -ClassName = 'CV_Blur'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 6',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0d0d0d0g2'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_Blur'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'CV_GaussianBlur'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_MedianBlur ----------------- -//------------------------------------ -ClassName = 'CV_MedianBlur'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_MedianBlur'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_Dilate --------------- -//------------------------------------ -ClassName = 'CV_Dilate'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 6',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',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('mt0g2d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); -PrintStringInfo('mt0g2d0d0g2d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_Dilate'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -FunctionName = 'CV_Erode'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_Canny ---------------- -//------------------------------------ -ClassName = 'CV_Canny'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 5',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0d0d0d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); -PrintStringInfo('mt0d0d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_Canny'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CV_CornerHarris ---------------- -//------------------------------------ -ClassName = 'CV_CornerHarris'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 5',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0d0d0g2'+ArgSeparator+'mt0',ClassFileName,'file','y'); -PrintStringInfo('mt0d0d0d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'CV_CornerHarris'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class syslin ------------------ -//------------------------------------ -ClassName = 'SYSLIN'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''ss''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(4).SZ(1))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''2'')',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 5',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''ss''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(4).SZ(1))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''2'')',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 6',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''ss''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(4).SZ(1))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''2'')',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2d2d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d2d2d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d2d2d2d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); - -PrintStringInfo('g2d0d0d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d0d2d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d0d0d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d0d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); - -PrintStringInfo('g2d0d0d0d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d0d2d0d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d0d0d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d0d2d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d2d2d2d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); - -PrintStringInfo('g2d0d0d0d0d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d0d2d0d2d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d0d0d2d2d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d0d2d2d2d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); -PrintStringInfo('g2d2d2d2d0d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'syslin'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class schur ------------------- -//------------------------------------ -ClassName = 'SCHUR'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= FA_SCHUR_TP(IN(2).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_SCHUR_SZ(IN(2).TP,IN(1).SZ(1))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SCHUR_SZ(IN(2).TP,IN(1).SZ(1))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 5',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(5).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(5).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(5).SZ(2)= ''1''',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2d0',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2d0d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2g2'+ArgSeparator+'d2d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2g2'+ArgSeparator+'d2d2d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2g2'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2g2'+ArgSeparator+'d2d2d2d2d0',ClassFileName,'file','y'); -// --- Annotation Function And Function List Function. --- -FunctionName = 'schur'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class lqr --------------------- -//------------------------------------ -ClassName = 'LQR'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_2(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_2(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_2(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('ss2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('ss2d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('ss2d2d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -// --- Annotation Function And Function List Function. --- -FunctionName = 'lqr'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class lqe --------------------- -//------------------------------------ -ClassName = 'LQE'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_1(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_SZ_2(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('ss2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'lqe'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class obscont ----------------- -//------------------------------------ -ClassName = 'OBSCONT'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OBSCNT(IN(1).VAL,IN(1).SZ(1),IN(1).SZ(2),NOutArg))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OBSCNT(IN(1).VAL,IN(1).SZ(1),IN(1).SZ(2),NOutArg))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OBSCNT(IN(1).VAL,IN(1).SZ(1),IN(1).SZ(2),NOutArg))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OBSCNT(IN(1).VAL,IN(1).SZ(1),IN(1).SZ(2),NOutArg))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''2''',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('ss2d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('ss2d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'obscont'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class SQROOT --------------------- -//------------------------------------ -ClassName = 'SQROOT'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'sqroot'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class GIVENS --------------------- -//------------------------------------ -ClassName = 'GIVENS'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''2''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''2''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d2d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'givens'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class HOUSEHOLDER--------------------- -//------------------------------------ -ClassName = 'HOUSEHOLDER'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'householder'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class FULLRF--------------------- -//------------------------------------ -ClassName = 'FULLRF'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); - - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2d2d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2d2d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'fullrf'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class ROWCOMP --------------------- -//------------------------------------ -ClassName = 'ROWCOMP'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2d0',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2d0',ClassFileName,'file','y'); -PrintStringInfo('d2g2d0'+ArgSeparator+'d2d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'rowcomp'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class RANGE --------------------- -//------------------------------------ -ClassName = 'range'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d0'+ArgSeparator+'d2d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'range'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class LU --------------------- -//------------------------------------ -ClassName = 'lu'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'lu'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class SCALING --------------------- -//------------------------------------ -ClassName = 'scaling'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s2d0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'scaling'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class QR--------------------- -//------------------------------------ -ClassName = 'QR'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');; -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');; -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');; -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2d2d0d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2d0d2',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'qr'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class svd --------------------- -//------------------------------------ -ClassName = 'SVD'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z2g2'+ArgSeparator+'z2z2z2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2z2z2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'svd'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class HESS --------------------- -//------------------------------------ -ClassName = 'HESS'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'hess'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class RANK --------------------- -//------------------------------------ -ClassName = 'RANK'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',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('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'rank'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class SVA --------------------- -//------------------------------------ -ClassName = 'SVA'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'sva'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class balanc ------------------ -//------------------------------------ -ClassName = 'BALANC'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2d2'+ArgSeparator+'d2d2d2d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'balanc'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class RCOND ------------------- -//------------------------------------ -ClassName = 'RCOND'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',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('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'rcond'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CONVSTR -------------------- -//------------------------------------ -ClassName = 'CONVSTR'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -//PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -//PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'convstr'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class STRSUBST -------------------- -//------------------------------------ -ClassName = 'STRSUBST'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('g2g2g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'strsubst'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class STRCMP -------------------- -//------------------------------------ -ClassName = 'STRCMP'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -//PrintStringInfo('g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('g2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('g2g2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'strcmp'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class STRREV -------------------- -//------------------------------------ -ClassName = 'STRREV'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'strrev'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); - -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class STRRCHR -------------------- -//------------------------------------ -ClassName = 'STRRCHR'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'strrchr'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); - -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class STRCHR -------------------- -//------------------------------------ -ClassName = 'STRCHR'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'strchr'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); - -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class STRNCPY -------------------- -//------------------------------------ -ClassName = 'STRNCPY'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(2).VAL',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2d0'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'strncpy'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); - -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class STRSPN -------------------- -//------------------------------------ -ClassName = 'STRSPN'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',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('g2g2'+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'strspn'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); - -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class STRCSPN -------------------- -//------------------------------------ -ClassName = 'STRCSPN'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',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('g2g2'+ArgSeparator+'u80',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'strcspn'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); - -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - -//------------------------------------ -//---- Class ASCII -------------------- -//------------------------------------ -ClassName = 'ASCII'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_ASCII(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SUB(IN(1).SZ(2),''1'')',ClassFileName,'file','y'); - -//PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -//PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).TP= FA_TP_ASCII(IN(1).TP)',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(2)= FA_SUB(IN(1).SZ(2),''1'')',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'ascii'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); - -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class DEC2BIN -------------------- -//------------------------------------ -ClassName = 'DEC2BIN'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(FA_SZ_DEC2BIN(IN(1).VAL),IN(1).SZ(2))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(2).VAL,IN(1).SZ(2))',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u162',ClassFileName,'file','y'); - -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i80d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i160d0'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u80d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u160d0'+ArgSeparator+'u162',ClassFileName,'file','y'); - -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); - -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'dec2bin'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class DEC2BASE -------------------- -//------------------------------------ -ClassName = 'DEC2BASE'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(FA_SZ_DEC2BASE(IN(1).VAL,IN(2).VAL),IN(1).SZ(2))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(2).VAL,IN(1).SZ(2))',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('s0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('s2d0'+ArgSeparator+'g2',ClassFileName,'file','y'); - -PrintStringInfo('d0d0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('d2d0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('s0d0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('s2d0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'dec2base'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class DEC2OCT -------------------- -//------------------------------------ -ClassName = 'DEC2OCT'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(FA_SZ_DEC2OCT(IN(1).VAL),IN(1).SZ(1))',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u162',ClassFileName,'file','y'); - -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'dec2oct'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class DEC2HEX -------------------- -//------------------------------------ -ClassName = 'DEC2HEX'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(FA_SZ_DEC2HEX(IN(1).VAL),IN(1).SZ(1))',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'g2',ClassFileName,'file','y'); - -PrintStringInfo('d2'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'g2',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'g2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'dec2hex'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class BIN2DEC -------------------- -//------------------------------------ -ClassName = 'BIN2DEC'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); - -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'bin2dec'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class SVD ------------------- -//------------------------------------ -ClassName = 'SVD'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d2g2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'svd'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class SVA --------------------- -//------------------------------------ -ClassName = 'SVA'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'sva'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class OCT2DEC -------------------- -//------------------------------------ -ClassName = 'OCT2DEC'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); -PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); -PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); -PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); - -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); -PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); -PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); -PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'oct2dec'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class HEX2DEC -------------------- -//------------------------------------ -ClassName = 'HEX2DEC'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',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('g2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -// --- Annotation Function And Function List Function. --- -FunctionName = 'hex2dec'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class BASE2DEC -------------------- -//------------------------------------ -ClassName = 'BASE2DEC'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',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('g2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('g2'+ArgSeparator+'d2',ClassFileName,'file','y'); -// --- Annotation Function And Function List Function. --- -FunctionName = 'base2dec'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------ -// --- Class Cosd. --- -// ------------------ -ClassName = 'Cosd'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cosd'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------ -// --- Class Cotd. --- -// ------------------ -ClassName = 'Cotd'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cotd'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------ -// --- Class Coth. --- -// ------------------ -ClassName = 'Coth'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'coth'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------ -// --- Class Csc. --- -// ------------------ -ClassName = 'Csc'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'csc'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------ -// --- Class Cscd. --- -// ------------------ -ClassName = 'Cscd'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cscd'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// ------------------ -// --- Class Csch. --- -// ------------------ -ClassName = 'Csch'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'csch'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// --- Class Sec. --- -// ------------------ -ClassName = 'Sec'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'sec'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// ------------------ -// --- Class Secd. --- -// ------------------ -ClassName = 'Secd'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'secd'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -// --- Class Sech. --- -// ------------------ -ClassName = 'Sech'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'sech'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class FACTORIAL -------------------- -//------------------------------------ -ClassName = 'FACTORIAL'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); - -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'factorial'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// --- Class Interp1. --- -// ------------------ -ClassName = 'Interp1'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d2d0g2'+ArgSeparator+'d0',ClassFileName,'file','y'); -//PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -//PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -//PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -//PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -//PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -//PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'interp1'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -// --- Class Modk. --- -// ------------------ -ClassName = 'Modk'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -// --- Function List Class. --- -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -//PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); - -//PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); -//PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); -//PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); -//PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'modk'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class PRIMES -------------------- -//------------------------------------ -ClassName = 'PRIMES'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_PRIMES(IN(1).VAL)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'primes'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class GCD -------------------- -//------------------------------------ -ClassName = 'GCD'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',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('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'gcd'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class LCM -------------------- -//------------------------------------ -ClassName = 'LCM'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',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('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'lcm'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - - - -//------------------------------------ -//---- Class FACTOR -------------------- -//------------------------------------ -ClassName = 'FACTOR'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_MUL(FA_SZ_FACTOR(IN(1).VAL),IN(1).SZ(1))',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'factor'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class GCD -------------------- -//------------------------------------ -ClassName = 'GCD'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -//Arguements specified: initial value, start time, time vector, ode function -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''u8''',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('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'gcd'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class ZPBUTT -------------------- -//------------------------------------ -ClassName = 'ZPBUTT'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''z''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).VAL',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'z2d0',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'zpbutt'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class ZPCH1 -------------------- -//------------------------------------ -ClassName = 'ZPCH1'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''z''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).VAL',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0'+ArgSeparator+'z2d0',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'zpch1'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class ZPCH2 -------------------- -//------------------------------------ -ClassName = 'ZPCH2'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''z''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).VAL',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).TP= ''z''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(1).VAL',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0'+ArgSeparator+'z2z2d0',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'zpch2'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class BUTTMAG -------------------- -//------------------------------------ -ClassName = 'BUTTMAG'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); - - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u80u80d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'buttmag'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class KALM -------------------- -//------------------------------------ -ClassName = 'KALM'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 8',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(4).SZ(1)',ClassFileName,'file','y'); - -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(2).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(4).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d2d2d2d2d2d2d2'+ArgSeparator+'d2d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('z2z2z2z2z2z2z2z2'+ArgSeparator+'z2z2z2z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'kalm'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class MVCORREL -------------------- -//------------------------------------ -ClassName = 'MVCORREL'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); -PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); -PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'mvcorrel'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class FAURRE -------------------- -//------------------------------------ -ClassName = 'FAURRE'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 5',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(4).SZ(1)',ClassFileName,'file','y'); - -PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(1)= IN(5).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(2).SZ(2)= IN(5).SZ(2)',ClassFileName,'file','y'); - -PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(3).SZ(2)= IN(5).SZ(1)',ClassFileName,'file','y'); - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d2d2d2d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); -PrintStringInfo('z0z2z2z2z2'+ArgSeparator+'z2z2z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'faurre'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class CHEB1MAG -------------------- -//------------------------------------ -ClassName = 'CHEB1MAG'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(4).SZ(2)',ClassFileName,'file','y'); - - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('u80u80d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cheb1mag'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - -//------------------------------------ -//---- Class CHEB2MAG -------------------- -//------------------------------------ -ClassName = 'CHEB2MAG'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(4).SZ(2)',ClassFileName,'file','y'); - - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -//PrintStringInfo('u80u80d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'cheb2mag'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - -//------------------------------------ -//---- Class SINC -------------------- -//------------------------------------ -ClassName = 'SINC'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'sinc'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -//------------------------------------ -//---- Class SINCD -------------------- -//------------------------------------ -ClassName = 'SINCD'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_MUL(''8'',IN(1).VAL),''1'')',ClassFileName,'file','y'); - - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('u80u80'+ArgSeparator+'d2',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'sincd'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -//------------------------------------ -//---- Class FSFIRLIN -------------------- -//------------------------------------ -ClassName = 'FSFIRLIN'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_FSFIRLIN_SZ(IN(1).SZ(2))',ClassFileName,'file','y'); - - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'fsfirlin'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -//------------------------------------ -//---- Class %K -------------------- -//------------------------------------ -ClassName = 'modk'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 1',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); - - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'modk'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class FILT_SINC -------------------- -//------------------------------------ -ClassName = 'FILT_SINC'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(1).VAL',ClassFileName,'file','y'); - - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'filt_sinc'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class FFILT -------------------- -//------------------------------------ -ClassName = 'FFILT'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - - -PrintStringInfo('NIN= 4',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(2).VAL',ClassFileName,'file','y'); - - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('g2d0d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); - - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'ffilt'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - -//------------------------------------ -//---- Class %SN -------------------- -//------------------------------------ -ClassName = 'modsn'; - -// --- 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'); -//PrintStringInfo('OUT(1).TP= FA_TP_MODSN(IN(1).TP)',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -//PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -//PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).TP= FA_TP_MODSN(IN(1).TP',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -//PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); - -PrintStringInfo('NIN= 2',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= FA_TP_MODSN(IN(1).TP)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= FA_SZ_MODSN(IN(1).SZ(1))',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_MODSN(IN(1).SZ(2))',ClassFileName,'file','y'); - - - - - - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); - - -// --- Annotation Function And Function List Function. --- -FunctionName = 'modsn'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - -//------------------------------------ -//---- Class ELL1MAG -------------------- -//------------------------------------ -ClassName = 'ell1mag'; - -// --- Class Annotation. --- -PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); -ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); - -PrintStringInfo('NIN= 3',ClassFileName,'file','y'); -PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0z2'+ArgSeparator+'d2',ClassFileName,'file','y'); -PrintStringInfo('d0d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'ell1mag'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - -//------------------------------------ -//---- Class AMELL -------------------- -//------------------------------------ -ClassName = 'amell'; - -// --- 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'); -PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); -PrintStringInfo('OUT(1).SZ(2)= FA_SZ_AMELL(IN(1).SZ(2))',ClassFileName,'file','y'); - -ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); -PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); -PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); - -// --- Annotation Function And Function List Function. --- -FunctionName = 'amell'; -PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); -INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); - - - - - - -// //////////////////////////////////////////// -// /////PARTE INTRODOTTA DA ALBERTO MOREA -// ///////////////////////////////////////////// -// /////////////////////////////////////////////// - -// // DOMAINS DEFINITION FOR EVERY CLASS-LEADER IN SCI2C LIBRARY - -// // In the following lets: -// // N,R ,C are the standard sets of integer,real ,complex numbers -// // I,J c R are intervals of real numbers -// // {} the empty set -// // Sel={'r','c'} or {0,1} are the selection sets r=row,c=column -// // B={T,F} is Boolean set -// // F is the standard set of File IDentify files -// // G is the standard alphanumeric string domain - -// // For every sci2c function library class we reported -// // the domains , annotations only for the class-leader - - -// // Example [y1,y2]=Fun(x1,x2,x3) : scilab library function call - -// // Domain RxNxSel->{R,R} :the first input element is real number ,the second is integer , -// // the last is in the selection set -// // The first output and the second are real numbers - -// // Notice : only default (double) precision are considered for real and complex data -// // The dimension of the input/output data are provided in the mapping schema - -// // d0 = double real scalar -// // d2 = double real vector or matrix -// // z0= double complex scalar -// // z2= double complex vector or matrix - -// // --------------------- -// // --- Class Global. --- -// // --------------------- - -// // DOMAINS G -> R - -// ////////////////////////////////// - - -// // --------------------- -// // --- Class Float. --- -// // --------------------- - -// // DOMAINS R -> R - -// ////////////////////////////////// - - -// // --------------------- -// // --- Class Double. --- -// // --------------------- - -// // DOMAINS R -> R - -// ////////////////////////////////// - -// // ---------------------------- -// // --- Class FloatComplex. --- -// // ---------------------------- - -// // DOMAINS 1)R -> C -// // 2)C -> C - -// ///////////////////////////////// - -// // ---------------------------- -// // --- Class DoubleComplex. --- -// // ---------------------------- - -// // DOMAINS 1) R -> C -// // 2) C -> C - -// ///////////////////////////////// - -// // ------------------ -// // --- Class Sin. --- -// // ------------------ - -// // DOMAINS 1) IcR -> JcR -// // 2) C -> C - -// ///////////////////////////////// - -// // ------------------- -// // --- Class Atan. --- -// // ------------------- - -// // DOMAINS 1) IcR -> JcR -// // 2) C -> C -// // 3) RxR -> JcR - -// ///////////////////////////////// - -// // ------------------- -// // --- Class Sqrt. --- -// // ------------------- - -// // DOMAINS 1) IcR -> JcR -// // 2) R -> R -// // 3) C -> C - - // ///////////////////////////////// - -// // -------------------- -// // --- Class Zeros. --- -// // -------------------- - -// // DOMAINS 1) {}->R -// // 2) NxN -> R -// // 3) R -> R -// // 4) C -> R - -// ///////////////////////////////// - -// // -------------------- -// // --- Class Sum. --- -// // -------------------- - -// // DOMAINS 1) R -> R -// // 2) C -> C -// // 3) RxSel -> R -// // 4) CxSel -> R - - // ///////////////////////////////// - -// // -------------------- -// // --- Class Abs. --- -// // -------------------- - -// // DOMAINS 1) R -> R+ -// // 2) C -> R+ - -// ///////////////////////////////// - -// // ------------------------ -// // --- Class OpDotStar. --- -// // ------------------------ - -// // DOMAINS 1) RxR -> R -// // 2) CxC -> C -// // 3) RxC -> C -// // 4) CxR -> C - -// ///////////////////////////////// - -// // ------------------------ -// // --- Class OpDotHat. --- -// // ------------------------ - -// // DOMAINS 1) RxR -> R -// // 2) CxC -> C - -// ///////////////////////////////// - -// // ---------------------- -// // --- Class OpLogEq. --- -// // ---------------------- - -// // DOMAINS 1) RxR -> B -// // 2) CxC -> B -// // 3) GxG -> B - -// ///////////////////////////////// - -// // --------------------- -// // --- Class OpStar. --- -// // --------------------- - -// // DOMAINS 1) RxR -> R -// // 2) CxC -> C -// // 3) RxC -> C -// // 4) CxR -> C - -// ///////////////////////////////// - -// // --------------------- -// // --- Class OpApex. --- -// // --------------------- - -// // DOMAINS 1) R -> R -// // 2) C -> C - -// ///////////////////////////////// - -// // --------------------- -// // --- Class OpPlus. --- -// // --------------------- - -// // DOMAINS 1) R -> R -// // 2) C -> C -// // 3) RxR -> R -// // 4) CxC -> C -// // 5) RxC -> C -// // 6) CxR -> C -// // 7) GxG -> G - -// ///////////////////////////////// - -// // ---------------------- -// // --- Class OpMinus. --- -// // ---------------------- - -// // DOMAINS 1) R -> R -// // 2) C -> C -// // 3) RxR -> R -// // 4) CxC -> C -// // 5) RxC -> C -// // 6) CxR -> C - - -// ///////////////////////////////// - -// // ------------------- -// // --- Class OpRc. --- -// // ------------------- - -// // DOMAINS 1) RxR -> R -// // 2) CxC -> C - -// ///////////////////////////////// - -// // ------------------- -// // --- Class OpCc. --- -// // ------------------- - -// // DOMAINS 1) RxR -> R -// // 2) CxC -> C - -// ///////////////////////////////// - -// // ------------------- -// // --- Class Find. --- -// // ------------------- - -// // DOMAINS 1) R -> N -// // 2) R -> {N,N} -// // 3) RxN -> N -// // 4) RxN ->{N,N} - -// ///////////////////////////////// - -// // --------------------- -// // --- Class Length. --- -// // --------------------- - -// // DOMAINS 1) R -> N -// // 2) C -> N -// // 3) G -> N - -// ///////////////////////////////// - -// // ------------------- -// // --- Class Size. --- -// // ------------------- - -// // DOMAINS 1) R -> {N,N} -// // 2) C -> {N,N} -// // 3) RxSel -> {N,N} -// // 4) CxSel -> {N,N} - -// ///////////////////////////////// - -// // --------------------- -// // --- Class Return. --- -// // --------------------- -// // DOMAINS 1) {} -> {} - -// ///////////////////////////////// - -// // ---------------------- -// // --- Class OpColon. --- -// // ---------------------- - -// // DOMAINS 1) RxR -> R -// // 2) RxRxR -> R - -// ///////////////////////////////// - -// // ---------------------- -// // --- Class IsEmpty. --- -// // ---------------------- - -// // DOMAINS 1) R -> B -// // 2) C -> B - -// ///////////////////////////////// - -// // ---------------------- -// // --- Class Trace. --- -// // ---------------------- - -// // DOMAINS 1) R -> R -// // 2) C -> C - -// //////////////////////////////// - -// // -------------------- -// // --- Class OpIns. --- -// // -------------------- - -// // DOMAINS 1) RxRxR -> {} -// // 2) RxRxRxR -> {} -// // 3) CxRxR -> {} -// // 4) CxRxRxC -> {} -// // 5) CxRxC -> {} - -// //////////////////////////////// - -// // -------------------- -// // --- Class OpExt. --- -// // -------------------- - -// // DOMAINS 1) RxR -> R -// // 2) CxR -> C -// // 3) CxRxR -> C - -// //////////////////////////////// - -// // ------------------- -// // --- Class Disp. --- -// // ------------------- - -// // DOMAINS 1) R -> R -// // 2) C -> R -// // 3) G -> R - -// //////////////////////////////// - -// // ---------------------- -// // --- Class OpEqual. --- -// // ---------------------- - -// // DOMAINS 1) R -> R -// // 2) C -> C -// // 3) G -> G - -// //////////////////////////////// - -// // -------------------- -// // --- Class Mopen. --- -// // -------------------- - -// // DOMAINS 1) G -> F -// // 2) GxG -> F -// // 3) GxGxR -> {F,R} -// // 4) G -> {F,R} -// // 5) GxG -> {F,R} - -// //////////////////////////////// - -// // ------------------- -// // --- Class Mput. --- -// // ------------------- - -// // DOMAINS 1) RxGxF -> {} -// // 2) RxGxF -> N - -// //////////////////////////////// - -// // ------------------- -// // --- Class Mget. --- -// // ------------------- - -// // DOMAINS 1) RxGxF -> N - -// //////////////////////////////// - -// // --------------------- -// // --- Class Mclose. --- -// // --------------------- - -// // DOMAINS 1) {} -> N -// // 2) F -> N - -// //////////////////////////////// - -// // --------------------- -// // --- Class Mseek. --- -// // --------------------- - -// // DOMAINS 1) R -> {} -// // 2) RxF -> {} -// // 3) RxFxG -> {} - -// //////////////////////////////// - -// // --------------------- -// // --- Class Convol. --- -// // --------------------- - -// // DOMAINS 1) RxR->R - // 2) CxC->C - // 3) RxC->C - // 4) CxR->C - // 5) RxR->{R,R} - // 6) CxC->{C,C} - // 7) RxC->{C,C} - // 8) CxR->{C,C} - // 9) CxC->{C,C} - // 10) RxRxR->{R,R} - // 11) RxCxC->{C,C} - // and so on \85.. - - -// //////////////////////////////// - - -// // ------------------- -// // --- Class IFFT. --- -// // ------------------- - -// // DOMAINS 1) R->C - // 2) C->C - - // //////////////////////////////// - -// // ------------------ -// // --- Class FFT. --- -// // ------------------ - -// // DOMAINS 1) R->C - // 2) RxN->C - // 3) C->C - // 4) CxN->C - // 5) RxNxN->C - // 6) CxNxN->C - // 7) RxNxNxN->C - // 8) CxNxNxN->C - -// //////////////////////////////// - -// // ----------------------- -// // --- Class FFTShift. --- -// // ----------------------- - -// // DOMAINS 1) R->R - // 2) C->C - // 3) RxR->R - // 4) RxG->R - // 5) CxR->C - // 6) CxG->C - -// //////////////////////////////// - -// // -------------------- -// // --- Class Meanf. --- -// // -------------------- - -// // DOMAINS 1) R->R - // 2) C->C - // 3) CxSel->C - // 4) RxSel->R - -// //////////////////////////////// - -// // -------------------- -// // --- Class Frmag. --- -// // -------------------- - -// // DOMAINS 1) RxN->R - // 2) RxN->{R,R} - // 3) RxRxN->R - // 4) RxRxN->{R,R} - -// //////////////////////////////// - -// // ------------------ -// // --- Class Lev. --- -// // ------------------ - -// // DOMAINS 1) R->R - // 2) R->{R,R} - // 3) R->{R,R,R} - // 4) C->C - // 5) C->{C,C} - // 6) C->{C,C,C} - -// //////////////////////////////// - -// // -------------------------- -// // --- Class OpBackSlash. --- -// // -------------------------- - -// // DOMAINS 1) RxR->R - // 2) CxC->C - // 3) RxC->C - // 4) CxR->C - -// //////////////////////////////// - -// // ----------------------- -// // --- Class Cepstrum. --- -// // ----------------------- - -// // DOMAINS 1) RxR->C - // 2) RxC->C - -// //////////////////////////////// - -// // ----------------------- -// // --- Class Spec. --- -// // ----------------------- - -// // DOMAINS 1) R->R - // 2) C->C - // 3) R->{R,R} - // 4) C->{C,C} - -// //////////////////////////////// - -// // ------------------- -// // --- Class Part. --- -// // ------------------- - -// // DOMAINS 1) GxN->G - -// //////////////////////////////// - -// // ----------------------- -// // --- Class Strindex. --- -// // ----------------------- - -// // DOMAINS 1) GxG->N - -// //////////////////////////////// - -// // ----------------------- -// // --- Class StrSubSt. --- -// // ----------------------- - -// // DOMAINS 1) GxGxG->G - -// //////////////////////////////// - - -// //////////////////////////////// -// //////////////////////////////// -// // fine parte introdotta alberto -// //////////////////////////////// -// //////////////////////////////// - -// //RNU se puoi sistema meglio la parte introdotta da al. -endfunction +function INIT_FillSCI2LibCDirs(FileInfo,SharedInfoExtension) +// function INIT_FillSCI2LibCDirs(FileInfo,SharedInfoExtension) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Generates files for the SCI2CLib CFunctionList and CAnnotations +// directories. +// +// Input data: +// FileInfo: structure containing all info about SCI2C files. +// SharedInfoExtension: structure containing the file extensions. +// +// Output data: +// --- +// +// #RNU_RES_E +// Status: +// 24-Dec-2007 -- Raffaele Nutricato: Author. +// 24-Dec-2007 -- Alberto Morea: Test Ok. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +SCI2CLibCAnnClsDir = FileInfo.SCI2CLibCAnnCls; +ExtensionCAnnCls = SharedInfoExtension.AnnotationClasses; + +SCI2CLibCAnnFunDir = FileInfo.SCI2CLibCAnnFun; +ExtensionCAnnFun = SharedInfoExtension.AnnotationFunctions; + +SCI2CLibCFLClsDir = FileInfo.SCI2CLibCFLCls; +ExtensionCFuncListCls = SharedInfoExtension.FuncListClasses; + +SCI2CLibCFLFunDir = FileInfo.SCI2CLibCFLFun; +ExtensionCFuncListFun = SharedInfoExtension.FuncListFunctions; + +GeneralReport = FileInfo.GeneralReport; +ArgSeparator = ','; +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +// -------------------------------------------------------------------------------- +// --- Generate Function List class files for C functions of the SCI2C library. --- +// -------------------------------------------------------------------------------- +//NUT old call to INIT_GenSCI2CLibCFLCls +// INIT_GenSCI2CLibCFLCls(SCI2CLibCFLClsDir,ExtensionCFuncListCls,GeneralReport) +// SCI2CLibCFLClsDir,ExtensionCFLCls,GeneralReport + +//NUT verifica le annotazioni di tutte le classi. + +// ----------------------------------------------------------------------------------------- +// --- Generate Function List and Annotation files for C functions of the SCI2C library. --- +// ----------------------------------------------------------------------------------------- + + +// --------------------- +// --- Class Global. --- +// --------------------- +ClassName = 'Global'; +// #RNU_RES_B +//NUT: global function can work with a generic number of input arguments. +//NUT: we force the global function to work with one input argument only. +// --- Class Annotation. --- +// #RNU_RES_E +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2'+ArgSeparator+'d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'global'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class Float. --- +// --------------------- +ClassName = 'Float'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y'); + +//PrintStringInfo('c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +//PrintStringInfo('z0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'s2',ClassFileName,'file','y'); +//PrintStringInfo('c2'+ArgSeparator+'s2',ClassFileName,'file','y'); +//PrintStringInfo('z2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'float'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class Double. --- +// --------------------- +ClassName = 'Double'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('c0'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'double'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ---------------------------- +// --- Class FloatComplex. --- +// ---------------------------- +//NUT sulla complex c'e' da capire se servono due o un solo argomento. +//NUT secondo me ne va bene uno perche' serve per fare il casting di una variabile +//NUT reale in una variabile complessa +ClassName = 'FloatComplex'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''c''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'c2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'floatcomplex'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ---------------------------- +// --- Class DoubleComplex. --- +// ---------------------------- +//NUT sulla complex c'e' da capire se servono due o un solo argomento. +//NUT secondo me ne va bene uno perche' serve per fare il casting di una variabile +//NUT reale in una variabile complessa +ClassName = 'DoubleComplex'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''z''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'doublecomplex'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class Uint8. --- +// --------------------- +ClassName = 'Uint8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('c0'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'u82',ClassFileName,'file','y'); +//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'uint8'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// --------------------- +// --- Class Float. --- +// --------------------- +ClassName = 'Float'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +PrintStringInfo('d2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'s2',ClassFileName,'file','y'); +//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'float'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class Int8. --- +// --------------------- +ClassName = 'Int8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i80',ClassFileName,'file','y'); +//PrintStringInfo('c0'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i82',ClassFileName,'file','y'); +//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'int8'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// --------------------- +// --- Class Uint16. --- +// --------------------- +ClassName = 'Uint16'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'u160',ClassFileName,'file','y'); +//PrintStringInfo('c0'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'u162',ClassFileName,'file','y'); +//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'uint16'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// --------------------- +// --- Class Int16. --- +// --------------------- +ClassName = 'Int16'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''i16''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +//PrintStringInfo('c0'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +//PrintStringInfo('c2'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'int16'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// --------------------- +// --- Class Uint32. --- +// --------------------- +ClassName = 'Uint32'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u32''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'u320',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'u320',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u320',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'u320',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u320',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'u320',ClassFileName,'file','y'); +PrintStringInfo('i320'+ArgSeparator+'u320',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'u322',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'u322',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u322',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'u322',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u322',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'u322',ClassFileName,'file','y'); +PrintStringInfo('i322'+ArgSeparator+'u322',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'uint32'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// --------------------- +// --- Class Int32. --- +// --------------------- +ClassName = 'Int32'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''i32''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'i320',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'i320',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'i320',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i320',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'i320',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i320',ClassFileName,'file','y'); +PrintStringInfo('u320'+ArgSeparator+'i320',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'i322',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'i322',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'i322',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i322',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'i322',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i322',ClassFileName,'file','y'); +PrintStringInfo('u322'+ArgSeparator+'i322',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'int32'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------ +// --- Class Sin. --- +// ------------------ +ClassName = 'Sin'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_USER',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'s2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'sin'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'sinh'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'sind'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'asinh'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'cos'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'cosh'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'tan'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'tand'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'tanh'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'exp'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'conj'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//NUT verifica +FunctionName = 'inv'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'int'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'SCI2Cresize'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'chol'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------ +// --- Class OpLogNot +// ------------------ +ClassName = 'OpLogNot'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +FunctionName = 'OpLogNot'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'ceil'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'fix'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'floor'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'round'; //BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + +// ------------------- +// --- Class bitand. --- +// ------------------- +ClassName = 'bitand'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + + +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'bitand'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'bitor'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'bitxor'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +// ------------------- +// --- Class bitcmp. --- +// ------------------- +ClassName = 'bitcmp'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + + +PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u160d0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'bitcmp'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class bitset. --- +// ------------------- +ClassName = 'bitset'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + + +PrintStringInfo('u80d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u160d0d0'+ArgSeparator+'u160',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'bitset'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------- +// --- Class bitget. --- +// ------------------- +ClassName = 'bitget'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + + +PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u160d0'+ArgSeparator+'u160',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'bitget'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +// ------------------ +// --- Class Sign --- +// ------------------ +ClassName = 'Sign'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_USER',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + + +// ------------------- +// --- Class Atan. --- +// ------------------- +ClassName = 'Atan'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +// PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +// PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +// PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +// PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'atan'; //BJ : atan AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class Isrow. --- +// ------------------- +ClassName = 'Isrow'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'g0',ClassFileName,'file','y'); +// --- Annotation Function And Function List Function. --- +FunctionName = 'isrow'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class Nthroot. --- +// ------------------- +ClassName = 'Nthroot'; + +// --- 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= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'nthroot'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------- +// --- Class Pmodulo. --- +// ------------------- +ClassName = 'Pmodulo'; + +// --- 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= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'pmodulo'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------- +// --- Class MOMENT. --- +// ------------------- +ClassName = 'moment'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(3).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(3).VAL)',ClassFileName,'file','y'); + +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2d0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2d0g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z2d0g2'+ArgSeparator+'z2',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'moment'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------- +// --- Class WCENTER. --- +// ------------------- +ClassName = 'wcenter'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2d0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); + + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'wcenter'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------- +// --- Class CENTER. --- +// ------------------- +ClassName = 'center'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2d0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); + + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'center'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------- +// --- Class CORREL. --- +// ------------------- +ClassName = 'correl'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + + + +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z2z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'correl'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------- +// --- Class COVAR. --- +// ------------------- +ClassName = 'covar'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + + + +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z2z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'covar'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + + +// ------------------- +// --- Class Nanmin. --- +// ------------------- +ClassName = 'Nanmin'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''2''',ClassFileName,'file','y'); + + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); + +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0d2',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'nanmin'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------- +// --- Class Nanmax. --- +// ------------------- +ClassName = 'Nanmax'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''2''',ClassFileName,'file','y'); + + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); + +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0d2',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); + +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s0s2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0s2',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'nanmax'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------- +// --- Class Nancumsum. --- +// ------------------- +ClassName = 'Nancumsum'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'nancumsum'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------- +// --- Class Nanmean. --- +// ------------------- +ClassName = 'Nanmean'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'nanmean'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------- +// --- Class Issquare. --- +// ------------------- +ClassName = 'Issquare'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'issquare'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------- +// --- Class Isscalar. --- +// ------------------- +ClassName = 'Isscalar'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'isscalar'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class Iscolumn. --- +// ------------------- +ClassName = 'Iscolumn'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'g0',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'iscolumn'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +// ------------------- +// --- Class Ismatrix. --- +// ------------------- +ClassName = 'Ismatrix'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'g0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'ismatrix'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class Ismatrix. --- +// ------------------- +ClassName = 'Ismatrix'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'ismatrix'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------- +// --- Class Isreal. --- +// ------------------- +ClassName = 'Isreal'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'isreal'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +ClassName = 'gcd'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'gcd'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +ClassName = 'nextpow2'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'nextpow2'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +ClassName = 'interp1'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 4',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +//---Function list class. ---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s2s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'interp1'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------- +// --- Class DCT. --- +// ------------------- +ClassName = 'dct'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +// --- Annotation Function And Function List Function. --- +FunctionName = 'dct'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class IDCT. --- +// ------------------- +ClassName = 'idct'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +// --- Annotation Function And Function List Function. --- +FunctionName = 'idct'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------- +// --- Class Sqrt. --- +// ------------------- +ClassName = 'Sqrt'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'c0',ClassFileName,'file','y'); + + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'c2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'asin'; //BJ : Works but not able to generate all cases , AS : same for float + //--> asin(%pi). +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'acos'; //BJ : Works but not able to generate all cases , AS : same for float + //--> acos(%pi) +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'acosd'; //BJ : Works but not able to generate all cases , AS : same for float + //--> acosd(%pi) +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'acosh'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'atanh'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +FunctionName = 'acot'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +FunctionName = 'acotd'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +FunctionName = 'acoth'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'acsc'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'asec'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'asech'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'asind'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'atand'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +FunctionName = 'asecd'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'acscd'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'acsch'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +FunctionName = 'sqrt'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'log'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'log2'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'log10'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'log1p'; // BJ : Ok AS : Float_Done + //--> log1p(%i) Not implemented in Scilab. + //WARNING z0log1pz0 will never happened. +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// -------------------- +// --- Class Zeros. --- +// -------------------- +ClassName = 'Zeros'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 0',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= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ)',ClassFileName,'file','y'); + +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= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_FROM_VAL(IN(1).VAL,IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(IN(2).VAL,IN(2).TP)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',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= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_FROM_VAL(IN(1).VAL,IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(IN(2).VAL,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(3)= FA_SZ_FROM_VAL(IN(3).VAL,IN(3).TP)',ClassFileName,'file','y'); + + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo(ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo(ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo(ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo(ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo(ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + + + +//NUT: no mixed input types are allowed. +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('d0d0d0'+ArgSeparator+'d3',ClassFileName,'file','y'); + + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'zeros'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'ones'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'eye'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// -------------------- +// --- Class Diag. --- +// -------------------- +ClassName = 'diag'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); + +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_ROW_DIAG(IN(1).SZ)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_COLUMN_DIAG(IN(1).SZ)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); + +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_ROW_DIAG_INS_EXT(IN(1).SZ,IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_COL_DIAG_IN_EX(IN(1).SZ,IN(2).VAL)',ClassFileName,'file','y'); + +// ---Function List Class.---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u80d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u160d0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u160d0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162d0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i80d0'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i80d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82d0'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i160d0'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i160d0'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162d0'+ArgSeparator+'i160',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'diag'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// -------------------- +// --- Class linspace & logspace --- +// -------------------- +ClassName = 'linspace'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); + +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_LINSPACE_ROW(IN(1).SZ)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(3).VAL',ClassFileName,'file','y'); + + +// ---Function List Class.---- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + + +PrintStringInfo('d0d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'linspace'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'logspace'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//--------------------- +//-----Class Rand.------ +//--------------------- + ClassName = 'rand' + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 0',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= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',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= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ)',ClassFileName,'file','y'); + +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= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_FROM_VAL(IN(1).VAL,IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(IN(2).VAL,IN(2).TP)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',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= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_FROM_VAL(IN(1).VAL,IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(IN(2).VAL,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(3)= FA_SZ_FROM_VAL(IN(3).VAL,IN(3).TP)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + + +//For rand operator +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'d2',ClassFileName,'file','y'); + +//NUT rand function doesn't behave like zeros and ones functions. +FunctionName = 'rand'; // BJ : Done => rien pour f loat +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// -------------------- +// --- Class Sum. --- +// -------------------- +ClassName = 'Sum'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s0',ClassFileName,'file','y'); //* possible ? */ +PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); //* possible ? */ +PrintStringInfo('c2s0'+ArgSeparator+'c0',ClassFileName,'file','y'); //* possible ? */ +PrintStringInfo('z2d0'+ArgSeparator+'z0',ClassFileName,'file','y'); //* possible ? */ +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('s0g2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0g2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0g2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0g2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c2g2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z2g2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2g2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('u80g2'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82g2'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82g2'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i80g2'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i82g2'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i82g2'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u160g2'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162g2'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162g2'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i160g2'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162g2'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162g2'+ArgSeparator+'i162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'sum'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'prod'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'mean'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'median'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'nansum'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'nanmedian'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'strange'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'st_deviation'; // BJ : Not implemented +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'variance'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'stdev'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'nanstdev'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// -------------------- +// --- Class Max. --- +// -------------------- +ClassName = 'Max'; + + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPPLUS(IN(1).SZ,IN(2).SZ,IN(1).TP,IN(2).TP))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPPLUS(IN(1).SZ,IN(2).SZ,IN(1).TP,IN(2).TP))',ClassFileName,'file','y'); + + +//PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +//PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(2).VAL)',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(2).VAL)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i160',ClassFileName,'file','y'); + + +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); + +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); + +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); + +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0g2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0g2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u80g2'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82g2'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i80g2'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i82g2'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u160g2'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162g2'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i160g2'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162g2'+ArgSeparator+'i162',ClassFileName,'file','y'); + +FunctionName = 'max'; // BJ : Done AS : Float_Done + // WARNING : Complex case will never be + // WARNING : max(x, 2) <=> max(x, 2 * ones(x)) nothing to do with 'r' nor 'c' +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +FunctionName = 'min'; // BJ : Done AS : Float_Done + // WARNING : Complex case will never be + // WARNING : max(x, 2) <=> max(x, 2 * ones(x)) nothing to do with 'r' nor 'c' +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + +// -------------------- +// --- Class Abs. --- +// -------------------- +ClassName = 'Abs'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'abs'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'real'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +FunctionName = 'imag'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// -------------------- +// --- Class Gsort. --- +// -------------------- +ClassName = 'Gsort'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2g2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162g2'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162g2g2'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2g2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'gsort'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------------ +// --- Class OpDotStar. --- +// ------------------------ +ClassName = 'OpDotStar'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i160i60'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpDotStar'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'OpDotSlash'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------------ +// --- Class OpDotHat. --- +// ------------------------ +ClassName = 'OpDotHat'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpDotHat'; // BJ : Done AS : Float_Done but poor precision +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//NUT verifica l'hat se e' ben annotato. L'input deve essere una matrice quadrata +FunctionName = 'OpHat'; // BJ : Done AS : Float_Done but poor precision + // WARNING : d2d2 / z2z2 / d2z2 / z2d2 Not implemented in Scilab ... +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'OpDotBackSlash'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'OpLogLt'; // BJ : Done AS : Float_Done + // WARNING : Complex cases are useless. +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'OpLogLe'; // BJ : Done AS : Float_Done + // WARNING : Complex cases are useless. +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'OpLogGt'; // BJ : Done AS : Float_Done + // WARNING : Complex cases are useless. +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'OpLogGe'; // BJ : Done AS : Float_Done + // WARNING : Complex cases are useless. +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ---------------------- +// --- Class OpLogEq. --- +// ---------------------- +ClassName = 'OpLogEq'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MIN_REAL(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); //RNU +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPDOTSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('g0g0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('g0g0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('g2g0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('g2g0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('g0g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('g0g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +//mixed types +PrintStringInfo('c2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2c0'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +PrintStringInfo('c0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0c2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('c2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2c2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80d0'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160d0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160d0'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d0i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('d0u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('d0i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpLogEq'; // BJ : Done AS : Float_Done + // WARNING : Unable to generate g2 nor g0 code ... +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'OpLogNe'; // BJ : Done AS : Float_Done + // WARNING : Unable to generate g2 nor g0 code ... +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'OpLogAnd'; // AS : Double and Float_Done + // ERROR : z0z0OpLogAndz0 -> z0z0OpLogAndd0 +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'OpLogOr'; // AS : Double and Float_Done + // ERROR : z0z0OpLogAndz0 -> z0z0OpLogAndd0 +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class OpStar. --- +// --------------------- +ClassName = 'OpStar'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPSTAR(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u80i80'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u80u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u80i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i80u80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i80u80'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i80u160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i80i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u160u80'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u160i80'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i160u80'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i160i80'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i160u160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u82u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u82i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i82u80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82u160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i82i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u162u80'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162i80'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162u80'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162i80'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162u160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u80u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u80i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i80u82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i80u162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i80i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u160u82'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u160i82'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + + +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u82u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u82i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i82u82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82u162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i82i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u162u82'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162i82'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162u82'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162i82'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162u162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82i82'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u82u162'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u82i162'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i82u82'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i82u162'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i82i162'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u162u82'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162i82'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162i162'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162u82'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162i82'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162u162'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i160',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpStar'; // BJ : Done AS : Float_Done + + +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +//NUT vedi che la opstar non funziona quando faccio scalare*matrice. o matrice*scalare. +//NUT la lista delle funzioni disponibili e' identica a quella della classe 3. + + +// --------------------- +// --- Class OpSlash. --- +// --------------------- +ClassName = 'OpSlash'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPSLASH(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPSLASH(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i160',ClassFileName,'file','y'); + + +FunctionName = 'OpSlash'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class OpApex. --- +// --------------------- +ClassName = 'OpApex'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpApex'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'OpDotApex'; // BJ : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// --------------------- +// --- Class IsNan. --- +// --------------------- +ClassName = 'IsNan'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + + +FunctionName = 'isnan'; // BJ : Done AS : Float_Done + // ERROR : z2isnanz2 must be z2isnand2 // z0isnanz0 must be z0isnand0 +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class OpPlus. --- +// --------------------- +ClassName = 'OpPlus'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPPLUS(IN(1).SZ,IN(2).SZ,IN(1).TP,IN(2).TP))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPPLUS(IN(1).SZ,IN(2).SZ,IN(1).TP,IN(2).TP))',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('g0g0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('g2g0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('g0g2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpPlus'; // BJ : Done AS : Float_Done + // ERROR : Strings are not correctly allowed. +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + +// ---------------------- +// --- Class OpMinus. --- +// ---------------------- +ClassName = 'OpMinus'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPMINUS(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPMINUS(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- + +FunctionName = 'OpMinus'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class OpRc. --- +// ------------------- +ClassName = 'OpRc'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_ADD(IN(1).SZ(2),IN(2).SZ(2))',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types considered +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +PrintStringInfo('c0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); + +PrintStringInfo('z0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('z0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); + +PrintStringInfo('s0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpRc'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class OpCc. --- +// ------------------- +ClassName = 'OpCc'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(1).SZ(1),IN(2).SZ(1))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types considered +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +PrintStringInfo('c0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); + +PrintStringInfo('z0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('z0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); + +PrintStringInfo('s0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpCc'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------- +// --- Class cat. --- +// ------------------- +ClassName = 'cat'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(2).TP,IN(3).TP)',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(3).SZ(1))',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(2)= FA_ADD(IN(2).SZ(2),IN(3).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_ROW_COLUMN_CAT(IN(1).VAL,IN(2).SZ(1),IN(3).SZ(1)))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_ROW_COLUMN_CAT(IN(1).VAL,IN(2).SZ(2),IN(3).SZ(2)))',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(1)= FA_SZ_ROW_COLUMN_CAT(IN(1).VAL,IN(2).SZ(1),IN(3).SZ(1))',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(2)= FA_SZ_ROW_COLUMN_CAT(IN(1).VAL,IN(2).SZ(2),IN(3).SZ(2))',ClassFileName,'file','y'); + + +// --- Function List Class. --- +//NUT: no mixed data types considered +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d2d2' +ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0u82u82' +ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('d0u162u162' +ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('d0i82i82' +ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('d0i162i162' +ArgSeparator+'i162',ClassFileName,'file','y'); + + + +PrintStringInfo('c0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); + +PrintStringInfo('z0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('u80u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('z0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); + +PrintStringInfo('s0c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cat'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class Find. --- +// ------------------- +ClassName = 'Find'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MAX(FA_MUL(IN(1).SZ(1),IN(1).SZ(2)),''1'')',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_MAX(FA_MUL(IN(1).SZ(1),IN(1).SZ(2)),''1'')',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(FA_MIN( IN(2).VAL ,FA_MUL(IN(1).SZ(1),IN(1).SZ(2))) ,IN(2).TP)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(FA_MIN( IN(2).VAL ,FA_MUL(IN(1).SZ(1),IN(1).SZ(2))) ,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SZ_FROM_VAL(FA_MIN( IN(2).VAL ,FA_MUL(IN(1).SZ(1),IN(1).SZ(2))) ,IN(2).TP)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80u80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160u160',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80i80',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i60i60',ClassFileName,'file','y'); + +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); + + +PrintStringInfo('s0s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80u80',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160u160',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80i80',ClassFileName,'file','y'); +PrintStringInfo('i160i60'+ArgSeparator+'i60i60',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'find'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class Length. --- +// --------------------- +ClassName = 'Length'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_USER',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'d0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'length'; // AS : done AS : Float_Done + // warning for string input , the length is +1 than scilab because + // in C we must take in account the ending '\0' +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'type'; // AS : done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class Size. --- +// ------------------- +ClassName = 'Size'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_REAL(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'d2',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +PrintStringInfo('s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s0s0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0d0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'s0s0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'d0d0',ClassFileName,'file','y'); + +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); + +PrintStringInfo('d2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'size'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class Return. --- +// --------------------- +ClassName = 'Return'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 0',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo(ArgSeparator,ClassFileName,'file','y'); + +//NUT anche se metto Return funziona bene comunque! cerca di capire il motivo. +//NUT limited use to zero in and out args only. +// --- Annotation Function And Function List Function. --- +FunctionName = 'return'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ---------------------- +// --- Class OpColon. --- +// ---------------------- +ClassName = 'OpColon'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MIN_REAL(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); + + + +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(FA_ADD(FA_SUB(FA_REAL(IN(2).VAL,IN(2).TP),FA_REAL(IN(1).VAL,IN(1).TP)),''1''),FA_TP_REAL(IN(2).TP))',ClassFileName,'file','y'); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MIN_REAL(IN(1).TP,FA_TP_MIN_REAL(IN(2).TP,IN(3).TP))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_FROM_VAL(FA_ADD(FA_DIV(FA_SUB(FA_REAL(IN(3).VAL,IN(3).TP),FA_REAL(IN(1).VAL, IN(1).TP)),FA_REAL(IN(2).VAL,IN(2).TP)),''1''),FA_TP_REAL(IN(3).TP))',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); + +PrintStringInfo('s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); + + +PrintStringInfo('s0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); + + +PrintStringInfo('s0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); + + + + +PrintStringInfo('s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z0z0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); + +PrintStringInfo('s0s0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s0c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s0c0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +PrintStringInfo('c0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('c0c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('c0s0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +PrintStringInfo('d0z0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0d0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); + +PrintStringInfo('z0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('z0z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('z0d0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); + + +PrintStringInfo('s0s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c0c0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z0z0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); + + +PrintStringInfo('s0s0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0c0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0c0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('c0s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('c0c0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('c0s0c0'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('d0z0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0z0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); + +PrintStringInfo('z0d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('z0z0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('z0d0z0'+ArgSeparator+'d2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpColon'; // AS : done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ---------------------- +// --- Class IsEmpty. --- +// ---------------------- +ClassName = 'IsEmpty'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_USER',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'isempty'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ---------------------- +// --- Class Trace. --- +// ---------------------- +ClassName = 'Trace'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'trace'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//NUT det is a little bit complex but for the moment we assume that +//NUT that det works as trace function. +FunctionName = 'det'; // AS : Done AS : Float_Done + +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// -------------------- +// --- Class OpIns. --- +// -------------------- +ClassName = 'OpIns'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 5',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s2s0s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2s2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s0s0s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s0s2s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2s0s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2s2s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s0s2s2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2s0s2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2s2s2'+ArgSeparator,ClassFileName,'file','y'); + +PrintStringInfo('d2d0d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2d2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d0d0d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d0d2d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2d0d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2d2d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d0d2d2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2d0d2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2d2d2'+ArgSeparator,ClassFileName,'file','y'); + +PrintStringInfo('c2s0c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2c2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s0s0c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s0s2c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2s0c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2s2c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s0s2c2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2s0c2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2s2c2'+ArgSeparator,ClassFileName,'file','y'); + +PrintStringInfo('z2d0z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2z2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d0d0z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d0d2z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2d0z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2d2z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d0d2z2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2d0z2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2d2z2'+ArgSeparator,ClassFileName,'file','y'); + +//Mixed input arguments +PrintStringInfo('s2s0c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2c2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s0s0c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s0s2c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2s0c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2s2c0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s0s2c2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2s0c2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2s2s2c2'+ArgSeparator,ClassFileName,'file','y'); + +PrintStringInfo('d2d0z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2z2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d0d0z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d0d2z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2d0z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2d2z0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d0d2z2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2d0z2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2d2d2z2'+ArgSeparator,ClassFileName,'file','y'); + +PrintStringInfo('c2s0s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2s2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s0s0s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s0s2s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2s0s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2s2s0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s0s2s2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2s0s2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('c2s2s2s2'+ArgSeparator,ClassFileName,'file','y'); + +PrintStringInfo('z2d0d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2d2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d0d0d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d0d2d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2d0d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2d2d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d0d2d2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2d0d2'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('z2d2d2d2'+ArgSeparator,ClassFileName,'file','y'); + +// Hypermatrix management +PrintStringInfo('d3d0d0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d3d0d0d0d0'+ArgSeparator,ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpIns'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// -------------------- +// --- Class OpExt. --- +// -------------------- +ClassName = 'OpExt'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(2).SZ(1),IN(2).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(2).SZ(1),IN(2).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(3).SZ(1),IN(3).SZ(2))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(2).SZ(1),IN(2).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(3).SZ(1),IN(3).SZ(2))',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s2s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +PrintStringInfo('c2s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c2s2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); + +PrintStringInfo('z2d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z2d2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// Hypermatrix Management +PrintStringInfo('s3s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d3d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d3d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d3s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpExt'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class Disp. --- +// ------------------- +ClassName = 'Disp'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'',ClassFileName,'file','y'); + +PrintStringInfo('d3'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'disp'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class String --- +// ------------------- +ClassName = 'String'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(IN.SZ)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(IN.SZ)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'g0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'g2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'string'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ---------------------- +// --- Class OpEqual. --- +// ---------------------- +ClassName = 'OpEqual'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ)',ClassFileName,'file','y'); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(2).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(IN(2).SZ)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SZ_2(IN(2).SZ)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); +//NUT per ora non considero le equal con nin != 1 + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpEqual'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// -------------------- +// --- Class Mopen. --- +// -------------------- +ClassName = 'Mopen'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= FA_TP_USER',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= FA_TP_USER',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''f''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= FA_TP_USER',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2'+ArgSeparator+'f0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'f0s0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'f0d0',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'f0',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'f0s0',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'f0d0',ClassFileName,'file','y'); +PrintStringInfo('g2g2s0'+ArgSeparator+'f0s0',ClassFileName,'file','y'); +PrintStringInfo('g2g2s0'+ArgSeparator+'f0d0',ClassFileName,'file','y'); +PrintStringInfo('g2g2d0'+ArgSeparator+'f0s0',ClassFileName,'file','y'); +PrintStringInfo('g2g2d0'+ArgSeparator+'f0d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'mopen'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class Mput. --- +// ------------------- +ClassName = 'Mput'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''i''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('s2g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d0g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('d2g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('u80g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('u82g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('i80g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('i82g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('u160g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('u162g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('i160g2f0'+ArgSeparator,ClassFileName,'file','y'); +PrintStringInfo('i162g2f0'+ArgSeparator,ClassFileName,'file','y'); + +PrintStringInfo('s0g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); //NUT la mput e' strana +PrintStringInfo('s2g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); +PrintStringInfo('d0g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); +PrintStringInfo('d2g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); +PrintStringInfo('u80g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); +PrintStringInfo('u82g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); +PrintStringInfo('i80g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); +PrintStringInfo('i82g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); +PrintStringInfo('u160g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); +PrintStringInfo('u162g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); +PrintStringInfo('i160g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); +PrintStringInfo('i162g2f0'+ArgSeparator+'i0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'mput'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class Mget. --- +// ------------------- +ClassName = 'Mget'; +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_USER',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_RTMAX(FA_SZ_FROM_VAL(IN(1).VAL,IN(1).TP))',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0g2f0'+ArgSeparator+'s0',ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('s0g2f0'+ArgSeparator+'d0',ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('d0g2f0'+ArgSeparator+'s0',ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('d0g2f0'+ArgSeparator+'d0',ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('s0g2f0'+ArgSeparator+'s2',ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('s0g2f0'+ArgSeparator+'d2',ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('d0g2f0'+ArgSeparator+'s2',ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('d0g2f0'+ArgSeparator+'d2',ClassFileName,'file','y'); //NUT da chiarire + +// --- Annotation Function And Function List Function. --- +FunctionName = 'mget'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class Mclose. --- +// --------------------- +ClassName = 'Mclose'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 0',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''i''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('f0'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('f0'+ArgSeparator+'i0',ClassFileName,'file','y'); //NUT da chiarire + +// --- Annotation Function And Function List Function. --- +FunctionName = 'mclose'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class Mseek. --- +// --------------------- +ClassName = 'Mseek'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('s0f0'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('s0f0g2'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire + +PrintStringInfo('d0'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire +PrintStringInfo('d0f0'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire + + +PrintStringInfo('d0f0g2'+ArgSeparator,ClassFileName,'file','y'); //NUT da chiarire + +// --- Annotation Function And Function List Function. --- +FunctionName = 'mseek'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// --------------------- +// --- Class Convol. --- +// --------------------- +ClassName = 'Convol'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SUB(FA_ADD(IN(1).SZ(2),IN(2).SZ(2)),''1'')',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SUB(FA_ADD(IN(1).SZ(2),IN(2).SZ(2)),''1'')',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(FA_TP_MAX(IN(1).TP,IN(2).TP),IN(3).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= FA_TP_MAX(FA_TP_MAX(IN(1).TP,IN(2).TP),IN(3).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SUB(FA_ADD(IN(1).SZ(2),IN(2).SZ(2)),''1'')',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s0s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0c0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'z0z0',ClassFileName,'file','y'); + +PrintStringInfo('s0s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2c2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2c2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2z2',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2c2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); + +PrintStringInfo('s0s0s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0c0'+ArgSeparator+'c0c0',ClassFileName,'file','y'); +PrintStringInfo('z0z0z0'+ArgSeparator+'z0z0',ClassFileName,'file','y'); + +PrintStringInfo('s0s2s0'+ArgSeparator+'s2s0',ClassFileName,'file','y'); +PrintStringInfo('d0d2d0'+ArgSeparator+'d2d0',ClassFileName,'file','y'); +PrintStringInfo('c0c2c0'+ArgSeparator+'c2c0',ClassFileName,'file','y'); +PrintStringInfo('z0z2z0'+ArgSeparator+'z2z0',ClassFileName,'file','y'); + +PrintStringInfo('s2s2s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('c2c2c2'+ArgSeparator+'c2c2',ClassFileName,'file','y'); +PrintStringInfo('z2z2z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); + +PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); + +//added combination + +PrintStringInfo('d2d0'+ArgSeparator+'d0d2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z0z2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z0z2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z0z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'convol'; // AS : done except 2 ouputs cases and 3 inputs cases AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class IFFT. --- +// ------------------- +ClassName = 'IFFT'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',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= IN(1).TP',ClassFileName,'file','y'); //FOR INRIA changed from IN(1).TP to FA_TP_USER +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'ifft'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------ +// --- Class FFT. --- +// ------------------ +ClassName = 'FFT'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// scilab2c doesn't handle multidimensionnal Fft + +//PrintStringInfo('s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +//PrintStringInfo('d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('s0s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +//PrintStringInfo('d0d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +//PrintStringInfo('c0s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +//PrintStringInfo('z0d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +//PrintStringInfo('s2s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +//PrintStringInfo('d2d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('s2s0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +//PrintStringInfo('d2d0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +//PrintStringInfo('c2s0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +//PrintStringInfo('z2d0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); + +//PrintStringInfo('s0s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +//PrintStringInfo('d0d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('s0s0s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +//PrintStringInfo('d0d0d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +//PrintStringInfo('c0s0s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +//PrintStringInfo('z0d0d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +//PrintStringInfo('s2s0s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +//PrintStringInfo('d2d0d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('s2s0s0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +//PrintStringInfo('d2d0d0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +//PrintStringInfo('c2s0s0s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +//PrintStringInfo('z2d0d0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); + + +//NUT non metto tutte le combinazioni ma prima cerco di capire cosa mi offre INRIA +//NUT come libreria a disposizione. +// --- Annotation Function And Function List Function. --- +FunctionName = 'fft'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ----------------------- +// --- Class FFTShift. --- +// ----------------------- +ClassName = 'FFTShift'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s0g2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0g2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0g2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0g2'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2g2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2g2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'fftshift'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// -------------------- +// --- Class Meanf. --- +// -------------------- +ClassName = 'Meanf'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP, IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP, IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_SEL1(IN(1).SZ(1),IN(3).VAL)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_SEL2(IN(1).SZ(2),IN(3).VAL)',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2s2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2s2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2d2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +// +PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s0c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c0c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +// +PrintStringInfo('s0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'d0',ClassFileName,'file','y'); + +PrintStringInfo('s2c2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'d0',ClassFileName,'file','y'); + +PrintStringInfo('s0c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('d0z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('c0c0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z0z0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); + +PrintStringInfo('s2c2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2z2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2c2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2z2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'meanf'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'variancef'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'stdevf'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// -------------------- +// --- Class Frmag. --- +// -------------------- +ClassName = 'Frmag'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(2).VAL',ClassFileName,'file','y'); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); + +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(2).VAL',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(2).VAL',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(3).VAL',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(3).VAL',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= FA_TP_MAX(IN(1).TP,IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(3).VAL',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2d0'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'d0d0',ClassFileName,'file','y'); + +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); +PrintStringInfo('s2s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s2s0'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('s0s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s0s0s0'+ArgSeparator+'s0s0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'frmag'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------ +// --- Class Lev. --- +// ------------------ +ClassName = 'Lev'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); + +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SUB(FA_ADD(IN(1).SZ(1),IN(1).SZ(2)),''2'')',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SUB(FA_ADD(IN(1).SZ(1),IN(1).SZ(2)),''2'')',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SUB(FA_ADD(IN(1).SZ(1),IN(1).SZ(2)),''2'')',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= FA_SUB(FA_ADD(IN(1).SZ(1),IN(1).SZ(2)),''2'')',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2s0s2',ClassFileName,'file','y'); + +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d0d2',ClassFileName,'file','y'); + +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2c0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2c0c2',ClassFileName,'file','y'); + +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2z0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2z0z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'lev'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// -------------------------- +// --- Class OpBackSlash. --- +// -------------------------- +ClassName = 'OpBackSlash'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP) ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OPBACKSLASH(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OPBACKSLASH(IN(1).SZ,IN(2).SZ))',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); + +PrintStringInfo('u80u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u160u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i80i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('i160i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + + +PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('c0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +PrintStringInfo('c0s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('s0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0c2'+ArgSeparator+'c2',ClassFileName,'file','y'); + +PrintStringInfo('c2s0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('s2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c0'+ArgSeparator+'c2',ClassFileName,'file','y'); + +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); + +PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z0'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'OpBackSlash'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ----------------------- +// --- Class Cepstrum. --- +// ----------------------- +ClassName = 'Cepstrum'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= FA_TP_MAX(IN(1).TP,IN(2).TP) ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo('s0s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('s0c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('s2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'Cepstrum'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class TOEPLITZ ---------------- +//------------------------------------ +ClassName = 'toeplitz'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'toeplitz'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class CROSS ---------------- +//------------------------------------ +ClassName = 'cross'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('c2c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cross'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class NDGRID ---------------- +//------------------------------------ +ClassName = 'ndgrid'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('z2z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'ndgrid'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +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 ISINF ---------------- +//------------------------------------ +ClassName = 'isinf'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'g0',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'isinf'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class CALERF ---------------- +//------------------------------------ +ClassName = 'calerf'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0d0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2d0'+ArgSeparator+'s2',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'calerf'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class ERF ---------------- +//------------------------------------ +ClassName = 'erf'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'erf'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class GAMMA ---------------- +//------------------------------------ +ClassName = 'gamma'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'gamma'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class GAMMALN ---------------- +//------------------------------------ +ClassName = 'gammaln'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +//------------------------------------ +//---- Class BETA ---------------- +//------------------------------------ +ClassName = 'beta'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'beta'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class BESSELI ---------------- +//------------------------------------ +ClassName = 'besseli'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'besseli'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class BESSELJ ---------------- +//------------------------------------ +ClassName = 'besselj'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'besselj'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class BESSELK ---------------- +//------------------------------------ +ClassName = 'besselk'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'besselk'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class BESSELY ---------------- +//------------------------------------ +ClassName = 'bessely'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'bessely'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + +//------------------------------------ +//---- Class ERFC ---------------- +//------------------------------------ +ClassName = 'erfc'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'erfc'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class ERFCX ---------------- +//------------------------------------ +ClassName = 'erfcx'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'erfcx'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class ERFINV ---------------- +//------------------------------------ +ClassName = 'erfinv'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'erfinv'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------- +// --- Class Spec. --- +// ------------------- +ClassName = 'Spec'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); //FOR INRIA FA_TP_MAX NEEDS 2 Input args +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); //FOR INRIA FA_TP_MAX NEEDS 2 Input args +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// Edited by Sandeep Gupta, IITB FOSSEE Project. +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= FA_TP_COMPLEX(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo('s0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s0'+ArgSeparator+'c0c0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'z0z0',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0c0',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0z0',ClassFileName,'file','y'); + +PrintStringInfo('s2'+ArgSeparator+'s2s2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'c2c2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2z2',ClassFileName,'file','y'); + +PrintStringInfo('d2d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'z2d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'z2d2z2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'z2d2z2z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'spec'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ------------------- +// --- Class Part. --- +// ------------------- +ClassName = 'Part'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_RTMAX(IN(1).SZ(2))',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo('g2s0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('g2d0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('g2s2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('g2d2'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'part'; // to code +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ----------------------- +// --- Class Strindex. --- +// ----------------------- +ClassName = 'Strindex'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_RTMAX(IN(1).SZ(2))',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +PrintStringInfo('g2g2'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'strindex'; // to code +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +// ----------------------- +// --- Class StrSubSt. --- +// ----------------------- +//ClassName = 'StrSubSt'; + +// --- Class Annotation. --- +//PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +//ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +//PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +//PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(2)= FA_SZ_RTMAX(FA_MUL(IN(1).SZ(2),IN(3).SZ(2)))',ClassFileName,'file','y'); + +// --- Function List Class. --- +//NUT: no mixed data types +//ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +//PrintStringInfo('g2g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +//FunctionName = 'strsubst'; // to code +//PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +//INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +//INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +// ------------------ +// --- Class Expm. --- +// ------------------ +ClassName = 'Expm'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'expm'; // AS : Done AS : Float_Done +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---Functions for Scilab-arduino ---- +//------------------------------------ + + +//------------------------------------ +//---- Class cmd_digital_out --------- +//------------------------------------ +ClassName = 'cmd_digital_out'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0u80'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_digital_out'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class cmd_digital_in ---------- +//------------------------------------ +ClassName = 'cmd_digital_in'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_digital_in'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class cmd_analog_out ---------- +//------------------------------------ +ClassName = 'cmd_analog_out'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0u80'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_analog_out'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class cmd_analog_in ----------- +//------------------------------------ +ClassName = 'cmd_analog_in'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'u160',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_analog_in'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class cmd_dcmotor_setup ------- +//------------------------------------ +ClassName = 'cmd_dcmotor_setup'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 5',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_dcmotor_setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class cmd_dcmotor_run ------- +//------------------------------------ +ClassName = 'cmd_dcmotor_run'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0i160'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_dcmotor_run'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//---Class cmd_servo_attach.--- +ClassName = 'cmd_servo_attach'; + +//----Class Annotation.---- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +//---Function List Class.----- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_servo_attach'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//---Class cmd_servo_detach.--- +ClassName = 'cmd_servo_detach'; + +//----Class Annotation.---- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +//---Function List Class.----- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_servo_detach'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//---Class cmd_servo_move.--- +ClassName = 'cmd_servo_move'; + +//----Class Annotation.---- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +//---Function List Class.----- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_servo_move'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class cmd_analog_in_volt ----------- +//------------------------------------ +ClassName = 'cmd_analog_in_volt'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_analog_in_volt'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class cmd_i2c_dev ----------- +//------------------------------------ +ClassName = 'cmd_i2c_dev'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_i2c_dev'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class cmd_i2c_write ----------- +//------------------------------------ +ClassName = 'cmd_i2c_write'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('u80d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_i2c_write'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class cmd_i2c_read ----------- +//------------------------------------ +ClassName = 'cmd_i2c_read'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u80d0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_i2c_read'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class cmd_i2c_read_register ----------- +//------------------------------------ +ClassName = 'cmd_i2c_read_register'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('u80d0'+ArgSeparator+'u160',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_i2c_read_register'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +//------------------------------------ +//---- Class cmd_i2c_write_register ----------- +//------------------------------------ +ClassName = 'cmd_i2c_write_register'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''s''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('u80d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_i2c_write_register'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +//------------------------------------ +//---- Class Sleep ------------------- + +//------------------------------------ +ClassName = 'sleep'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'sleep'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class cmd_analog_out_volt ---------- +//------------------------------------ +ClassName = 'cmd_analog_out_volt'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0s0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_analog_out_volt'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class cmd_dcmotor_release ------- +//------------------------------------ +ClassName = 'cmd_dcmotor_release'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cmd_dcmotor_release'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---Functions for AVR --------------- +//------------------------------------ + + +//------------------------------------ +//---- Class AVRDigitalSetup --------- +//------------------------------------ +ClassName = 'AVRDigitalSetup'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRDigitalSetup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class AVRDigitalPortSetup --------- +//------------------------------------ +ClassName = 'AVRDigitalPortSetup'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRDigitalPortSetup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + + +//------------------------------------ +//---- Class AVRDigitalOut ----------- +//------------------------------------ +ClassName = 'AVRDigitalOut'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); + +//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRDigitalOut'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class AVRDigitalOut ----------- +//------------------------------------ +ClassName = 'AVRDigitalIn'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRDigitalIn'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class AVRADCSetup ----------- +//------------------------------------ +ClassName = 'AVRADCSetup'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRADCSetup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class AVRReadADC ----------- +//------------------------------------ +ClassName = 'AVRReadADC'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRReadADC'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class AVRPWM0Setup ------------- +//------------------------------------ +ClassName = 'AVRPWM0Setup'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRPWM0Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class AVRPWM2Setup ------------- +//------------------------------------ +ClassName = 'AVRPWM2Setup'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRPWM2Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class AVRPWM1Setup ------------- +//------------------------------------ +ClassName = 'AVRPWM1Setup'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRPWM1Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +//------------------------------------ +//---- Class AVRPWM0SetDuty ----------- +//------------------------------------ +ClassName = 'AVRPWM0SetDuty'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRPWM0SetDuty'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class AVRPWM2SetDuty ----------- +//------------------------------------ +ClassName = 'AVRPWM2SetDuty'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRPWM2SetDuty'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class AVRPWM1SetDuty ----------- +//------------------------------------ +ClassName = 'AVRPWM1SetDuty'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRPWM1SetDuty'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + +//------------------------------------ +//---- Class AVRTimerInit ----------- +//------------------------------------ +ClassName = 'AVRTimerSetup'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRTimerSetup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + +//------------------------------------ +//---- Class AVRGetTimerValue ----------- +//------------------------------------ +ClassName = 'AVRGetTimerValue'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRGetTimerValue'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class AVRSleep ----------- +//------------------------------------ +ClassName = 'AVRSleep'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRSleep'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +//------------------------------------ +//---- Class AVRUARTSetup ----------- +//------------------------------------ +ClassName = 'AVRUARTSetup'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRUARTSetup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class AVRUARTTransmit ----------- +//------------------------------------ +ClassName = 'AVRUARTTransmit'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('g0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +// +//PrintStringInfo('d2'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'u80',ClassFileName,'file','y'); + +//PrintStringInfo('d0d0u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRUARTTransmit'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class AVRUARTReceiveChar ----------- +//------------------------------------ +ClassName = 'AVRUARTReceiveChar'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 0',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'AVRUARTReceiveChar'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +//------------------------------------ +//---- Class RPI_0IN_Void ---------- +//------------------------------------ +ClassName = 'RPI_0IN_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 0',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo(''+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_gertBoardSPISetup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_0IN_u8 ------------ +//------------------------------------ +ClassName = 'RPI_0IN_u8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 0',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo(''+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_boardRev'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_digitalReadByte'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_0IN_u32 ----------- +//------------------------------------ +ClassName = 'RPI_0IN_u32'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 0',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u32''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo(''+ArgSeparator+'u320',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_millis'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_micros'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_1IN_u8_Void ------- +//------------------------------------ +ClassName = 'RPI_1IN_u8_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_digitalWriteByte'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_lcdClear'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_lcdHome'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_piGlowSetup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_serialClose'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_serialFlush'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_softPwmStop'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_softToneStop'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_1IN_u16_Void ------ +//------------------------------------ +ClassName = 'RPI_1IN_u16_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u160'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_pwmClock'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_1IN_u32_Void ------ +//------------------------------------ +ClassName = 'RPI_1IN_u32_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u320'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_pwmRange'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_delay'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_delayMicro'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_1IN_g_Void -------- +//------------------------------------ +ClassName = 'RPI_1IN_g_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_pwmMode'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_1IN_u8_i8 --------- +//------------------------------------ +ClassName = 'RPI_1IN_u8_i8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'i80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_I2CSetup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_wpiToGpio'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_physToGpio'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_1IN_u16_i8 -------- +//------------------------------------ +ClassName = 'RPI_1IN_u16_i8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u160'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'i80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_I2CRead'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_gertboardAnalogSetup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_sn3218Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_1IN_g_i8 ---------- +//------------------------------------ +ClassName = 'RPI_1IN_g_i8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2'+ArgSeparator+'i80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_pinNumbering'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_1IN_u8_u8 --------- +//------------------------------------ +ClassName = 'RPI_1IN_u8_u8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_getAlt'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_digitalRead'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_serialDataAvail'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_softToneCreate'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_1IN_u16_u16 ------- +//------------------------------------ +ClassName = 'RPI_1IN_u16_u16'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'u160',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_gertboardAnalogRead'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_1IN_u8_g ------ +//------------------------------------ +ClassName = 'RPI_1IN_u8_g'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +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'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_serialGetchar'; + +//------------------------------------ +//---- Class RPI_2IN_u8u8_Void ----- +//------------------------------------ +ClassName = 'RPI_2IN_u8u8_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80u80'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_pinModeAlt'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_lcdCursor'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_lcdSendCommand'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_lcdCursorBlink'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_lcdDisplay'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_lcdPutchar'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_padDrive'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_piGlowLeg'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_piGlowRing'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_digitalWrite'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_serialPutchar'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_2IN_u8u16_Void ---- +//------------------------------------ +ClassName = 'RPI_2IN_u8u16_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80u160'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_pwmWrite'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_pwmToneWrite'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_softPwmWrite'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_2IN_u16u16_Void --- +//------------------------------------ +ClassName = 'RPI_2IN_u16u16_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u160u160'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_gertboardAnalogWrite'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_2IN_u8g_Void ------ +//------------------------------------ +ClassName = 'RPI_2IN_u8g_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80g2'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0g2'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_pinMode'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_lcdPuts'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_lcdPrintf'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_pullControl'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_serialPrintf'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_serialPuts'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_2IN_u8u32_Void ---- +//------------------------------------ +ClassName = 'RPI_2IN_u8u32_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80u320'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_softToneWrite'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_2IN_u8i16_i8 ------ +//------------------------------------ +ClassName = 'RPI_2IN_u8i16_i8'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80i160'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'i80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_waitForInterrupt'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_2IN_u16u16_i8 ----- +//------------------------------------ +ClassName = 'RPI_2IN_u16u16_i8'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u160u160'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'i80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_I2CWrite'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_I2CReadReg8'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_I2CReadReg16'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_2IN_gu32_i8 ----- +//------------------------------------ +ClassName = 'RPI_2IN_gu32_i8'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2u320'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('g2d0'+ArgSeparator+'i80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_serialOpen'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_2IN_u16u8_u8 ----- +//------------------------------------ +ClassName = 'RPI_2IN_u16u8_u8'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u160u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_pcf8574Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_pcf8591Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_mcp23008Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_mcp23016Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_mcp23017Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_3IN_u8u8u8_Void --- +//------------------------------------ +ClassName = 'RPI_3IN_u8u8u8_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80u80u80'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_lcdPosition'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_piGlow1'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_3IN_u16u16u16_i8 -- +//------------------------------------ +ClassName = 'RPI_3IN_u16u16u16_i8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u160u160u160'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'i80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_I2CWriteReg8'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_I2CWriteReg16'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_3IN_u8u8u8_u8 ----- +//------------------------------------ +ClassName = 'RPI_3IN_u8u8u8_u8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_shiftIn'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_3IN_u8u16u16_u8 --- +//------------------------------------ +ClassName = 'RPI_3IN_u8u16u16_u8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80u160u160'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_softPwmCreate'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_3IN_u16u8u16_u8 --- +//------------------------------------ +ClassName = 'RPI_3IN_u16u8u16_u8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u160u160u160'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_mcp23s08Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'RPI_mcp23s17Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_4IN_u8u8u8u8_Void - +//------------------------------------ +ClassName = 'RPI_4IN_u8u8u8u8_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80u80u80u80'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_shiftOut'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//-------------------------------------- +//---- Class RPI_5IN_u16u8u8u8u8_i8 -- +//-------------------------------------- +ClassName = 'RPI_5IN_u16u8u8u8u8_i8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 5',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''i8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u160u80u80u80u80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0d0d0'+ArgSeparator+'i80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_sr595Setup'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_10IN_u8x10_Void --- +//------------------------------------ +ClassName = 'RPI_10IN_u8x10_Void'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 10',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80u80u80u80u80u80u80u80u80u80'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0d0d0d0d0d0d0d0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_lcdCharDef'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RPI_13IN_u8x13_u8 ----- +//------------------------------------ +ClassName = 'RPI_13IN_u8x13_u8'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 10',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('u80u80u80u80u80u80u80u80u80u80u80u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('d0d0d0d0d0d0d0d0d0d0d0d0d0'+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'RPI_lcdInit'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class ODE --------------------- +//------------------------------------ +ClassName = 'ODE'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(1).SZ(2),IN(3).SZ(2))',ClassFileName,'file','y'); + +//Arguements specified: initial value, start time, end time, ode function +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); + +//Arguements specified: solver type, initial value, start time, end time, ode function +PrintStringInfo('NIN= 5',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(2).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(2).SZ(2),IN(4).SZ(2))',ClassFileName,'file','y'); + +//Arguements specified: solver type, initial value, start time, end time, ode function +PrintStringInfo('NIN= 5',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(2).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(4).SZ(2)',ClassFileName,'file','y'); + +//Arguements specified: initial value, start time, end time, relative tolerance, +// absolute tolerance, ode function +PrintStringInfo('NIN= 6',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(1).SZ(2),IN(3).SZ(2))',ClassFileName,'file','y'); + +//Arguements specified: initial value, start time, end time, relative tolerance, +// absolute tolerance, ode function +PrintStringInfo('NIN= 6',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0fn0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0d0fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d0d2fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0d2fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); + +PrintStringInfo('g2d0d0d0fn0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('g2d2d0d0fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('g2d0d0d2fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('g2d2d0d2fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); + +PrintStringInfo('d0d0d0d0d0fn0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0d0d0d0fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d0d2d0d0fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0d2d0d0fn0'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'ode'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CUMSUM --------------------- +//------------------------------------ +ClassName = 'CUMSUM'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82g2'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82g2'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162g2'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162g2'+ArgSeparator+'i162',ClassFileName,'file','y'); +// --- Annotation Function And Function List Function. --- +FunctionName = 'cumsum'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'cumprod'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class MATRIX--------------------- +//------------------------------------ +ClassName = 'MATRIX'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(2).VAL',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(3).VAL',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2s0s0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2u160u160'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2u80u80'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('z2d0d0'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2s0s0'+ArgSeparator+'z2',ClassFileName,'file','y'); + +PrintStringInfo('s2d0d0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s0s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2u160u160'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2u80u80'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('u162d0d0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162s0s0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u82g2'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82g2'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162g2'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162g2'+ArgSeparator+'i162',ClassFileName,'file','y'); +// --- Annotation Function And Function List Function. --- +FunctionName = 'matrix'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class NNZ--------------------- +//------------------------------------ +ClassName = 'NNZ'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u16''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'u160',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'nnz'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class PERTRANS--------------------- +//------------------------------------ +ClassName = 'PERTRANS'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'pertrans'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class TRIU --------------------- +//------------------------------------ +ClassName = 'TRIU'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u80d0'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80d0'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160d0'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160d0'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'triu'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +FunctionName = 'tril'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class KRON -------------------- +//------------------------------------ +ClassName = 'KRON'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(1).SZ(1),IN(2).SZ(1))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(1).SZ(2),IN(2).SZ(2))',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'kron'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class HANK -------------------- +//------------------------------------ +ClassName = 'HANK'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_MUL(IN(1).VAL,IN(3).SZ(1))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(2).VAL,IN(3).SZ(1))',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'hank'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); +//------------------------------------ +//---- Class FLIPDIM ----------------- +//------------------------------------ +ClassName = 'FLIPDIM'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('i80i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('u160u160'+ArgSeparator+'u160',ClassFileName,'file','y'); +PrintStringInfo('i160i160'+ArgSeparator+'i160',ClassFileName,'file','y'); + +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('d2d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s0d0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82u80u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82i80u80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u160u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162i160i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u82d0d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82d0d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162d0d0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162d0d0'+ArgSeparator+'i162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'flipdim'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class DIFF ----------------- +//------------------------------------ +ClassName = 'DIFF'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_DIFF(IN(1).SZ,''1'',''0''))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_DIFF(IN(1).SZ,''1'',''0''))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_DIFF(IN(1).SZ,IN(2).VAL,''0''))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_DIFF(IN(1).SZ,IN(2).VAL,''0''))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_DIFF(IN(1).SZ,IN(2).VAL, IN(3).VAL))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_DIFF(IN(1).SZ,IN(2).VAL, IN(3).VAL))',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2d0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('u82u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82u80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162u160'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162u160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); + +PrintStringInfo('d2d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2d0d0'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2s0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u82d0d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u82u80d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('i82d0d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i82u80d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('u162d0d0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('u162u160d0'+ArgSeparator+'u162',ClassFileName,'file','y'); +PrintStringInfo('i162d0d0'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('i162u160d0'+ArgSeparator+'i162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'diff'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class NORM -------------------- +//------------------------------------ +ClassName = 'NORM'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',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('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); + +PrintStringInfo('d2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2d0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +PrintStringInfo('d2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2g2'+ArgSeparator+'s0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'norm'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CONVSTR -------------------- +//------------------------------------ +ClassName = 'CONVSTR'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('g0g0'+ArgSeparator+'g0',ClassFileName,'file','y'); +PrintStringInfo('g2g0'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'convstr'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class cvCreateImage -------------------- +//------------------------------------ +ClassName = 'CV_CreateImage'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',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('d0d0g2d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_CreateImage'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class cvLoadImage -------------------- +//------------------------------------ +ClassName = 'CV_LoadImage'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''mt''',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('g2d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_LoadImage'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class cvShowImage ------------- +//------------------------------------ +ClassName = 'CV_ShowImage'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',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('g2mt0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('mt0'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_ShowImage'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'CV_SaveImage'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_WaitKey -------------- +//------------------------------------ +ClassName = 'CV_WaitKey'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 0',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',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('d0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_WaitKey'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_CvtColor ------------- +//------------------------------------ +ClassName = 'CV_CvtColor'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''mt''',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('mt0g2'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_CvtColor'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_GetImgSize ----------- +//------------------------------------ +ClassName = 'CV_GetImgSize'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('mt0'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_GetImgSize'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_Threshold ----------- +//------------------------------------ +ClassName = 'CV_Threshold'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0d0g2'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_Threshold'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_AdaptiveThreshold ----------- +//------------------------------------ +ClassName = 'CV_AdaptiveThreshold'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 6',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0g2g2d0d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_AdaptiveThreshold'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_DistanceTransform ---- +//------------------------------------ +ClassName = 'CV_DistanceTransform'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',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('mt0g2d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_DistanceTransform'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_Blur ----------------- +//------------------------------------ +ClassName = 'CV_Blur'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 6',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0d0d0d0g2'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_Blur'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'CV_GaussianBlur'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_MedianBlur ----------------- +//------------------------------------ +ClassName = 'CV_MedianBlur'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_MedianBlur'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_Dilate --------------- +//------------------------------------ +ClassName = 'CV_Dilate'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 6',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',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('mt0g2d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); +PrintStringInfo('mt0g2d0d0g2d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_Dilate'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +FunctionName = 'CV_Erode'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_Canny ---------------- +//------------------------------------ +ClassName = 'CV_Canny'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 5',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0d0d0d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); +PrintStringInfo('mt0d0d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_Canny'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CV_CornerHarris ---------------- +//------------------------------------ +ClassName = 'CV_CornerHarris'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 5',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''mt''',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('mt0d0d0d0g2'+ArgSeparator+'mt0',ClassFileName,'file','y'); +PrintStringInfo('mt0d0d0d0'+ArgSeparator+'mt0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'CV_CornerHarris'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class syslin ------------------ +//------------------------------------ +ClassName = 'SYSLIN'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''ss''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(4).SZ(1))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''2'')',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 5',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''ss''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(4).SZ(1))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''2'')',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 6',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''ss''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(4).SZ(1))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''2'')',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2d2d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d2d2d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d2d2d2d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); + +PrintStringInfo('g2d0d0d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d0d2d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d0d0d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d0d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); + +PrintStringInfo('g2d0d0d0d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d0d2d0d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d0d0d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d0d2d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d2d2d2d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); + +PrintStringInfo('g2d0d0d0d0d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d0d2d0d2d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d0d0d2d2d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d0d2d2d2d0'+ArgSeparator+'ss2',ClassFileName,'file','y'); +PrintStringInfo('g2d2d2d2d0d2'+ArgSeparator+'ss2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'syslin'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class schur ------------------- +//------------------------------------ +ClassName = 'SCHUR'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= FA_SCHUR_TP(IN(2).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_SCHUR_SZ(IN(2).TP,IN(1).SZ(1))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SCHUR_SZ(IN(2).TP,IN(1).SZ(1))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 5',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(5).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(5).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(5).SZ(2)= ''1''',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2d0',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2d0d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2g2'+ArgSeparator+'d2d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2g2'+ArgSeparator+'d2d2d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2g2'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2g2'+ArgSeparator+'d2d2d2d2d0',ClassFileName,'file','y'); +// --- Annotation Function And Function List Function. --- +FunctionName = 'schur'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class lqr --------------------- +//------------------------------------ +ClassName = 'LQR'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_2(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_2(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_2(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('ss2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('ss2d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('ss2d2d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +// --- Annotation Function And Function List Function. --- +FunctionName = 'lqr'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class lqe --------------------- +//------------------------------------ +ClassName = 'LQE'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_1(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_SZ_2(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('ss2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'lqe'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class obscont ----------------- +//------------------------------------ +ClassName = 'OBSCONT'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OBSCNT(IN(1).VAL,IN(1).SZ(1),IN(1).SZ(2),NOutArg))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OBSCNT(IN(1).VAL,IN(1).SZ(1),IN(1).SZ(2),NOutArg))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_OBSCNT(IN(1).VAL,IN(1).SZ(1),IN(1).SZ(2),NOutArg))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_2(FA_SZ_OBSCNT(IN(1).VAL,IN(1).SZ(1),IN(1).SZ(2),NOutArg))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''2''',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('ss2d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('ss2d2d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'obscont'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class SQROOT --------------------- +//------------------------------------ +ClassName = 'SQROOT'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'sqroot'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class GIVENS --------------------- +//------------------------------------ +ClassName = 'GIVENS'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''2''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''2''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''2''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''2''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d2d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'givens'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class HOUSEHOLDER--------------------- +//------------------------------------ +ClassName = 'HOUSEHOLDER'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'householder'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class FULLRF--------------------- +//------------------------------------ +ClassName = 'FULLRF'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); + + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2d2d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2d2d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'fullrf'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class ROWCOMP --------------------- +//------------------------------------ +ClassName = 'ROWCOMP'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2d0',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2d0',ClassFileName,'file','y'); +PrintStringInfo('d2g2d0'+ArgSeparator+'d2d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'rowcomp'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class RANGE --------------------- +//------------------------------------ +ClassName = 'range'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d0'+ArgSeparator+'d2d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'range'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class LU --------------------- +//------------------------------------ +ClassName = 'lu'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'lu'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class SCALING --------------------- +//------------------------------------ +ClassName = 'scaling'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2s0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s2d0s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2z0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2d0z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2z0d2'+ArgSeparator+'z2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'scaling'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class QR--------------------- +//------------------------------------ +ClassName = 'QR'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');; +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');; +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y');; +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2d2d0d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2d0d2',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'qr'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class svd --------------------- +//------------------------------------ +ClassName = 'SVD'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z2g2'+ArgSeparator+'z2z2z2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2z2z2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'svd'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class HESS --------------------- +//------------------------------------ +ClassName = 'HESS'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'hess'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class RANK --------------------- +//------------------------------------ +ClassName = 'RANK'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',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('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'rank'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class SVA --------------------- +//------------------------------------ +ClassName = 'SVA'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'sva'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class balanc ------------------ +//------------------------------------ +ClassName = 'BALANC'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2d2'+ArgSeparator+'d2d2d2d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'balanc'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class RCOND ------------------- +//------------------------------------ +ClassName = 'RCOND'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',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('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'rcond'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CONVSTR -------------------- +//------------------------------------ +ClassName = 'CONVSTR'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +//PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +//PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'convstr'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class STRSUBST -------------------- +//------------------------------------ +ClassName = 'STRSUBST'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('g2g2g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'strsubst'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class STRCMP -------------------- +//------------------------------------ +ClassName = 'STRCMP'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +//PrintStringInfo('g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('g2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('g2g2g2'+ArgSeparator+'d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'strcmp'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class STRREV -------------------- +//------------------------------------ +ClassName = 'STRREV'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'strrev'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); + +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class STRRCHR -------------------- +//------------------------------------ +ClassName = 'STRRCHR'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'strrchr'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); + +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class STRCHR -------------------- +//------------------------------------ +ClassName = 'STRCHR'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2g2'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'strchr'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); + +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class STRNCPY -------------------- +//------------------------------------ +ClassName = 'STRNCPY'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(2).VAL',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2d0'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'strncpy'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); + +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class STRSPN -------------------- +//------------------------------------ +ClassName = 'STRSPN'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',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('g2g2'+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'strspn'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); + +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class STRCSPN -------------------- +//------------------------------------ +ClassName = 'STRCSPN'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',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('g2g2'+ArgSeparator+'u80',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'strcspn'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); + +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + +//------------------------------------ +//---- Class ASCII -------------------- +//------------------------------------ +ClassName = 'ASCII'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_ASCII(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SUB(IN(1).SZ(2),''1'')',ClassFileName,'file','y'); + +//PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +//PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).TP= FA_TP_ASCII(IN(1).TP)',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(2)= FA_SUB(IN(1).SZ(2),''1'')',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'ascii'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); + +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class DEC2BIN -------------------- +//------------------------------------ +ClassName = 'DEC2BIN'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(FA_SZ_DEC2BIN(IN(1).VAL),IN(1).SZ(2))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(2).VAL,IN(1).SZ(2))',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u162',ClassFileName,'file','y'); + +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i80d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i160d0'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u80d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u160d0'+ArgSeparator+'u162',ClassFileName,'file','y'); + +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); + +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i82d0'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162d0'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u82d0'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162d0'+ArgSeparator+'u162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'dec2bin'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class DEC2BASE -------------------- +//------------------------------------ +ClassName = 'DEC2BASE'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(FA_SZ_DEC2BASE(IN(1).VAL,IN(2).VAL),IN(1).SZ(2))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(IN(2).VAL,IN(1).SZ(2))',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('s0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('s2d0'+ArgSeparator+'g2',ClassFileName,'file','y'); + +PrintStringInfo('d0d0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('d2d0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('s0d0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('s2d0d0'+ArgSeparator+'g2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'dec2base'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class DEC2OCT -------------------- +//------------------------------------ +ClassName = 'DEC2OCT'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(FA_SZ_DEC2OCT(IN(1).VAL),IN(1).SZ(1))',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u162',ClassFileName,'file','y'); + +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'dec2oct'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class DEC2HEX -------------------- +//------------------------------------ +ClassName = 'DEC2HEX'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''g''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(FA_SZ_DEC2HEX(IN(1).VAL),IN(1).SZ(1))',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'g2',ClassFileName,'file','y'); + +PrintStringInfo('d2'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'g2',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'g2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'dec2hex'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class BIN2DEC -------------------- +//------------------------------------ +ClassName = 'BIN2DEC'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); + +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'bin2dec'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class SVD ------------------- +//------------------------------------ +ClassName = 'SVD'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= ''1''',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d2g2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2d2d2d0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'svd'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class SVA --------------------- +//------------------------------------ +ClassName = 'SVA'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= FA_MIN(IN(1).SZ(1),IN(1).SZ(2))',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'sva'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class OCT2DEC -------------------- +//------------------------------------ +ClassName = 'OCT2DEC'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('i80'+ArgSeparator+'i80',ClassFileName,'file','y'); +PrintStringInfo('i160'+ArgSeparator+'i160',ClassFileName,'file','y'); +PrintStringInfo('u80'+ArgSeparator+'u80',ClassFileName,'file','y'); +PrintStringInfo('u160'+ArgSeparator+'u160',ClassFileName,'file','y'); + +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('i82'+ArgSeparator+'i82',ClassFileName,'file','y'); +PrintStringInfo('i162'+ArgSeparator+'i162',ClassFileName,'file','y'); +PrintStringInfo('u82'+ArgSeparator+'u82',ClassFileName,'file','y'); +PrintStringInfo('u162'+ArgSeparator+'u162',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'oct2dec'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class HEX2DEC -------------------- +//------------------------------------ +ClassName = 'HEX2DEC'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',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('g2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +// --- Annotation Function And Function List Function. --- +FunctionName = 'hex2dec'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class BASE2DEC -------------------- +//------------------------------------ +ClassName = 'BASE2DEC'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',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('g2d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('g2'+ArgSeparator+'d2',ClassFileName,'file','y'); +// --- Annotation Function And Function List Function. --- +FunctionName = 'base2dec'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------ +// --- Class Cosd. --- +// ------------------ +ClassName = 'Cosd'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cosd'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------ +// --- Class Cotd. --- +// ------------------ +ClassName = 'Cotd'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cotd'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------ +// --- Class Coth. --- +// ------------------ +ClassName = 'Coth'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'coth'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------ +// --- Class Csc. --- +// ------------------ +ClassName = 'Csc'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'csc'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------ +// --- Class Cscd. --- +// ------------------ +ClassName = 'Cscd'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cscd'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// ------------------ +// --- Class Csch. --- +// ------------------ +ClassName = 'Csch'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'csch'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// --- Class Sec. --- +// ------------------ +ClassName = 'Sec'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'sec'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// ------------------ +// --- Class Secd. --- +// ------------------ +ClassName = 'Secd'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'secd'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +// --- Class Sech. --- +// ------------------ +ClassName = 'Sech'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'sech'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class FACTORIAL -------------------- +//------------------------------------ +ClassName = 'FACTORIAL'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); + +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'factorial'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// --- Class Interp1. --- +// ------------------ +ClassName = 'Interp1'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d2d0g2'+ArgSeparator+'d0',ClassFileName,'file','y'); +//PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +//PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +//PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +//PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +//PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +//PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'interp1'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +// --- Class Modk. --- +// ------------------ +ClassName = 'Modk'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1 ',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +// --- Function List Class. --- +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +//PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); + +//PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); +//PrintStringInfo('z0'+ArgSeparator+'z0',ClassFileName,'file','y'); +//PrintStringInfo('c2'+ArgSeparator+'c2',ClassFileName,'file','y'); +//PrintStringInfo('c0'+ArgSeparator+'c0',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'modk'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class PRIMES -------------------- +//------------------------------------ +ClassName = 'PRIMES'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_PRIMES(IN(1).VAL)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'primes'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class GCD -------------------- +//------------------------------------ +ClassName = 'GCD'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',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('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'gcd'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class LCM -------------------- +//------------------------------------ +ClassName = 'LCM'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',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('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'lcm'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + + + +//------------------------------------ +//---- Class FACTOR -------------------- +//------------------------------------ +ClassName = 'FACTOR'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_MUL(FA_SZ_FACTOR(IN(1).VAL),IN(1).SZ(1))',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'factor'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class GCD -------------------- +//------------------------------------ +ClassName = 'GCD'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +//Arguements specified: initial value, start time, time vector, ode function +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''u8''',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('u82'+ArgSeparator+'u80',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'gcd'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class ZPBUTT -------------------- +//------------------------------------ +ClassName = 'ZPBUTT'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''z''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).VAL',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'z2d0',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'zpbutt'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class ZPCH1 -------------------- +//------------------------------------ +ClassName = 'ZPCH1'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 2',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''z''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).VAL',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= ''1''',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0'+ArgSeparator+'z2d0',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'zpch1'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class ZPCH2 -------------------- +//------------------------------------ +ClassName = 'ZPCH2'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''z''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).VAL',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).TP= ''z''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(1).VAL',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= ''1''',ClassFileName,'file','y'); + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0'+ArgSeparator+'z2z2d0',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'zpch2'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class BUTTMAG -------------------- +//------------------------------------ +ClassName = 'BUTTMAG'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); + + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u80u80d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'buttmag'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class KALM -------------------- +//------------------------------------ +ClassName = 'KALM'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 8',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 4',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(4).SZ(1)',ClassFileName,'file','y'); + +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(2).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(2).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('OUT(4).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(4).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d2d2d2d2d2d2d2'+ArgSeparator+'d2d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('z2z2z2z2z2z2z2z2'+ArgSeparator+'z2z2z2z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'kalm'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class MVCORREL -------------------- +//------------------------------------ +ClassName = 'MVCORREL'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(2)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s2',ClassFileName,'file','y'); +PrintStringInfo('s0'+ArgSeparator+'s0',ClassFileName,'file','y'); +PrintStringInfo('s2'+ArgSeparator+'s0',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'mvcorrel'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class FAURRE -------------------- +//------------------------------------ +ClassName = 'FAURRE'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 5',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 3',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(4).SZ(1)',ClassFileName,'file','y'); + +PrintStringInfo('OUT(2).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(1)= IN(5).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(2).SZ(2)= IN(5).SZ(2)',ClassFileName,'file','y'); + +PrintStringInfo('OUT(3).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(3).SZ(2)= IN(5).SZ(1)',ClassFileName,'file','y'); + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d2d2d2d2'+ArgSeparator+'d2d2d2',ClassFileName,'file','y'); +PrintStringInfo('z0z2z2z2z2'+ArgSeparator+'z2z2z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'faurre'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class CHEB1MAG -------------------- +//------------------------------------ +ClassName = 'CHEB1MAG'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(4).SZ(2)',ClassFileName,'file','y'); + + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('u80u80d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cheb1mag'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + +//------------------------------------ +//---- Class CHEB2MAG -------------------- +//------------------------------------ +ClassName = 'CHEB2MAG'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(4).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(4).SZ(2)',ClassFileName,'file','y'); + + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +//PrintStringInfo('u80u80d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'cheb2mag'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + +//------------------------------------ +//---- Class SINC -------------------- +//------------------------------------ +ClassName = 'SINC'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('z2'+ArgSeparator+'z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'sinc'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +//------------------------------------ +//---- Class SINCD -------------------- +//------------------------------------ +ClassName = 'SINCD'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_MUL(''8'',IN(1).VAL),''1'')',ClassFileName,'file','y'); + + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('u80u80'+ArgSeparator+'d2',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'sincd'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +//------------------------------------ +//---- Class FSFIRLIN -------------------- +//------------------------------------ +ClassName = 'FSFIRLIN'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_FSFIRLIN_SZ(IN(1).SZ(2))',ClassFileName,'file','y'); + + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'fsfirlin'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +//------------------------------------ +//---- Class %K -------------------- +//------------------------------------ +ClassName = 'modk'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 1',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).SZ(2)',ClassFileName,'file','y'); + + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'modk'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class FILT_SINC -------------------- +//------------------------------------ +ClassName = 'FILT_SINC'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(1).VAL',ClassFileName,'file','y'); + + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'filt_sinc'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class FFILT -------------------- +//------------------------------------ +ClassName = 'FFILT'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + + +PrintStringInfo('NIN= 4',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(1).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(2).VAL',ClassFileName,'file','y'); + + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('g2d0d0d0'+ArgSeparator+'d2',ClassFileName,'file','y'); + + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'ffilt'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + +//------------------------------------ +//---- Class %SN -------------------- +//------------------------------------ +ClassName = 'modsn'; + +// --- 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'); +//PrintStringInfo('OUT(1).TP= FA_TP_MODSN(IN(1).TP)',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +//PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +//PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).TP= FA_TP_MODSN(IN(1).TP',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +//PrintStringInfo('OUT(1).SZ(2)= ''1''',ClassFileName,'file','y'); + +PrintStringInfo('NIN= 2',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= FA_TP_MODSN(IN(1).TP)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= FA_SZ_MODSN(IN(1).SZ(1))',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_MODSN(IN(1).SZ(2))',ClassFileName,'file','y'); + + + + + + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('z0d0'+ArgSeparator+'z0',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('z2d0'+ArgSeparator+'z2',ClassFileName,'file','y'); + + +// --- Annotation Function And Function List Function. --- +FunctionName = 'modsn'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + +//------------------------------------ +//---- Class ELL1MAG -------------------- +//------------------------------------ +ClassName = 'ell1mag'; + +// --- Class Annotation. --- +PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y'); +ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls); + +PrintStringInfo('NIN= 3',ClassFileName,'file','y'); +PrintStringInfo('NOUT= 1',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= IN(3).SZ(1)',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= IN(3).SZ(2)',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0z2'+ArgSeparator+'d2',ClassFileName,'file','y'); +PrintStringInfo('d0d0d2'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'ell1mag'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + +//------------------------------------ +//---- Class AMELL -------------------- +//------------------------------------ +ClassName = 'amell'; + +// --- 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'); +PrintStringInfo('OUT(1).TP= IN(1).TP',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(1)= ''1''',ClassFileName,'file','y'); +PrintStringInfo('OUT(1).SZ(2)= FA_SZ_AMELL(IN(1).SZ(2))',ClassFileName,'file','y'); + +ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls); +PrintStringInfo('d0d0'+ArgSeparator+'d0',ClassFileName,'file','y'); +PrintStringInfo('d2d0'+ArgSeparator+'d2',ClassFileName,'file','y'); + +// --- Annotation Function And Function List Function. --- +FunctionName = 'amell'; +PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y'); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun); +INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun); + + + + + + +// //////////////////////////////////////////// +// /////PARTE INTRODOTTA DA ALBERTO MOREA +// ///////////////////////////////////////////// +// /////////////////////////////////////////////// + +// // DOMAINS DEFINITION FOR EVERY CLASS-LEADER IN SCI2C LIBRARY + +// // In the following lets: +// // N,R ,C are the standard sets of integer,real ,complex numbers +// // I,J c R are intervals of real numbers +// // {} the empty set +// // Sel={'r','c'} or {0,1} are the selection sets r=row,c=column +// // B={T,F} is Boolean set +// // F is the standard set of File IDentify files +// // G is the standard alphanumeric string domain + +// // For every sci2c function library class we reported +// // the domains , annotations only for the class-leader + + +// // Example [y1,y2]=Fun(x1,x2,x3) : scilab library function call + +// // Domain RxNxSel->{R,R} :the first input element is real number ,the second is integer , +// // the last is in the selection set +// // The first output and the second are real numbers + +// // Notice : only default (double) precision are considered for real and complex data +// // The dimension of the input/output data are provided in the mapping schema + +// // d0 = double real scalar +// // d2 = double real vector or matrix +// // z0= double complex scalar +// // z2= double complex vector or matrix + +// // --------------------- +// // --- Class Global. --- +// // --------------------- + +// // DOMAINS G -> R + +// ////////////////////////////////// + + +// // --------------------- +// // --- Class Float. --- +// // --------------------- + +// // DOMAINS R -> R + +// ////////////////////////////////// + + +// // --------------------- +// // --- Class Double. --- +// // --------------------- + +// // DOMAINS R -> R + +// ////////////////////////////////// + +// // ---------------------------- +// // --- Class FloatComplex. --- +// // ---------------------------- + +// // DOMAINS 1)R -> C +// // 2)C -> C + +// ///////////////////////////////// + +// // ---------------------------- +// // --- Class DoubleComplex. --- +// // ---------------------------- + +// // DOMAINS 1) R -> C +// // 2) C -> C + +// ///////////////////////////////// + +// // ------------------ +// // --- Class Sin. --- +// // ------------------ + +// // DOMAINS 1) IcR -> JcR +// // 2) C -> C + +// ///////////////////////////////// + +// // ------------------- +// // --- Class Atan. --- +// // ------------------- + +// // DOMAINS 1) IcR -> JcR +// // 2) C -> C +// // 3) RxR -> JcR + +// ///////////////////////////////// + +// // ------------------- +// // --- Class Sqrt. --- +// // ------------------- + +// // DOMAINS 1) IcR -> JcR +// // 2) R -> R +// // 3) C -> C + + // ///////////////////////////////// + +// // -------------------- +// // --- Class Zeros. --- +// // -------------------- + +// // DOMAINS 1) {}->R +// // 2) NxN -> R +// // 3) R -> R +// // 4) C -> R + +// ///////////////////////////////// + +// // -------------------- +// // --- Class Sum. --- +// // -------------------- + +// // DOMAINS 1) R -> R +// // 2) C -> C +// // 3) RxSel -> R +// // 4) CxSel -> R + + // ///////////////////////////////// + +// // -------------------- +// // --- Class Abs. --- +// // -------------------- + +// // DOMAINS 1) R -> R+ +// // 2) C -> R+ + +// ///////////////////////////////// + +// // ------------------------ +// // --- Class OpDotStar. --- +// // ------------------------ + +// // DOMAINS 1) RxR -> R +// // 2) CxC -> C +// // 3) RxC -> C +// // 4) CxR -> C + +// ///////////////////////////////// + +// // ------------------------ +// // --- Class OpDotHat. --- +// // ------------------------ + +// // DOMAINS 1) RxR -> R +// // 2) CxC -> C + +// ///////////////////////////////// + +// // ---------------------- +// // --- Class OpLogEq. --- +// // ---------------------- + +// // DOMAINS 1) RxR -> B +// // 2) CxC -> B +// // 3) GxG -> B + +// ///////////////////////////////// + +// // --------------------- +// // --- Class OpStar. --- +// // --------------------- + +// // DOMAINS 1) RxR -> R +// // 2) CxC -> C +// // 3) RxC -> C +// // 4) CxR -> C + +// ///////////////////////////////// + +// // --------------------- +// // --- Class OpApex. --- +// // --------------------- + +// // DOMAINS 1) R -> R +// // 2) C -> C + +// ///////////////////////////////// + +// // --------------------- +// // --- Class OpPlus. --- +// // --------------------- + +// // DOMAINS 1) R -> R +// // 2) C -> C +// // 3) RxR -> R +// // 4) CxC -> C +// // 5) RxC -> C +// // 6) CxR -> C +// // 7) GxG -> G + +// ///////////////////////////////// + +// // ---------------------- +// // --- Class OpMinus. --- +// // ---------------------- + +// // DOMAINS 1) R -> R +// // 2) C -> C +// // 3) RxR -> R +// // 4) CxC -> C +// // 5) RxC -> C +// // 6) CxR -> C + + +// ///////////////////////////////// + +// // ------------------- +// // --- Class OpRc. --- +// // ------------------- + +// // DOMAINS 1) RxR -> R +// // 2) CxC -> C + +// ///////////////////////////////// + +// // ------------------- +// // --- Class OpCc. --- +// // ------------------- + +// // DOMAINS 1) RxR -> R +// // 2) CxC -> C + +// ///////////////////////////////// + +// // ------------------- +// // --- Class Find. --- +// // ------------------- + +// // DOMAINS 1) R -> N +// // 2) R -> {N,N} +// // 3) RxN -> N +// // 4) RxN ->{N,N} + +// ///////////////////////////////// + +// // --------------------- +// // --- Class Length. --- +// // --------------------- + +// // DOMAINS 1) R -> N +// // 2) C -> N +// // 3) G -> N + +// ///////////////////////////////// + +// // ------------------- +// // --- Class Size. --- +// // ------------------- + +// // DOMAINS 1) R -> {N,N} +// // 2) C -> {N,N} +// // 3) RxSel -> {N,N} +// // 4) CxSel -> {N,N} + +// ///////////////////////////////// + +// // --------------------- +// // --- Class Return. --- +// // --------------------- +// // DOMAINS 1) {} -> {} + +// ///////////////////////////////// + +// // ---------------------- +// // --- Class OpColon. --- +// // ---------------------- + +// // DOMAINS 1) RxR -> R +// // 2) RxRxR -> R + +// ///////////////////////////////// + +// // ---------------------- +// // --- Class IsEmpty. --- +// // ---------------------- + +// // DOMAINS 1) R -> B +// // 2) C -> B + +// ///////////////////////////////// + +// // ---------------------- +// // --- Class Trace. --- +// // ---------------------- + +// // DOMAINS 1) R -> R +// // 2) C -> C + +// //////////////////////////////// + +// // -------------------- +// // --- Class OpIns. --- +// // -------------------- + +// // DOMAINS 1) RxRxR -> {} +// // 2) RxRxRxR -> {} +// // 3) CxRxR -> {} +// // 4) CxRxRxC -> {} +// // 5) CxRxC -> {} + +// //////////////////////////////// + +// // -------------------- +// // --- Class OpExt. --- +// // -------------------- + +// // DOMAINS 1) RxR -> R +// // 2) CxR -> C +// // 3) CxRxR -> C + +// //////////////////////////////// + +// // ------------------- +// // --- Class Disp. --- +// // ------------------- + +// // DOMAINS 1) R -> R +// // 2) C -> R +// // 3) G -> R + +// //////////////////////////////// + +// // ---------------------- +// // --- Class OpEqual. --- +// // ---------------------- + +// // DOMAINS 1) R -> R +// // 2) C -> C +// // 3) G -> G + +// //////////////////////////////// + +// // -------------------- +// // --- Class Mopen. --- +// // -------------------- + +// // DOMAINS 1) G -> F +// // 2) GxG -> F +// // 3) GxGxR -> {F,R} +// // 4) G -> {F,R} +// // 5) GxG -> {F,R} + +// //////////////////////////////// + +// // ------------------- +// // --- Class Mput. --- +// // ------------------- + +// // DOMAINS 1) RxGxF -> {} +// // 2) RxGxF -> N + +// //////////////////////////////// + +// // ------------------- +// // --- Class Mget. --- +// // ------------------- + +// // DOMAINS 1) RxGxF -> N + +// //////////////////////////////// + +// // --------------------- +// // --- Class Mclose. --- +// // --------------------- + +// // DOMAINS 1) {} -> N +// // 2) F -> N + +// //////////////////////////////// + +// // --------------------- +// // --- Class Mseek. --- +// // --------------------- + +// // DOMAINS 1) R -> {} +// // 2) RxF -> {} +// // 3) RxFxG -> {} + +// //////////////////////////////// + +// // --------------------- +// // --- Class Convol. --- +// // --------------------- + +// // DOMAINS 1) RxR->R + // 2) CxC->C + // 3) RxC->C + // 4) CxR->C + // 5) RxR->{R,R} + // 6) CxC->{C,C} + // 7) RxC->{C,C} + // 8) CxR->{C,C} + // 9) CxC->{C,C} + // 10) RxRxR->{R,R} + // 11) RxCxC->{C,C} + // and so on \85.. + + +// //////////////////////////////// + + +// // ------------------- +// // --- Class IFFT. --- +// // ------------------- + +// // DOMAINS 1) R->C + // 2) C->C + + // //////////////////////////////// + +// // ------------------ +// // --- Class FFT. --- +// // ------------------ + +// // DOMAINS 1) R->C + // 2) RxN->C + // 3) C->C + // 4) CxN->C + // 5) RxNxN->C + // 6) CxNxN->C + // 7) RxNxNxN->C + // 8) CxNxNxN->C + +// //////////////////////////////// + +// // ----------------------- +// // --- Class FFTShift. --- +// // ----------------------- + +// // DOMAINS 1) R->R + // 2) C->C + // 3) RxR->R + // 4) RxG->R + // 5) CxR->C + // 6) CxG->C + +// //////////////////////////////// + +// // -------------------- +// // --- Class Meanf. --- +// // -------------------- + +// // DOMAINS 1) R->R + // 2) C->C + // 3) CxSel->C + // 4) RxSel->R + +// //////////////////////////////// + +// // -------------------- +// // --- Class Frmag. --- +// // -------------------- + +// // DOMAINS 1) RxN->R + // 2) RxN->{R,R} + // 3) RxRxN->R + // 4) RxRxN->{R,R} + +// //////////////////////////////// + +// // ------------------ +// // --- Class Lev. --- +// // ------------------ + +// // DOMAINS 1) R->R + // 2) R->{R,R} + // 3) R->{R,R,R} + // 4) C->C + // 5) C->{C,C} + // 6) C->{C,C,C} + +// //////////////////////////////// + +// // -------------------------- +// // --- Class OpBackSlash. --- +// // -------------------------- + +// // DOMAINS 1) RxR->R + // 2) CxC->C + // 3) RxC->C + // 4) CxR->C + +// //////////////////////////////// + +// // ----------------------- +// // --- Class Cepstrum. --- +// // ----------------------- + +// // DOMAINS 1) RxR->C + // 2) RxC->C + +// //////////////////////////////// + +// // ----------------------- +// // --- Class Spec. --- +// // ----------------------- + +// // DOMAINS 1) R->R + // 2) C->C + // 3) R->{R,R} + // 4) C->{C,C} + +// //////////////////////////////// + +// // ------------------- +// // --- Class Part. --- +// // ------------------- + +// // DOMAINS 1) GxN->G + +// //////////////////////////////// + +// // ----------------------- +// // --- Class Strindex. --- +// // ----------------------- + +// // DOMAINS 1) GxG->N + +// //////////////////////////////// + +// // ----------------------- +// // --- Class StrSubSt. --- +// // ----------------------- + +// // DOMAINS 1) GxGxG->G + +// //////////////////////////////// + + +// //////////////////////////////// +// //////////////////////////////// +// // fine parte introdotta alberto +// //////////////////////////////// +// //////////////////////////////// + +// //RNU se puoi sistema meglio la parte introdotta da al. +endfunction diff --git a/macros/ToolInitialization/INIT_GenAnnFLFunctions.sci b/macros/ToolInitialization/INIT_GenAnnFLFunctions.sci index 4f83814d..2826659a 100644 --- a/macros/ToolInitialization/INIT_GenAnnFLFunctions.sci +++ b/macros/ToolInitialization/INIT_GenAnnFLFunctions.sci @@ -1,28 +1,28 @@ function INIT_GenAnnFLFunctions(FunctionName,FunctionsOutDir,ClassName,ReportFile,ExtensionCAnnFun) // function INIT_GenAnnFLFunctions(FunctionName,FunctionsOutDir,ClassName,ReportFile,ExtensionCAnnFun) -// ----------------------------------------------------------------- -// Generates annotation or file list files. -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 17-Jun-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),5,5); +// ----------------------------------------------------------------- +// Generates annotation or file list files. +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 17-Jun-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),5,5); FunctionExtension = ExtensionCAnnFun; FunctionFileName = fullfile(FunctionsOutDir,FunctionName+FunctionExtension); PrintStringInfo('CLASS: '+ClassName,FunctionFileName,'file','y'); - + endfunction diff --git a/macros/ToolInitialization/INIT_GenFileInfo.sci b/macros/ToolInitialization/INIT_GenFileInfo.sci index 21fe7a72..37347eca 100644 --- a/macros/ToolInitialization/INIT_GenFileInfo.sci +++ b/macros/ToolInitialization/INIT_GenFileInfo.sci @@ -1,117 +1,117 @@ -function FileInfo = INIT_GenFileInfo(WorkingDir,OutCCCodeDir,UserSciFilesPaths) -// function FileInfo = INIT_GenFileInfo(WorkingDir,OutCCCodeDir,UserSciFilesPaths) -// ----------------------------------------------------------------- -// #RNU_RES_B -// This function creates and initializes FileInfo structure. -// -// Input data: -// WorkingDir: see description in the SCI2CInputParameters.sce file. -// OutCCCodeDir: see description in the SCI2CInputParameters.sce file. -// UserSciFilesPaths: see description in the SCI2CInputParameters.sce file. -// -// Output data: -// FileInfo: structure containing all info about SCI2C files. -// -// #RNU_RES_E -// Status: -// 03-Jan-2008 -- Raffaele Nutricato: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),3,3); - - -// ------------------------- -// --- Main directories. --- -// ------------------------- -FileInfo.SCI2CMainDir = pwd(); -FileInfo.WorkingDir = WorkingDir; -FileInfo.OutCCCodeDir = OutCCCodeDir; -FileInfo.UserSciFilesPaths = UserSciFilesPaths; - -// ------------------- -// --- .dat Files. --- -// ------------------- -FileInfo.FileInfoDatFile = fullfile(FileInfo.WorkingDir,'FileInfo.dat'); -FileInfo.SharedInfoDatFile = fullfile(FileInfo.WorkingDir,'SharedInfo.dat'); -FileInfo.GlobalVarFileName = fullfile(FileInfo.WorkingDir,'GBLVAR.dat'); -FileInfo.ASTStackDataFile = fullfile(FileInfo.WorkingDir,'ASTStack.dat'); - -// ---------------------- -// --- SCI2C Library. --- -// ---------------------- -FileInfo.SCI2CLibDir = fullfile(FileInfo.WorkingDir,'SCI2CLib'); - -FileInfo.SCI2CLibSCIAnnDir = fullfile(FileInfo.SCI2CLibDir,'SCIAnnotations'); -FileInfo.SCI2CLibSCIAnnFun = fullfile(FileInfo.SCI2CLibSCIAnnDir,'Functions'); -FileInfo.SCI2CLibSCIAnnCls = fullfile(FileInfo.SCI2CLibSCIAnnDir,'Classes'); - -FileInfo.SCI2CLibSCIFunListDir = fullfile(FileInfo.SCI2CLibDir,'SCIFunctionList'); -FileInfo.SCI2CLibSCIFLFun = fullfile(FileInfo.SCI2CLibSCIFunListDir,'Functions'); -FileInfo.SCI2CLibSCIFLCls = fullfile(FileInfo.SCI2CLibSCIFunListDir,'Classes'); - -FileInfo.SCI2CLibCAnnDir = fullfile(FileInfo.SCI2CLibDir,'CAnnotations'); -FileInfo.SCI2CLibCAnnFun = fullfile(FileInfo.SCI2CLibCAnnDir,'Functions'); -FileInfo.SCI2CLibCAnnCls = fullfile(FileInfo.SCI2CLibCAnnDir,'Classes'); - -FileInfo.SCI2CLibCFunListDir = fullfile(FileInfo.SCI2CLibDir,'CFunctionList'); -FileInfo.SCI2CLibCFLFun = fullfile(FileInfo.SCI2CLibCFunListDir,'Functions'); -FileInfo.SCI2CLibCFLCls = fullfile(FileInfo.SCI2CLibCFunListDir,'Classes'); - - -// ----------------------- -// --- USER2C Library. --- -// ----------------------- -FileInfo.USER2CLibDir = fullfile(FileInfo.WorkingDir,'USER2CLib'); - -FileInfo.USER2CLibSCIAnnDir = fullfile(FileInfo.USER2CLibDir,'SCIAnnotations'); -FileInfo.USER2CLibSCIAnnFun = fullfile(FileInfo.USER2CLibSCIAnnDir,'Functions'); -FileInfo.USER2CLibSCIAnnCls = fullfile(FileInfo.USER2CLibSCIAnnDir,'Classes'); - -FileInfo.USER2CLibSCIFunListDir = fullfile(FileInfo.USER2CLibDir,'SCIFunctionList'); -FileInfo.USER2CLibSCIFLFun = fullfile(FileInfo.USER2CLibSCIFunListDir,'Functions'); -FileInfo.USER2CLibSCIFLCls = fullfile(FileInfo.USER2CLibSCIFunListDir,'Classes'); - -FileInfo.USER2CLibCAnnDir = fullfile(FileInfo.USER2CLibDir,'CAnnotations'); -FileInfo.USER2CLibCAnnFun = fullfile(FileInfo.USER2CLibCAnnDir,'Functions'); -FileInfo.USER2CLibCAnnCls = fullfile(FileInfo.USER2CLibCAnnDir,'Classes'); - -FileInfo.USER2CLibCFunListDir = fullfile(FileInfo.USER2CLibDir,'CFunctionList'); -FileInfo.USER2CLibCFLFun = fullfile(FileInfo.USER2CLibCFunListDir,'Functions'); -FileInfo.USER2CLibCFLCls = fullfile(FileInfo.USER2CLibCFunListDir,'Classes'); - -// ---------------------- -// --- Function List. --- -// ---------------------- -FileInfo.FunctionList.MainDir = fullfile(FileInfo.WorkingDir,'FunctionList'); -FileInfo.FunctionList.SCI2CAvailableCDat = fullfile(FileInfo.FunctionList.MainDir,'SCI2CAvailableC.dat'); -FileInfo.FunctionList.USER2CAvailableCDat = fullfile(FileInfo.FunctionList.MainDir,'USER2CAvailableC.dat'); -FileInfo.FunctionList.ConvertedDat = fullfile(FileInfo.FunctionList.MainDir,'Converted.dat'); -FileInfo.FunctionList.ToBeConvertedDat = fullfile(FileInfo.FunctionList.MainDir,'ToBeConverted.dat'); -FileInfo.FunctionList.FunInfoDatDir = fullfile(FileInfo.FunctionList.MainDir,'FunInfoDatFiles'); - -// -------------------- -// --- Other Files. --- -// -------------------- -FileInfo.GeneralReport = fullfile(FileInfo.WorkingDir,'SCI2CGeneralReport.txt'); - -// ----------------------------------- -// --- C-Style paths and Makefile. --- -// ----------------------------------- -//-- FileInfo.CStyleSCI2CMainDir = ConvertPathMat2C(FileInfo.SCI2CMainDir,SharedInfo.CCompilerPathStyle); -//-- FileInfo.CStyleOutCCCodeDir = ConvertPathMat2C(OutCCCodeDir,SharedInfo.CCompilerPathStyle); -FileInfo.CStyleSCI2CMainDir = pathconvert(FileInfo.SCI2CMainDir, %f, %f, 'u'); -FileInfo.CStyleOutCCCodeDir = pathconvert(OutCCCodeDir, %f, %f, 'u'); -FileInfo.MakefileFilename = fullfile(FileInfo.CStyleOutCCCodeDir,'Makefile'); - -//------------------------- -//----Hardware related----- -//------------------------- -FileInfo.PeripheralInitListFile = fullfile(FileInfo.WorkingDir,'PeripheralInit.dat'); -FileInfo.SetupListFile = fullfile(FileInfo.WorkingDir,'SetupList.dat'); -endfunction +function FileInfo = INIT_GenFileInfo(WorkingDir,OutCCCodeDir,UserSciFilesPaths) +// function FileInfo = INIT_GenFileInfo(WorkingDir,OutCCCodeDir,UserSciFilesPaths) +// ----------------------------------------------------------------- +// #RNU_RES_B +// This function creates and initializes FileInfo structure. +// +// Input data: +// WorkingDir: see description in the SCI2CInputParameters.sce file. +// OutCCCodeDir: see description in the SCI2CInputParameters.sce file. +// UserSciFilesPaths: see description in the SCI2CInputParameters.sce file. +// +// Output data: +// FileInfo: structure containing all info about SCI2C files. +// +// #RNU_RES_E +// Status: +// 03-Jan-2008 -- Raffaele Nutricato: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),3,3); + + +// ------------------------- +// --- Main directories. --- +// ------------------------- +FileInfo.SCI2CMainDir = pwd(); +FileInfo.WorkingDir = WorkingDir; +FileInfo.OutCCCodeDir = OutCCCodeDir; +FileInfo.UserSciFilesPaths = UserSciFilesPaths; + +// ------------------- +// --- .dat Files. --- +// ------------------- +FileInfo.FileInfoDatFile = fullfile(FileInfo.WorkingDir,'FileInfo.dat'); +FileInfo.SharedInfoDatFile = fullfile(FileInfo.WorkingDir,'SharedInfo.dat'); +FileInfo.GlobalVarFileName = fullfile(FileInfo.WorkingDir,'GBLVAR.dat'); +FileInfo.ASTStackDataFile = fullfile(FileInfo.WorkingDir,'ASTStack.dat'); + +// ---------------------- +// --- SCI2C Library. --- +// ---------------------- +FileInfo.SCI2CLibDir = fullfile(FileInfo.WorkingDir,'SCI2CLib'); + +FileInfo.SCI2CLibSCIAnnDir = fullfile(FileInfo.SCI2CLibDir,'SCIAnnotations'); +FileInfo.SCI2CLibSCIAnnFun = fullfile(FileInfo.SCI2CLibSCIAnnDir,'Functions'); +FileInfo.SCI2CLibSCIAnnCls = fullfile(FileInfo.SCI2CLibSCIAnnDir,'Classes'); + +FileInfo.SCI2CLibSCIFunListDir = fullfile(FileInfo.SCI2CLibDir,'SCIFunctionList'); +FileInfo.SCI2CLibSCIFLFun = fullfile(FileInfo.SCI2CLibSCIFunListDir,'Functions'); +FileInfo.SCI2CLibSCIFLCls = fullfile(FileInfo.SCI2CLibSCIFunListDir,'Classes'); + +FileInfo.SCI2CLibCAnnDir = fullfile(FileInfo.SCI2CLibDir,'CAnnotations'); +FileInfo.SCI2CLibCAnnFun = fullfile(FileInfo.SCI2CLibCAnnDir,'Functions'); +FileInfo.SCI2CLibCAnnCls = fullfile(FileInfo.SCI2CLibCAnnDir,'Classes'); + +FileInfo.SCI2CLibCFunListDir = fullfile(FileInfo.SCI2CLibDir,'CFunctionList'); +FileInfo.SCI2CLibCFLFun = fullfile(FileInfo.SCI2CLibCFunListDir,'Functions'); +FileInfo.SCI2CLibCFLCls = fullfile(FileInfo.SCI2CLibCFunListDir,'Classes'); + + +// ----------------------- +// --- USER2C Library. --- +// ----------------------- +FileInfo.USER2CLibDir = fullfile(FileInfo.WorkingDir,'USER2CLib'); + +FileInfo.USER2CLibSCIAnnDir = fullfile(FileInfo.USER2CLibDir,'SCIAnnotations'); +FileInfo.USER2CLibSCIAnnFun = fullfile(FileInfo.USER2CLibSCIAnnDir,'Functions'); +FileInfo.USER2CLibSCIAnnCls = fullfile(FileInfo.USER2CLibSCIAnnDir,'Classes'); + +FileInfo.USER2CLibSCIFunListDir = fullfile(FileInfo.USER2CLibDir,'SCIFunctionList'); +FileInfo.USER2CLibSCIFLFun = fullfile(FileInfo.USER2CLibSCIFunListDir,'Functions'); +FileInfo.USER2CLibSCIFLCls = fullfile(FileInfo.USER2CLibSCIFunListDir,'Classes'); + +FileInfo.USER2CLibCAnnDir = fullfile(FileInfo.USER2CLibDir,'CAnnotations'); +FileInfo.USER2CLibCAnnFun = fullfile(FileInfo.USER2CLibCAnnDir,'Functions'); +FileInfo.USER2CLibCAnnCls = fullfile(FileInfo.USER2CLibCAnnDir,'Classes'); + +FileInfo.USER2CLibCFunListDir = fullfile(FileInfo.USER2CLibDir,'CFunctionList'); +FileInfo.USER2CLibCFLFun = fullfile(FileInfo.USER2CLibCFunListDir,'Functions'); +FileInfo.USER2CLibCFLCls = fullfile(FileInfo.USER2CLibCFunListDir,'Classes'); + +// ---------------------- +// --- Function List. --- +// ---------------------- +FileInfo.FunctionList.MainDir = fullfile(FileInfo.WorkingDir,'FunctionList'); +FileInfo.FunctionList.SCI2CAvailableCDat = fullfile(FileInfo.FunctionList.MainDir,'SCI2CAvailableC.dat'); +FileInfo.FunctionList.USER2CAvailableCDat = fullfile(FileInfo.FunctionList.MainDir,'USER2CAvailableC.dat'); +FileInfo.FunctionList.ConvertedDat = fullfile(FileInfo.FunctionList.MainDir,'Converted.dat'); +FileInfo.FunctionList.ToBeConvertedDat = fullfile(FileInfo.FunctionList.MainDir,'ToBeConverted.dat'); +FileInfo.FunctionList.FunInfoDatDir = fullfile(FileInfo.FunctionList.MainDir,'FunInfoDatFiles'); + +// -------------------- +// --- Other Files. --- +// -------------------- +FileInfo.GeneralReport = fullfile(FileInfo.WorkingDir,'SCI2CGeneralReport.txt'); + +// ----------------------------------- +// --- C-Style paths and Makefile. --- +// ----------------------------------- +//-- FileInfo.CStyleSCI2CMainDir = ConvertPathMat2C(FileInfo.SCI2CMainDir,SharedInfo.CCompilerPathStyle); +//-- FileInfo.CStyleOutCCCodeDir = ConvertPathMat2C(OutCCCodeDir,SharedInfo.CCompilerPathStyle); +FileInfo.CStyleSCI2CMainDir = pathconvert(FileInfo.SCI2CMainDir, %f, %f, 'u'); +FileInfo.CStyleOutCCCodeDir = pathconvert(OutCCCodeDir, %f, %f, 'u'); +FileInfo.MakefileFilename = fullfile(FileInfo.CStyleOutCCCodeDir,'Makefile'); + +//------------------------- +//----Hardware related----- +//------------------------- +FileInfo.PeripheralInitListFile = fullfile(FileInfo.WorkingDir,'PeripheralInit.dat'); +FileInfo.SetupListFile = fullfile(FileInfo.WorkingDir,'SetupList.dat'); +endfunction diff --git a/macros/ToolInitialization/INIT_GenLibraries.sci b/macros/ToolInitialization/INIT_GenLibraries.sci index eb2c01b7..184633a8 100644 --- a/macros/ToolInitialization/INIT_GenLibraries.sci +++ b/macros/ToolInitialization/INIT_GenLibraries.sci @@ -1,61 +1,61 @@ -function INIT_GenLibraries(FileInfoDatFile) -// function INIT_GenLibraries(FileInfoDatFile) -// ----------------------------------------------------------------- -// #RNU_RES_B -// This function initializes the SCI2C and USER libraries. -// For each Scilab function a .ann file is created where the function -// annotations are listed into it. -// #RNU_RES_E -// -// Input data: -// FileInfoDatFile: name of the .dat file containing the FileInfo structure. -// -// Output data: -// --- -// -// Status: -// 12-Jun-2007 -- Nutricato Raffaele: Author. -// 03-Jan-2008 -- Nutricato Raffaele: Changed directory structure. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -// --- Load File Info Structure. --- -clear FileInfo -load(FileInfoDatFile,'FileInfo'); - -// --- Load Shared Info Structure. --- -clear SharedInfo -load(FileInfo.SharedInfoDatFile,'SharedInfo'); - -PrintStepInfo('Initialize SCI2C and USER2C Libraries.',... - FileInfo.GeneralReport,'both'); -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -// ----------------------------------------------------------- -// --- Fills SCI2C and USER2C libs with appropriate files. --- -// ----------------------------------------------------------- -INIT_FillSCI2LibCDirs(FileInfo,SharedInfo.Extension); - -// #RNU_RES_B -//NUT the following functions will be useful in next release -//NUT for advanced use of SCI2C -//INIT_FillSCI2LibSCIDirs(FileInfo,SharedInfo.Extension); -//INIT_FillUSER2LibCDirs(FileInfo,SharedInfo.Extension); -//INIT_FillUSER2LibSCIDirs(FileInfo,SharedInfo.Extension); -// --------------------------------------------------------------- -// --- End Fills SCI2C and USER2C libs with appropriate files. --- -// --------------------------------------------------------------- -// #RNU_RES_E -endfunction +function INIT_GenLibraries(FileInfoDatFile) +// function INIT_GenLibraries(FileInfoDatFile) +// ----------------------------------------------------------------- +// #RNU_RES_B +// This function initializes the SCI2C and USER libraries. +// For each Scilab function a .ann file is created where the function +// annotations are listed into it. +// #RNU_RES_E +// +// Input data: +// FileInfoDatFile: name of the .dat file containing the FileInfo structure. +// +// Output data: +// --- +// +// Status: +// 12-Jun-2007 -- Nutricato Raffaele: Author. +// 03-Jan-2008 -- Nutricato Raffaele: Changed directory structure. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +// --- Load File Info Structure. --- +clear FileInfo +load(FileInfoDatFile,'FileInfo'); + +// --- Load Shared Info Structure. --- +clear SharedInfo +load(FileInfo.SharedInfoDatFile,'SharedInfo'); + +PrintStepInfo('Initialize SCI2C and USER2C Libraries.',... + FileInfo.GeneralReport,'both'); +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +// ----------------------------------------------------------- +// --- Fills SCI2C and USER2C libs with appropriate files. --- +// ----------------------------------------------------------- +INIT_FillSCI2LibCDirs(FileInfo,SharedInfo.Extension); + +// #RNU_RES_B +//NUT the following functions will be useful in next release +//NUT for advanced use of SCI2C +//INIT_FillSCI2LibSCIDirs(FileInfo,SharedInfo.Extension); +//INIT_FillUSER2LibCDirs(FileInfo,SharedInfo.Extension); +//INIT_FillUSER2LibSCIDirs(FileInfo,SharedInfo.Extension); +// --------------------------------------------------------------- +// --- End Fills SCI2C and USER2C libs with appropriate files. --- +// --------------------------------------------------------------- +// #RNU_RES_E +endfunction diff --git a/macros/ToolInitialization/INIT_GenSharedInfo.sci b/macros/ToolInitialization/INIT_GenSharedInfo.sci index 3c682bf8..8d0dcd67 100644 --- a/macros/ToolInitialization/INIT_GenSharedInfo.sci +++ b/macros/ToolInitialization/INIT_GenSharedInfo.sci @@ -1,137 +1,137 @@ -function SharedInfo = INIT_GenSharedInfo(RunMode,UserScilabMainFile,TotTempScalarVars,EnableTempVarsReuse,Sci2CLibMainHeaderFName,CopySciCodeIntoCCode,Target,Board_name) -// function SharedInfo = INIT_GenSharedInfo(WorkingDir,OutCCCodeDir,UserSciFilesPaths,... -// RunMode,UserScilabMainFile,TotTempScalarVars,EnableTempVarsReuse,Sci2CLibMainHeaderFName) -// ----------------------------------------------------------------- -// #RNU_RES_B -// This function creates and initializes SharedInfo structure. -// -// Input data: -// WorkingDir: see description in the SCI2CInputParameters.sce file. -// OutCCCodeDir: see description in the SCI2CInputParameters.sce file. -// UserSciFilesPaths: see description in the SCI2CInputParameters.sce file. -// RunMode: see description in the SCI2CInputParameters.sce file. -// UserScilabMainFile: see description in the SCI2CInputParameters.sce file. -// TotTempScalarVars: see description in the SCI2CInputParameters.sce file. -// EnableTempVarsReuse: see description in the SCI2CInputParameters.sce file. -// -// Output data: -// SharedInfo: structure containing all info about general parameters -// used by SCI2C. -// -// #RNU_RES_E -// Status: -// 03-Jan-2008 -- Raffaele Nutricato: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ - -//-- SCI2CNInArgCheck(argn(2),8,8); - - -// ------------------------------ -// --- Initialize SharedInfo. --- -// ------------------------------ -//-- SharedInfo.CCompilerPathStyle = CCompilerPathStyle; -SharedInfo.RunMode = RunMode; -SharedInfo.Sci2CLibMainHeaderFName = pathconvert(Sci2CLibMainHeaderFName, %f, %f, 'u'); - -// #RNU_RES_B -// File names of the next .sci files to be converted in AST and -// successively into C. -// #RNU_RES_E -SharedInfo.NextSCIFileName = UserScilabMainFile; -[scipath,funname,sciext] = fileparts(UserScilabMainFile); -SharedInfo.SCIMainFunName = funname; -if (Target == 'Arduino') - SharedInfo.CMainFunName = 'loop_arduino'; -elseif (RunMode == 'Translate') - SharedInfo.CMainFunName = funname; -else - SharedInfo.CMainFunName = 'main'; -end -SharedInfo.NextSCIFunName = SharedInfo.SCIMainFunName; //NUT: per ora no so cosa metter -SharedInfo.NextCFunName = SharedInfo.CMainFunName; //NUT: per ora no so cosa metter //NUT: questo viene aggiornato dalla C_Funcall -SharedInfo.NextSCIFunNumber = 1; -SharedInfo.NFilesToTranslate = 1; - - -// --- Annotations. --- -SharedInfo.Annotations.GBLVAR = 'global'; -SharedInfo.Annotations.DataPrec = {'uint8','int8','uint16','int16','int','float','double','IplImage'}; -SharedInfo.Annotations.FUNNIN = 'NIN='; -SharedInfo.Annotations.FUNNOUT = 'NOUT='; -SharedInfo.Annotations.FUNTYPE = '''OUT(''+string(SCI2C_nout)+'').TP='''; // Type includes also precision. -SharedInfo.Annotations.FUNSIZE = '''OUT(''+string(SCI2C_nout)+'').SZ(''+string(SCI2C_nelem)+'')= '''; -SharedInfo.Annotations.FUNCLASS = 'CLASS: '; -SharedInfo.Annotations.USERFUN = '//SCI2C: '; -SharedInfo.Annotations.INTYPE = '''IN(''+string(SCI2C_nout)+'').TP='''; // Type includes also precision. -SharedInfo.Annotations.INSIZE = '''IN(''+string(SCI2C_nout)+'').SZ(''+string(SCI2C_nelem)+'')= '''; - - -// #RNU_RES_B -// Note when you execute the following code: - // SCI2C_nout=1; - // SCI2C_nelem=0; - // eval(SharedInfo.Annotations.FUNSIZE) - // you get: - // O1SIZE[0] = - -// Info related to temp variables used in the C code. -// #RNU_RES_E -SharedInfo.TotTempScalarVars = TotTempScalarVars; -SharedInfo.UsedTempScalarVars = 0; -SharedInfo.TempScalarVarsName = '__Scalar'; -//NUT: verificare se le seguenti due variabili sono utili. Le sto usando in AST2Ccode -SharedInfo.WorkAreaUsedBytes = WorkAreaSizeBytes; -SharedInfo.UsedTempScalarVars = WorkAreaSizeBytes; -// Info related to temp variables used in the AST reading phase. -SharedInfo.ASTReader.fidAST = -1; -SharedInfo.ASTReader.UsedTempVars = 0; -SharedInfo.ASTReader.TempVarsName = '__temp'; -SharedInfo.ASTReader.TempForCntVarsName = '__tmpcnt'; -SharedInfo.ASTReader.TempForValVarsName = '__TmpVal'; -SharedInfo.ASTReader.TempWhileCntVarsName = '__tmpWhilecnt';//NUT: vedi se serve. -SharedInfo.ASTReader.TempWhileValVarsName = '__TmpWhileVal'; //NUT: vedi se serve -SharedInfo.ASTReader.EnableTempVarsReuse = EnableTempVarsReuse; //NUT: non so se la devo rimuovere. -SharedInfo.ASTReader.ReusableTempVars = [];//NUT: to be removed - -SharedInfo.NIndent = 0; // Indentation Level. -SharedInfo.SkipNextEqual = 0; // 1 = the next equal in the AST will not produce C code. -SharedInfo.SkipNextPrec = 0; // 1 = the next precision specifier in the AST will not produce C code. -SharedInfo.SkipNextFun = 0; -SharedInfo.CopySciCodeIntoCCode = CopySciCodeIntoCCode; -SharedInfo.CountNestedIf = 0; // Number of nested if. - -SharedInfo.CFunId.OpColon = 3; -SharedInfo.CFunId.EqScalar = 4; -SharedInfo.CFunId.EqMatrix = 5; -SharedInfo.CFunId.GenFunMtx = 6; // (scalar functions are fall in the scalar equal category.) - -SharedInfo = INIT_SharedInfoEqual(SharedInfo); -// ------------------------ -// --- File Extensions. --- -// ------------------------ -SharedInfo.Extension.AnnotationFunctions = '.ann'; // Stands for annotation -SharedInfo.Extension.AnnotationClasses = '.acls'; // Stands for annotation class. -SharedInfo.Extension.FuncListFunctions = '.lst'; // Stands for list -SharedInfo.Extension.FuncListClasses = '.lcls'; // Stands for list class - -// ------------------------ -// --- Resize Approach. --- -// ------------------------ -SharedInfo.ResizeApproach = 'NO_RESIZE'; // 'NO_RESIZE', 'RESIZE_ALL', 'RESIZE_TEMP', 'RESIZE_LOCAL', 'RESIZE_GLOBAL', 'REALLOC_ALL_RESIZE_ALL' - -SharedInfo.Target = Target; // Specifies code generation target. - -SharedInfo.Includelist = list(); //Maintains list of functions being used in code - // to add their header files to main function. -SharedInfo.OpenCVUsed = %F; // Specifies if opencv library is used or not - -SharedInfo.Board_name = Board_name; //Specifies Name of Arduino board - -endfunction +function SharedInfo = INIT_GenSharedInfo(RunMode,UserScilabMainFile,TotTempScalarVars,EnableTempVarsReuse,Sci2CLibMainHeaderFName,CopySciCodeIntoCCode,Target,Board_name) +// function SharedInfo = INIT_GenSharedInfo(WorkingDir,OutCCCodeDir,UserSciFilesPaths,... +// RunMode,UserScilabMainFile,TotTempScalarVars,EnableTempVarsReuse,Sci2CLibMainHeaderFName) +// ----------------------------------------------------------------- +// #RNU_RES_B +// This function creates and initializes SharedInfo structure. +// +// Input data: +// WorkingDir: see description in the SCI2CInputParameters.sce file. +// OutCCCodeDir: see description in the SCI2CInputParameters.sce file. +// UserSciFilesPaths: see description in the SCI2CInputParameters.sce file. +// RunMode: see description in the SCI2CInputParameters.sce file. +// UserScilabMainFile: see description in the SCI2CInputParameters.sce file. +// TotTempScalarVars: see description in the SCI2CInputParameters.sce file. +// EnableTempVarsReuse: see description in the SCI2CInputParameters.sce file. +// +// Output data: +// SharedInfo: structure containing all info about general parameters +// used by SCI2C. +// +// #RNU_RES_E +// Status: +// 03-Jan-2008 -- Raffaele Nutricato: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ + +//-- SCI2CNInArgCheck(argn(2),8,8); + + +// ------------------------------ +// --- Initialize SharedInfo. --- +// ------------------------------ +//-- SharedInfo.CCompilerPathStyle = CCompilerPathStyle; +SharedInfo.RunMode = RunMode; +SharedInfo.Sci2CLibMainHeaderFName = pathconvert(Sci2CLibMainHeaderFName, %f, %f, 'u'); + +// #RNU_RES_B +// File names of the next .sci files to be converted in AST and +// successively into C. +// #RNU_RES_E +SharedInfo.NextSCIFileName = UserScilabMainFile; +[scipath,funname,sciext] = fileparts(UserScilabMainFile); +SharedInfo.SCIMainFunName = funname; +if (Target == 'Arduino') + SharedInfo.CMainFunName = 'loop_arduino'; +elseif (RunMode == 'Translate') + SharedInfo.CMainFunName = funname; +else + SharedInfo.CMainFunName = 'main'; +end +SharedInfo.NextSCIFunName = SharedInfo.SCIMainFunName; //NUT: per ora no so cosa metter +SharedInfo.NextCFunName = SharedInfo.CMainFunName; //NUT: per ora no so cosa metter //NUT: questo viene aggiornato dalla C_Funcall +SharedInfo.NextSCIFunNumber = 1; +SharedInfo.NFilesToTranslate = 1; + + +// --- Annotations. --- +SharedInfo.Annotations.GBLVAR = 'global'; +SharedInfo.Annotations.DataPrec = {'uint8','int8','uint16','int16','int','float','double','IplImage'}; +SharedInfo.Annotations.FUNNIN = 'NIN='; +SharedInfo.Annotations.FUNNOUT = 'NOUT='; +SharedInfo.Annotations.FUNTYPE = '''OUT(''+string(SCI2C_nout)+'').TP='''; // Type includes also precision. +SharedInfo.Annotations.FUNSIZE = '''OUT(''+string(SCI2C_nout)+'').SZ(''+string(SCI2C_nelem)+'')= '''; +SharedInfo.Annotations.FUNCLASS = 'CLASS: '; +SharedInfo.Annotations.USERFUN = '//SCI2C: '; +SharedInfo.Annotations.INTYPE = '''IN(''+string(SCI2C_nout)+'').TP='''; // Type includes also precision. +SharedInfo.Annotations.INSIZE = '''IN(''+string(SCI2C_nout)+'').SZ(''+string(SCI2C_nelem)+'')= '''; + + +// #RNU_RES_B +// Note when you execute the following code: + // SCI2C_nout=1; + // SCI2C_nelem=0; + // eval(SharedInfo.Annotations.FUNSIZE) + // you get: + // O1SIZE[0] = + +// Info related to temp variables used in the C code. +// #RNU_RES_E +SharedInfo.TotTempScalarVars = TotTempScalarVars; +SharedInfo.UsedTempScalarVars = 0; +SharedInfo.TempScalarVarsName = '__Scalar'; +//NUT: verificare se le seguenti due variabili sono utili. Le sto usando in AST2Ccode +SharedInfo.WorkAreaUsedBytes = WorkAreaSizeBytes; +SharedInfo.UsedTempScalarVars = WorkAreaSizeBytes; +// Info related to temp variables used in the AST reading phase. +SharedInfo.ASTReader.fidAST = -1; +SharedInfo.ASTReader.UsedTempVars = 0; +SharedInfo.ASTReader.TempVarsName = '__temp'; +SharedInfo.ASTReader.TempForCntVarsName = '__tmpcnt'; +SharedInfo.ASTReader.TempForValVarsName = '__TmpVal'; +SharedInfo.ASTReader.TempWhileCntVarsName = '__tmpWhilecnt';//NUT: vedi se serve. +SharedInfo.ASTReader.TempWhileValVarsName = '__TmpWhileVal'; //NUT: vedi se serve +SharedInfo.ASTReader.EnableTempVarsReuse = EnableTempVarsReuse; //NUT: non so se la devo rimuovere. +SharedInfo.ASTReader.ReusableTempVars = [];//NUT: to be removed + +SharedInfo.NIndent = 0; // Indentation Level. +SharedInfo.SkipNextEqual = 0; // 1 = the next equal in the AST will not produce C code. +SharedInfo.SkipNextPrec = 0; // 1 = the next precision specifier in the AST will not produce C code. +SharedInfo.SkipNextFun = 0; +SharedInfo.CopySciCodeIntoCCode = CopySciCodeIntoCCode; +SharedInfo.CountNestedIf = 0; // Number of nested if. + +SharedInfo.CFunId.OpColon = 3; +SharedInfo.CFunId.EqScalar = 4; +SharedInfo.CFunId.EqMatrix = 5; +SharedInfo.CFunId.GenFunMtx = 6; // (scalar functions are fall in the scalar equal category.) + +SharedInfo = INIT_SharedInfoEqual(SharedInfo); +// ------------------------ +// --- File Extensions. --- +// ------------------------ +SharedInfo.Extension.AnnotationFunctions = '.ann'; // Stands for annotation +SharedInfo.Extension.AnnotationClasses = '.acls'; // Stands for annotation class. +SharedInfo.Extension.FuncListFunctions = '.lst'; // Stands for list +SharedInfo.Extension.FuncListClasses = '.lcls'; // Stands for list class + +// ------------------------ +// --- Resize Approach. --- +// ------------------------ +SharedInfo.ResizeApproach = 'NO_RESIZE'; // 'NO_RESIZE', 'RESIZE_ALL', 'RESIZE_TEMP', 'RESIZE_LOCAL', 'RESIZE_GLOBAL', 'REALLOC_ALL_RESIZE_ALL' + +SharedInfo.Target = Target; // Specifies code generation target. + +SharedInfo.Includelist = list(); //Maintains list of functions being used in code + // to add their header files to main function. +SharedInfo.OpenCVUsed = %F; // Specifies if opencv library is used or not + +SharedInfo.Board_name = Board_name; //Specifies Name of Arduino board + +endfunction diff --git a/macros/ToolInitialization/INIT_LoadLibraries.sci b/macros/ToolInitialization/INIT_LoadLibraries.sci index 28eb34f5..0ebabc48 100644 --- a/macros/ToolInitialization/INIT_LoadLibraries.sci +++ b/macros/ToolInitialization/INIT_LoadLibraries.sci @@ -1,64 +1,64 @@ -function INIT_LoadLibraries(FileInfoDatFile) -// function INIT_LoadLibraries(FileInfoDatFile) -// ----------------------------------------------------------------- -// This function loads the SCI2C and USER libraries. -// -// Input data: -// FileInfoDatFile: name of the .dat file containing the FileInfo structure. -// -// Output data: -// --- -// -// Status: -// 12-Jun-2007 -- Raffaele Nutricato: Author. -// 03-Jan-2008 -- Raffaele Nutricato: Changed directory structure. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -// ----------------------- -// --- Initialization. --- -// ----------------------- -// --- Load File Info Structure. --- -clear FileInfo -load(FileInfoDatFile,'FileInfo'); - -// --- Load Shared Info Structure. --- -clear SharedInfo -load(FileInfo.SharedInfoDatFile,'SharedInfo'); -PrintStepInfo('Load SCI2C and USER2C Libraries.',FileInfo.GeneralReport,'both'); -// --------------------------- -// --- End Initialization. --- -// --------------------------- - -// ---------------------------------- -// --- Initialize Function Lists. --- -// ---------------------------------- -SCI2CAvailableC = []; -USER2CAvailableC = []; -Converted = []; -ToBeConverted(1).SCIFunctionName = SharedInfo.NextSCIFunName; -ToBeConverted(1).CFunctionName = SharedInfo.NextCFunName; - -// --- Read the list of library functions available. --- -[SCI2CAvailableC,SCI2CNElem] = FL_ExtractFuncList(FileInfo.SCI2CLibCFLFun,FileInfo.SCI2CLibCFLCls,... - SharedInfo.Annotations.FUNCLASS,SharedInfo.Extension.FuncListClasses,FileInfo.GeneralReport); -//disp (SCI2CAvailable); -[USER2CAvailableC,USER2CNElem] = FL_ExtractFuncList(FileInfo.USER2CLibCFLFun,FileInfo.USER2CLibCFLCls,... - SharedInfo.Annotations.FUNCLASS,SharedInfo.Extension.FuncListClasses,FileInfo.GeneralReport); - -// --- Save .dat files. --- -Available = SCI2CAvailableC; -save(FileInfo.FunctionList.SCI2CAvailableCDat, "Available"); -Available = USER2CAvailableC; -save(FileInfo.FunctionList.USER2CAvailableCDat, "Available"); -save(FileInfo.FunctionList.ConvertedDat, "Converted"); -save(FileInfo.FunctionList.ToBeConvertedDat, "ToBeConverted"); - -endfunction +function INIT_LoadLibraries(FileInfoDatFile) +// function INIT_LoadLibraries(FileInfoDatFile) +// ----------------------------------------------------------------- +// This function loads the SCI2C and USER libraries. +// +// Input data: +// FileInfoDatFile: name of the .dat file containing the FileInfo structure. +// +// Output data: +// --- +// +// Status: +// 12-Jun-2007 -- Raffaele Nutricato: Author. +// 03-Jan-2008 -- Raffaele Nutricato: Changed directory structure. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +// ----------------------- +// --- Initialization. --- +// ----------------------- +// --- Load File Info Structure. --- +clear FileInfo +load(FileInfoDatFile,'FileInfo'); + +// --- Load Shared Info Structure. --- +clear SharedInfo +load(FileInfo.SharedInfoDatFile,'SharedInfo'); +PrintStepInfo('Load SCI2C and USER2C Libraries.',FileInfo.GeneralReport,'both'); +// --------------------------- +// --- End Initialization. --- +// --------------------------- + +// ---------------------------------- +// --- Initialize Function Lists. --- +// ---------------------------------- +SCI2CAvailableC = []; +USER2CAvailableC = []; +Converted = []; +ToBeConverted(1).SCIFunctionName = SharedInfo.NextSCIFunName; +ToBeConverted(1).CFunctionName = SharedInfo.NextCFunName; + +// --- Read the list of library functions available. --- +[SCI2CAvailableC,SCI2CNElem] = FL_ExtractFuncList(FileInfo.SCI2CLibCFLFun,FileInfo.SCI2CLibCFLCls,... + SharedInfo.Annotations.FUNCLASS,SharedInfo.Extension.FuncListClasses,FileInfo.GeneralReport); +//disp (SCI2CAvailable); +[USER2CAvailableC,USER2CNElem] = FL_ExtractFuncList(FileInfo.USER2CLibCFLFun,FileInfo.USER2CLibCFLCls,... + SharedInfo.Annotations.FUNCLASS,SharedInfo.Extension.FuncListClasses,FileInfo.GeneralReport); + +// --- Save .dat files. --- +Available = SCI2CAvailableC; +save(FileInfo.FunctionList.SCI2CAvailableCDat, "Available"); +Available = USER2CAvailableC; +save(FileInfo.FunctionList.USER2CAvailableCDat, "Available"); +save(FileInfo.FunctionList.ConvertedDat, "Converted"); +save(FileInfo.FunctionList.ToBeConvertedDat, "ToBeConverted"); + +endfunction diff --git a/macros/ToolInitialization/INIT_RemoveDirs.sci b/macros/ToolInitialization/INIT_RemoveDirs.sci index 4d72ab78..2e88caea 100644 --- a/macros/ToolInitialization/INIT_RemoveDirs.sci +++ b/macros/ToolInitialization/INIT_RemoveDirs.sci @@ -1,74 +1,74 @@ -function INIT_RemoveDirs(FileInfo,SharedInfoRunMode) -// function INIT_RemoveDirs(FileInfo,SharedInfoRunMode) -// ----------------------------------------------------------------- -// #RNU_RES_B -// Removes existing directories according to the RunMode -// specified by the user. -// -// Input data: -// FileInfo: structure containing all info about SCI2C files. -// SharedInfoRunMode: execution mode specified by the user in -// the SCI2CInputParameters.sce file. -// -// Output data: -// --- -// -// #RNU_RES_E -// Status: -// 03-Jan-2008 -- Raffaele Nutricato: Author. -// -// Copyright 2008 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),2,2); - -// ---------------------------------------------------- -// --- Remove previous versions of SCI2C files/dir. --- -// ---------------------------------------------------- -if (SharedInfoRunMode == 'GenLibraryStructure' | SharedInfoRunMode == 'All') - disp('Removing directory: '+FileInfo.WorkingDir); - disp('Removing directory: '+FileInfo.OutCCCodeDir); - // Remove software<->user interaction. - // yesno=input('Are you sure [y/n]?','string'); - yesno = 'y'; - - if (yesno=='y') - rmdir(FileInfo.WorkingDir,'s'); // delete WorkingDir if it exists due to previous translations... - mdelete(FileInfo.OutCCCodeDir+'/*.h'); // delete .h files generated in previous translations (if any). - mdelete(FileInfo.OutCCCodeDir+'/*.c'); // delete .c files generated in previous translations (if any). - mdelete(FileInfo.OutCCCodeDir+'/*.cpp'); // delete .cpp files generated in previous translations (if any). - mdelete(FileInfo.OutCCCodeDir+'/Makefile'); // delete .h files generated in previous translations (if any). - // Note I don't delete includes, interfaces and and src directories to avoid recompiling them every time - // a new translation is launched. I only delete source files generated by user. - - else - SCI2Cerror('Cannot continue, because you don''t want to delete: '+FileInfo.WorkingDir); - SCI2Cerror('Cannot continue, because you don''t want to delete: '+FileInfo.OutCCCodeDir); - end -elseif (SharedInfoRunMode == 'Translate') - // #RNU_RES_B - //NUT: non cancella le cartelle dei file C creati nella iterazione precedente - //NUT: occorre specificarlo bene nel manuale. - // #RNU_RES_E - disp('Removing directory: '+FileInfo.OutCCCodeDir); - // Remove software<->user interaction. - // yesno=input('Are you sure [y/n]?','string'); - yesno = 'y'; - if (yesno=='y') - rmdir(FileInfo.OutCCCodeDir,'s'); - else - SCI2Cerror('Cannot continue, because you don''t want to delete: '+FileInfo.OutCCCodeDir); - end -elseif (SharedInfoRunMode == 'FunCall') - //Do nothing -else - disp('Unknown RunMode: ""'+SharedInfoRunMode+'"".'); - disp('Please check RunMode parameter in the SCI2CInputParameters.sce file'); - SCI2Cerror(' '); -end - -endfunction +function INIT_RemoveDirs(FileInfo,SharedInfoRunMode) +// function INIT_RemoveDirs(FileInfo,SharedInfoRunMode) +// ----------------------------------------------------------------- +// #RNU_RES_B +// Removes existing directories according to the RunMode +// specified by the user. +// +// Input data: +// FileInfo: structure containing all info about SCI2C files. +// SharedInfoRunMode: execution mode specified by the user in +// the SCI2CInputParameters.sce file. +// +// Output data: +// --- +// +// #RNU_RES_E +// Status: +// 03-Jan-2008 -- Raffaele Nutricato: Author. +// +// Copyright 2008 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),2,2); + +// ---------------------------------------------------- +// --- Remove previous versions of SCI2C files/dir. --- +// ---------------------------------------------------- +if (SharedInfoRunMode == 'GenLibraryStructure' | SharedInfoRunMode == 'All') + disp('Removing directory: '+FileInfo.WorkingDir); + disp('Removing directory: '+FileInfo.OutCCCodeDir); + // Remove software<->user interaction. + // yesno=input('Are you sure [y/n]?','string'); + yesno = 'y'; + + if (yesno=='y') + rmdir(FileInfo.WorkingDir,'s'); // delete WorkingDir if it exists due to previous translations... + mdelete(FileInfo.OutCCCodeDir+'/*.h'); // delete .h files generated in previous translations (if any). + mdelete(FileInfo.OutCCCodeDir+'/*.c'); // delete .c files generated in previous translations (if any). + mdelete(FileInfo.OutCCCodeDir+'/*.cpp'); // delete .cpp files generated in previous translations (if any). + mdelete(FileInfo.OutCCCodeDir+'/Makefile'); // delete .h files generated in previous translations (if any). + // Note I don't delete includes, interfaces and and src directories to avoid recompiling them every time + // a new translation is launched. I only delete source files generated by user. + + else + SCI2Cerror('Cannot continue, because you don''t want to delete: '+FileInfo.WorkingDir); + SCI2Cerror('Cannot continue, because you don''t want to delete: '+FileInfo.OutCCCodeDir); + end +elseif (SharedInfoRunMode == 'Translate') + // #RNU_RES_B + //NUT: non cancella le cartelle dei file C creati nella iterazione precedente + //NUT: occorre specificarlo bene nel manuale. + // #RNU_RES_E + disp('Removing directory: '+FileInfo.OutCCCodeDir); + // Remove software<->user interaction. + // yesno=input('Are you sure [y/n]?','string'); + yesno = 'y'; + if (yesno=='y') + rmdir(FileInfo.OutCCCodeDir,'s'); + else + SCI2Cerror('Cannot continue, because you don''t want to delete: '+FileInfo.OutCCCodeDir); + end +elseif (SharedInfoRunMode == 'FunCall') + //Do nothing +else + disp('Unknown RunMode: ""'+SharedInfoRunMode+'"".'); + disp('Please check RunMode parameter in the SCI2CInputParameters.sce file'); + SCI2Cerror(' '); +end + +endfunction diff --git a/macros/ToolInitialization/INIT_SCI2C.sci b/macros/ToolInitialization/INIT_SCI2C.sci index b6da9bd1..41a03688 100644 --- a/macros/ToolInitialization/INIT_SCI2C.sci +++ b/macros/ToolInitialization/INIT_SCI2C.sci @@ -1,164 +1,164 @@ -function [FileInfoDatFile,SharedInfoDatFile] = ... - INIT_SCI2C(UserScilabMainFile, UserSciFilesPaths, SCI2COutputDir, RunMode,Target,Board_name) -// function [FileInfoDatFile,SharedInfoDatFile] = INIT_SCI2C(SCI2CInputPrmFile) -// ----------------------------------------------------------------- -// #RNU_RES_B -// This function initializes the SCI2C tool according -// to the input parameters recorded in the SCI2CParameters. -// All info will be stored into FileInfoDatFile. -// -// Input data: -// SCI2CInputPrmFile: name of the .sce file containing input parameters. -// -// Output data: -// FileInfoDatFile: name of the .dat file containing the FileInfo structure. -// SharedInfoDatFile: it is a buffer containing parameters that are exchanged by the -// functions of the SCI2C tool. -// #RNU_RES_E -// Status: -// 13-Apr-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// #RNU_RES_B -//NUT: questo file e' da rivedere quando il tool funzionera al 50% -// #RNU_RES_E -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -//SCI2CNInArgCheck(argn(2),1,1); - -// ------------------------------ -// --- Read Input Parameters. --- -// ------------------------------ -//exec(SCI2CInputPrmFile); -// #RNU_RES_B -//NUT: queste variabili sono per usi futuri. -//NUT: e saranno introdotti nel parameter file. -// #RNU_RES_E -WorkAreaSizeBytes = 2000*8; // 2000 locations of double -// #RNU_RES_B -// Maximum number of temporary scalar variables that can be used. -// #RNU_RES_E -TotTempScalarVars = 20; -EnableTempVarsReuse = 0; // 0 = Disable; 1 = Enable. - - -// #RNU_RES_B -//NUT: I prefer to don't show this parameters to the user. -// --- Directory where all the products of the SCI2C tool will be stored. --- -// #RNU_RES_E -//-- [SCI2CResultDir,tmpfile,tmpext] = fileparts(SCI2CInputPrmFile); -SCI2CResultDir = SCI2COutputDir; - - -WorkingDir = fullfile(SCI2CResultDir,'SCI2CTmpResultsReports'); -// #RNU_RES_B -// --- Directory where the generated C code will be stored. --- -// #RNU_RES_E -OutCCCodeDir = SCI2CResultDir; - -// ------------------------------ -// --- Initialize SharedInfo. --- -// ------------------------------ -//SharedInfo = INIT_GenSharedInfo(WorkingDir,OutCCCodeDir,UserSciFilesPaths,... -// RunMode,UserScilabMainFile,TotTempScalarVars,EnableTempVarsReuse,Sci2CLibMainHeaderFName); - -//-- FIXME : MainLibHeader and Verbose mode are (?) configurable -SharedInfo = INIT_GenSharedInfo(RunMode,UserScilabMainFile, ... - TotTempScalarVars,EnableTempVarsReuse,"sci2clib.h", %t,Target,Board_name); - -// ---------------------------- -// --- Initialize FileInfo. --- -// ---------------------------- -FileInfo = INIT_GenFileInfo(WorkingDir,OutCCCodeDir,UserSciFilesPaths); - - -PrintStepInfo('SCI2C hArtes/POLIBA Tool!!!',FileInfo.GeneralReport,'stdout'); - -// ---------------------------------------------------- -// --- Remove previous versions of SCI2C files/dir. --- -// ---------------------------------------------------- -INIT_RemoveDirs(FileInfo,SharedInfo.RunMode); - -// --------------------------- -// --- Create Directories. --- -// --------------------------- -INIT_CreateDirs(FileInfo); -PrintStepInfo('SCI2C hArtes/POLIBA Tool!!!',FileInfo.GeneralReport,'file'); - -// ------------------------------ -// --- Initialize GlobalVars. --- -// ------------------------------ -GlobalVars = []; -save(FileInfo.GlobalVarFileName, "GlobalVars"); - -// ---------------------------------- -// --- Initialize Main .dat file. --- -// ---------------------------------- -//NUT: qui va sistemata. -clear FunInfo -//NUT: qua conviene fare una unica funzione. -FunInfo.SCIFunctionName = SharedInfo.NextSCIFunName; -FunInfo.CFunctionName = SharedInfo.NextCFunName; -FunInfo.FunPrecSpecifier = ''; //NUT: si riferiscono al main verifica se sono corrette -FunInfo.FunTypeAnnot = ''; //NUT: si riferiscono al main verifica se sono corrette -FunInfo.FunSizeAnnot = ''; //NUT: si riferiscono al main verifica se sono corrette -FunInfo.NInArg = 0;//NUT: si riferiscono al main verifica se sono corrette -FunInfo.InArg(1).Name = '';//NUT: si riferiscono al main verifica se sono corrette -FunInfo.InArg(1).Type = '';//NUT: si riferiscono al main verifica se sono corrette -FunInfo.InArg(1).Value = %nan;//NUT: si riferiscono al main verifica se sono corrette -FunInfo.InArg(1).Size(1) = '';//NUT: si riferiscono al main verifica se sono corrette -FunInfo.InArg(1).Dimension = '';//NUT: si riferiscono al main verifica se sono corrette -FunInfo.InArg(2).Size(2) = '';//NUT: si riferiscono al main verifica se sono corrette -FunInfo.NOutArg = 0;//NUT: si riferiscono al main verifica se sono corrette -FunInfo.OutArg(1).Name = ''; -FunInfo.OutArg(1).Type = ''; -FunInfo.OutArg(1).Size(1) = ''; -FunInfo.OutArg(1).Size(2) = ''; -FunInfo.OutArg(1).Dimension = ''; -FunInfo.PosFirstOutScalar = 0; -FunInfo.LibTypeInfo = 'USER2C'; -save(fullfile(FileInfo.FunctionList.FunInfoDatDir,FunInfo.CFunctionName+'.dat'), "FunInfo"); -clear FunInfo - -// ------------------------------------- -// --- Initialize ASTStack.dat file. --- -// ------------------------------------- -//NUT: questa struttura deve sostituire le variabili global usate per lo stack -clear ASTStack -ASTStack.SCI2CSTACK = 'EMPTYSTACK'; -ASTStack.StackPosition = 1; -ASTStack.STACKDEDUG = 0; -save(FileInfo.ASTStackDataFile, "ASTStack"); -clear ASTStack - -// --------------------------------------------- -// --- Generate new versions of SCI2C files. --- -// --------------------------------------------- -save(FileInfo.FileInfoDatFile, "FileInfo"); -save(FileInfo.SharedInfoDatFile, "SharedInfo"); -FileInfoDatFile = FileInfo.FileInfoDatFile; -SharedInfoDatFile = FileInfo.SharedInfoDatFile; - -global anscounter; //NUT: just to fix problem with ans variables. -anscounter = 0; - -//-------------------------------------------- -//---Hardware related initialisation---------- -//-------------------------------------------- -if (Target == 'AVR') - PeripheralList = list(); - save(FileInfo.PeripheralInitListFile, 'PeripheralList'); -elseif (Target == 'Arduino') - SetupList = list(); - save(FileInfo.SetupListFile, 'SetupList'); -end - -endfunction -// #RNU_RES_B -//NUT: quando genero il c della funzione utente devo anche generare il corrispondente file delle includes. -//NUT: perche' la main non la devo annotare, secondo me occorre annotarla.? -// #RNU_RES_E +function [FileInfoDatFile,SharedInfoDatFile] = ... + INIT_SCI2C(UserScilabMainFile, UserSciFilesPaths, SCI2COutputDir, RunMode,Target,Board_name) +// function [FileInfoDatFile,SharedInfoDatFile] = INIT_SCI2C(SCI2CInputPrmFile) +// ----------------------------------------------------------------- +// #RNU_RES_B +// This function initializes the SCI2C tool according +// to the input parameters recorded in the SCI2CParameters. +// All info will be stored into FileInfoDatFile. +// +// Input data: +// SCI2CInputPrmFile: name of the .sce file containing input parameters. +// +// Output data: +// FileInfoDatFile: name of the .dat file containing the FileInfo structure. +// SharedInfoDatFile: it is a buffer containing parameters that are exchanged by the +// functions of the SCI2C tool. +// #RNU_RES_E +// Status: +// 13-Apr-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// #RNU_RES_B +//NUT: questo file e' da rivedere quando il tool funzionera al 50% +// #RNU_RES_E +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +//SCI2CNInArgCheck(argn(2),1,1); + +// ------------------------------ +// --- Read Input Parameters. --- +// ------------------------------ +//exec(SCI2CInputPrmFile); +// #RNU_RES_B +//NUT: queste variabili sono per usi futuri. +//NUT: e saranno introdotti nel parameter file. +// #RNU_RES_E +WorkAreaSizeBytes = 2000*8; // 2000 locations of double +// #RNU_RES_B +// Maximum number of temporary scalar variables that can be used. +// #RNU_RES_E +TotTempScalarVars = 20; +EnableTempVarsReuse = 0; // 0 = Disable; 1 = Enable. + + +// #RNU_RES_B +//NUT: I prefer to don't show this parameters to the user. +// --- Directory where all the products of the SCI2C tool will be stored. --- +// #RNU_RES_E +//-- [SCI2CResultDir,tmpfile,tmpext] = fileparts(SCI2CInputPrmFile); +SCI2CResultDir = SCI2COutputDir; + + +WorkingDir = fullfile(SCI2CResultDir,'SCI2CTmpResultsReports'); +// #RNU_RES_B +// --- Directory where the generated C code will be stored. --- +// #RNU_RES_E +OutCCCodeDir = SCI2CResultDir; + +// ------------------------------ +// --- Initialize SharedInfo. --- +// ------------------------------ +//SharedInfo = INIT_GenSharedInfo(WorkingDir,OutCCCodeDir,UserSciFilesPaths,... +// RunMode,UserScilabMainFile,TotTempScalarVars,EnableTempVarsReuse,Sci2CLibMainHeaderFName); + +//-- FIXME : MainLibHeader and Verbose mode are (?) configurable +SharedInfo = INIT_GenSharedInfo(RunMode,UserScilabMainFile, ... + TotTempScalarVars,EnableTempVarsReuse,"sci2clib.h", %t,Target,Board_name); + +// ---------------------------- +// --- Initialize FileInfo. --- +// ---------------------------- +FileInfo = INIT_GenFileInfo(WorkingDir,OutCCCodeDir,UserSciFilesPaths); + + +PrintStepInfo('SCI2C hArtes/POLIBA Tool!!!',FileInfo.GeneralReport,'stdout'); + +// ---------------------------------------------------- +// --- Remove previous versions of SCI2C files/dir. --- +// ---------------------------------------------------- +INIT_RemoveDirs(FileInfo,SharedInfo.RunMode); + +// --------------------------- +// --- Create Directories. --- +// --------------------------- +INIT_CreateDirs(FileInfo); +PrintStepInfo('SCI2C hArtes/POLIBA Tool!!!',FileInfo.GeneralReport,'file'); + +// ------------------------------ +// --- Initialize GlobalVars. --- +// ------------------------------ +GlobalVars = []; +save(FileInfo.GlobalVarFileName, "GlobalVars"); + +// ---------------------------------- +// --- Initialize Main .dat file. --- +// ---------------------------------- +//NUT: qui va sistemata. +clear FunInfo +//NUT: qua conviene fare una unica funzione. +FunInfo.SCIFunctionName = SharedInfo.NextSCIFunName; +FunInfo.CFunctionName = SharedInfo.NextCFunName; +FunInfo.FunPrecSpecifier = ''; //NUT: si riferiscono al main verifica se sono corrette +FunInfo.FunTypeAnnot = ''; //NUT: si riferiscono al main verifica se sono corrette +FunInfo.FunSizeAnnot = ''; //NUT: si riferiscono al main verifica se sono corrette +FunInfo.NInArg = 0;//NUT: si riferiscono al main verifica se sono corrette +FunInfo.InArg(1).Name = '';//NUT: si riferiscono al main verifica se sono corrette +FunInfo.InArg(1).Type = '';//NUT: si riferiscono al main verifica se sono corrette +FunInfo.InArg(1).Value = %nan;//NUT: si riferiscono al main verifica se sono corrette +FunInfo.InArg(1).Size(1) = '';//NUT: si riferiscono al main verifica se sono corrette +FunInfo.InArg(1).Dimension = '';//NUT: si riferiscono al main verifica se sono corrette +FunInfo.InArg(2).Size(2) = '';//NUT: si riferiscono al main verifica se sono corrette +FunInfo.NOutArg = 0;//NUT: si riferiscono al main verifica se sono corrette +FunInfo.OutArg(1).Name = ''; +FunInfo.OutArg(1).Type = ''; +FunInfo.OutArg(1).Size(1) = ''; +FunInfo.OutArg(1).Size(2) = ''; +FunInfo.OutArg(1).Dimension = ''; +FunInfo.PosFirstOutScalar = 0; +FunInfo.LibTypeInfo = 'USER2C'; +save(fullfile(FileInfo.FunctionList.FunInfoDatDir,FunInfo.CFunctionName+'.dat'), "FunInfo"); +clear FunInfo + +// ------------------------------------- +// --- Initialize ASTStack.dat file. --- +// ------------------------------------- +//NUT: questa struttura deve sostituire le variabili global usate per lo stack +clear ASTStack +ASTStack.SCI2CSTACK = 'EMPTYSTACK'; +ASTStack.StackPosition = 1; +ASTStack.STACKDEDUG = 0; +save(FileInfo.ASTStackDataFile, "ASTStack"); +clear ASTStack + +// --------------------------------------------- +// --- Generate new versions of SCI2C files. --- +// --------------------------------------------- +save(FileInfo.FileInfoDatFile, "FileInfo"); +save(FileInfo.SharedInfoDatFile, "SharedInfo"); +FileInfoDatFile = FileInfo.FileInfoDatFile; +SharedInfoDatFile = FileInfo.SharedInfoDatFile; + +global anscounter; //NUT: just to fix problem with ans variables. +anscounter = 0; + +//-------------------------------------------- +//---Hardware related initialisation---------- +//-------------------------------------------- +if (Target == 'AVR') + PeripheralList = list(); + save(FileInfo.PeripheralInitListFile, 'PeripheralList'); +elseif (Target == 'Arduino') + SetupList = list(); + save(FileInfo.SetupListFile, 'SetupList'); +end + +endfunction +// #RNU_RES_B +//NUT: quando genero il c della funzione utente devo anche generare il corrispondente file delle includes. +//NUT: perche' la main non la devo annotare, secondo me occorre annotarla.? +// #RNU_RES_E diff --git a/macros/ToolInitialization/INIT_SCI2CLoader.sce b/macros/ToolInitialization/INIT_SCI2CLoader.sce index bd07f892..0e0261cd 100644 --- a/macros/ToolInitialization/INIT_SCI2CLoader.sce +++ b/macros/ToolInitialization/INIT_SCI2CLoader.sce @@ -1,72 +1,72 @@ -// ----------------------------------------------------------------- -// Load SCI2C directories and files. -// -// Input data: -// SCI2CLoaderMainDir: path of the directory where this script (main.sce) is stored. -// -// Output data: -// --- -// -// Status: -// 11-Apr-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -SCI2CLoaderMainDir = '..'; - -// --------------------------- -// --- Define Directories. --- -// --------------------------- -// Directory containing functions related to the management of the Abstract Syntactic tree. -ASTManagement = 'ASTManagement'; - -// Directory containing functions that produce the C code. -CCodeGeneration = 'CCodeGeneration'; - -// Directory containing functions that perform general tasks. -GeneralFunctions = 'GeneralFunctions'; - -// Directory containing functions that perform the initialization of the SCI2C tool. -ToolInitialization = 'ToolInitialization'; - -// Directory containing functions that perform the function annotation. -FunctionAnnotation = 'FunctionAnnotation'; - -// Directory containing functions that handle symbol table. -SymbolTable = 'SymbolTable'; - -// Directory containing functions that handle function lists. -FunctionList = 'FunctionList'; - -// Directory containing functions that print SCI2C error messages. -ErrorMessages = 'ErrorMessages'; - - -// ------------------------------- -// --- End Define Directories. --- -// ------------------------------- - -// ------------- -// --- getd. --- -// ------------- -getd(fullfile(SCI2CLoaderMainDir,ASTManagement)); -getd(fullfile(SCI2CLoaderMainDir,CCodeGeneration)); -getd(fullfile(SCI2CLoaderMainDir,GeneralFunctions)); -getd(fullfile(SCI2CLoaderMainDir,ToolInitialization)); -getd(fullfile(SCI2CLoaderMainDir,FunctionAnnotation)); -getd(fullfile(SCI2CLoaderMainDir,SymbolTable)); -getd(fullfile(SCI2CLoaderMainDir,FunctionList)); -getd(fullfile(SCI2CLoaderMainDir,ErrorMessages)); -// ----------------- -// --- End getd. --- -// ----------------- - -// ------------- -// --- exec. --- -// ------------- -exec(fullfile(SCI2CLoaderMainDir,ASTManagement,'%program_p.sci')); -// ----------------- -// --- End exec. --- -// ----------------- +// ----------------------------------------------------------------- +// Load SCI2C directories and files. +// +// Input data: +// SCI2CLoaderMainDir: path of the directory where this script (main.sce) is stored. +// +// Output data: +// --- +// +// Status: +// 11-Apr-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +SCI2CLoaderMainDir = '..'; + +// --------------------------- +// --- Define Directories. --- +// --------------------------- +// Directory containing functions related to the management of the Abstract Syntactic tree. +ASTManagement = 'ASTManagement'; + +// Directory containing functions that produce the C code. +CCodeGeneration = 'CCodeGeneration'; + +// Directory containing functions that perform general tasks. +GeneralFunctions = 'GeneralFunctions'; + +// Directory containing functions that perform the initialization of the SCI2C tool. +ToolInitialization = 'ToolInitialization'; + +// Directory containing functions that perform the function annotation. +FunctionAnnotation = 'FunctionAnnotation'; + +// Directory containing functions that handle symbol table. +SymbolTable = 'SymbolTable'; + +// Directory containing functions that handle function lists. +FunctionList = 'FunctionList'; + +// Directory containing functions that print SCI2C error messages. +ErrorMessages = 'ErrorMessages'; + + +// ------------------------------- +// --- End Define Directories. --- +// ------------------------------- + +// ------------- +// --- getd. --- +// ------------- +getd(fullfile(SCI2CLoaderMainDir,ASTManagement)); +getd(fullfile(SCI2CLoaderMainDir,CCodeGeneration)); +getd(fullfile(SCI2CLoaderMainDir,GeneralFunctions)); +getd(fullfile(SCI2CLoaderMainDir,ToolInitialization)); +getd(fullfile(SCI2CLoaderMainDir,FunctionAnnotation)); +getd(fullfile(SCI2CLoaderMainDir,SymbolTable)); +getd(fullfile(SCI2CLoaderMainDir,FunctionList)); +getd(fullfile(SCI2CLoaderMainDir,ErrorMessages)); +// ----------------- +// --- End getd. --- +// ----------------- + +// ------------- +// --- exec. --- +// ------------- +exec(fullfile(SCI2CLoaderMainDir,ASTManagement,'%program_p.sci')); +// ----------------- +// --- End exec. --- +// ----------------- diff --git a/macros/ToolInitialization/INIT_SharedInfoEqual.sci b/macros/ToolInitialization/INIT_SharedInfoEqual.sci index 690a43f6..9650aac1 100644 --- a/macros/ToolInitialization/INIT_SharedInfoEqual.sci +++ b/macros/ToolInitialization/INIT_SharedInfoEqual.sci @@ -1,43 +1,43 @@ -function SharedInfo = INIT_SharedInfoEqual(SharedInfo) -// function SharedInfo = INIT_SharedInfoEqual(SharedInfo) -// ----------------------------------------------------------------- -// #RNU_RES_B -// This function initializes the SCI2C tool according -// to the input parameters recorded in the SCI2CParameters. -// All info will be stored into FileInfoDatFile. -// -// Input data: -// SCI2CInputPrmFile: name of the .sce file containing input parameters. -// -// Output data: -// FileInfoDatFile: name of the .dat file containing the FileInfo structure. -// SharedInfoDatFile: it is a buffer containing parameters that are exchanged by the -// functions of the SCI2C tool. -// #RNU_RES_E -// Status: -// 13-Apr-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// #RNU_RES_B -//NUT: verifica se le variabili sotto elencate ti servono davvero. -//NUT: Sarebbe interessante accorpare tutte le variabili usate per la equal sotto un'unica struttura -//NUT: per esempio SharedInfo.SkipNextEqual -// #RNU_RES_E - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -SharedInfo.Equal.Enabled = 0; // 1 means enabled -> we are inside an equal AST block. -SharedInfo.Equal.NInArg = 0; -SharedInfo.Equal.InArg(1).Name = ''; -SharedInfo.Equal.NOutArg = 0; -SharedInfo.Equal.OutArg(1).Name = ''; -SharedInfo.Equal.Lhs = 0; -SharedInfo.Equal.Nins = 0; // Counts the number of ins found in the lhs of the Equal. - -endfunction +function SharedInfo = INIT_SharedInfoEqual(SharedInfo) +// function SharedInfo = INIT_SharedInfoEqual(SharedInfo) +// ----------------------------------------------------------------- +// #RNU_RES_B +// This function initializes the SCI2C tool according +// to the input parameters recorded in the SCI2CParameters. +// All info will be stored into FileInfoDatFile. +// +// Input data: +// SCI2CInputPrmFile: name of the .sce file containing input parameters. +// +// Output data: +// FileInfoDatFile: name of the .dat file containing the FileInfo structure. +// SharedInfoDatFile: it is a buffer containing parameters that are exchanged by the +// functions of the SCI2C tool. +// #RNU_RES_E +// Status: +// 13-Apr-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// #RNU_RES_B +//NUT: verifica se le variabili sotto elencate ti servono davvero. +//NUT: Sarebbe interessante accorpare tutte le variabili usate per la equal sotto un'unica struttura +//NUT: per esempio SharedInfo.SkipNextEqual +// #RNU_RES_E + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +SharedInfo.Equal.Enabled = 0; // 1 means enabled -> we are inside an equal AST block. +SharedInfo.Equal.NInArg = 0; +SharedInfo.Equal.InArg(1).Name = ''; +SharedInfo.Equal.NOutArg = 0; +SharedInfo.Equal.OutArg(1).Name = ''; +SharedInfo.Equal.Lhs = 0; +SharedInfo.Equal.Nins = 0; // Counts the number of ins found in the lhs of the Equal. + +endfunction diff --git a/macros/ToolInitialization/ManageNextConversion.sci b/macros/ToolInitialization/ManageNextConversion.sci index b0d4337b..f4bdc71d 100644 --- a/macros/ToolInitialization/ManageNextConversion.sci +++ b/macros/ToolInitialization/ManageNextConversion.sci @@ -1,89 +1,89 @@ -function FlagContinueTranslation = ManageNextConversion(FileInfoDatFile) -// function FlagContinueTranslation = ManageNextConversion(FileInfoDatFile) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 27-Oct-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -//NUT: verifica se update e managenexconversion possono essere integrate in un'unica funzione. - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -// --------------------- -// --- Load section. --- -// --------------------- -// --- Load File Info Structure. --- -load(FileInfoDatFile,'FileInfo'); - -// --- Load Shared Info Structure. --- -load(FileInfo.SharedInfoDatFile,'SharedInfo'); - -// --- Load ToBeConverted .dat file. --- -load(FileInfo.FunctionList.ToBeConvertedDat,'ToBeConverted'); -// ------------------------- -// --- End load section. --- -// ------------------------- - -FlagContinueTranslation = 0; - -// ------------------------------------ -// --- Finalize the current C code. --- -// ------------------------------------ -C_FinalizeCode(FileInfo,SharedInfo); -//PrintStringInfo(' hello',ReportFileName,'file','y'); - - -// ------------------------------------------------ -// --- Identify the next function to translate. --- -// ------------------------------------------------ -SharedInfo.NFilesToTranslate = SharedInfo.NFilesToTranslate - 1; - -if (SharedInfo.NFilesToTranslate >= 1) - // Remove the translated C function from the ToBeConverted list - ToBeConverted(1) = []; - FlagContinueTranslation = 1; - SharedInfo.NextSCIFunName = ToBeConverted(1).SCIFunctionName; - SharedInfo.NextCFunName = ToBeConverted(1).CFunctionName; - SharedInfo.NextSCIFunNumber = SharedInfo.NextSCIFunNumber + 1; - [FlagFound,SharedInfo.NextSCIFileName] = ... - SCI2CFindFile(FileInfo.UserSciFilesPaths,SharedInfo.NextSCIFunName+'.sci'); - if (FlagFound == 0) - error(9999, 'Cannot find a scilab file to generate ""'+SharedInfo.NextCFunName+'"".'); - end -end -// ---------------------------------------------------- -// --- End Identify the next function to translate. --- -// ---------------------------------------------------- - - -// --------------------- -// --- Save section. --- -// --------------------- -// --- Save Shared Info Structure. --- -save(FileInfo.SharedInfoDatFile, "SharedInfo"); -clear SharedInfo - -// --- Save ToBeConverted .dat file. --- -save(FileInfo.FunctionList.ToBeConvertedDat, "ToBeConverted"); -clear ToBeConverted - -clear FileInfo -// ------------------------- -// --- End Save section. --- -// ------------------------- - -endfunction +function FlagContinueTranslation = ManageNextConversion(FileInfoDatFile) +// function FlagContinueTranslation = ManageNextConversion(FileInfoDatFile) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 27-Oct-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +//NUT: verifica se update e managenexconversion possono essere integrate in un'unica funzione. + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +// --------------------- +// --- Load section. --- +// --------------------- +// --- Load File Info Structure. --- +load(FileInfoDatFile,'FileInfo'); + +// --- Load Shared Info Structure. --- +load(FileInfo.SharedInfoDatFile,'SharedInfo'); + +// --- Load ToBeConverted .dat file. --- +load(FileInfo.FunctionList.ToBeConvertedDat,'ToBeConverted'); +// ------------------------- +// --- End load section. --- +// ------------------------- + +FlagContinueTranslation = 0; + +// ------------------------------------ +// --- Finalize the current C code. --- +// ------------------------------------ +C_FinalizeCode(FileInfo,SharedInfo); +//PrintStringInfo(' hello',ReportFileName,'file','y'); + + +// ------------------------------------------------ +// --- Identify the next function to translate. --- +// ------------------------------------------------ +SharedInfo.NFilesToTranslate = SharedInfo.NFilesToTranslate - 1; + +if (SharedInfo.NFilesToTranslate >= 1) + // Remove the translated C function from the ToBeConverted list + ToBeConverted(1) = []; + FlagContinueTranslation = 1; + SharedInfo.NextSCIFunName = ToBeConverted(1).SCIFunctionName; + SharedInfo.NextCFunName = ToBeConverted(1).CFunctionName; + SharedInfo.NextSCIFunNumber = SharedInfo.NextSCIFunNumber + 1; + [FlagFound,SharedInfo.NextSCIFileName] = ... + SCI2CFindFile(FileInfo.UserSciFilesPaths,SharedInfo.NextSCIFunName+'.sci'); + if (FlagFound == 0) + error(9999, 'Cannot find a scilab file to generate ""'+SharedInfo.NextCFunName+'"".'); + end +end +// ---------------------------------------------------- +// --- End Identify the next function to translate. --- +// ---------------------------------------------------- + + +// --------------------- +// --- Save section. --- +// --------------------- +// --- Save Shared Info Structure. --- +save(FileInfo.SharedInfoDatFile, "SharedInfo"); +clear SharedInfo + +// --- Save ToBeConverted .dat file. --- +save(FileInfo.FunctionList.ToBeConvertedDat, "ToBeConverted"); +clear ToBeConverted + +clear FileInfo +// ------------------------- +// --- End Save section. --- +// ------------------------- + +endfunction diff --git a/macros/ToolInitialization/SCI2CInputParameters.sce b/macros/ToolInitialization/SCI2CInputParameters.sce index 7af3343c..ea5a4b86 100644 --- a/macros/ToolInitialization/SCI2CInputParameters.sce +++ b/macros/ToolInitialization/SCI2CInputParameters.sce @@ -1,87 +1,87 @@ -// ----------------------------------------------------------------- -// === hArtes/PoliBa/GAP SCI2C tool === -// === Authors: === -// === Raffaele Nutricato === -// === raffaele.nutricato@tiscali.it === -// === Alberto Morea === -// === === -// === *************** === -// === USER PARAMETERS === -// === *************** === -// === === -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------------------ -// --- Specify Paths of User Scilab code. --- -// ------------------------------------------ -UserSciCodeMainDir = 'C:\SCI2CTests\RegressionTests\test999'; - -// --- Path + filename of the .sci main file of the code to be translated. --- -// It is the entry point. -UserScilabMainFile = fullfile(UserSciCodeMainDir,'scilabcode\mainfun.sci'); - -// --- List of the paths containing the .sci files written by the user. --- -UserSciFilesPaths = ... - [... - fullfile(UserSciCodeMainDir,'scilabcode');... - ]; - -// -------------------------- -// --- End Specify paths. --- -// -------------------------- - - -// ---------------------------- -// --- Select the run mode. --- -// ---------------------------- -//RunMode = 'GenLibraryStructure'; -//RunMode = 'Translate'; -RunMode = 'All'; - -// --- Select one of the following options. --- - -// 'GenLibraryStructure'; -// Generates the library structure and exits. It is very -// useful when the user wants to manually change the files stored in that structure -// before running the translation. 'GenLibraryStructure' option forces SCI2C to remove -// the already existing WorkingDir and OutCCCodeDir directories. - -// 'Translate'; -// Performs the translation without generating the library structure. It means that the library -// structure must be already existing. This is useful when the user doesn't want to spend time -// to generate again that structure or when he wants to force the SCI2C tool to access to -// a manually-changed library structure. 'Translate' option forces SCI2C to don't remove -// the already existing WorkingDir. Only OutCCCodeDir directory will be removed. - -// 'All'; -// Performs all the actions listed above. - -// -------------------------------- -// --- End Select the run mode. --- -// -------------------------------- - - -// ---------------------------- -// --- Translation Options. --- -// ---------------------------- -// --- Enable (1) / Disable (0) copy of Scilab code into C code. --- -// If 1 the Scilab code will be copied into the C code in order to show -// how each Scilab code line has been translated into C code. -CopySciCodeIntoCCode = 1; - -// --- Select the path style for the C code. --- -// It can be: -// windows -// unix -// cygwin -CCompilerPathStyle = 'cygwin'; - -// --- Path + File name of the main SCI2C library header file. -Sci2CLibMainHeaderFName = 'C:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\Scilab2C\CFiles\sci2cincludes\sci2clib.h'; -// -------------------------------- -// --- End Translation Options. --- -// -------------------------------- +// ----------------------------------------------------------------- +// === hArtes/PoliBa/GAP SCI2C tool === +// === Authors: === +// === Raffaele Nutricato === +// === raffaele.nutricato@tiscali.it === +// === Alberto Morea === +// === === +// === *************** === +// === USER PARAMETERS === +// === *************** === +// === === +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------------------ +// --- Specify Paths of User Scilab code. --- +// ------------------------------------------ +UserSciCodeMainDir = 'C:\SCI2CTests\RegressionTests\test999'; + +// --- Path + filename of the .sci main file of the code to be translated. --- +// It is the entry point. +UserScilabMainFile = fullfile(UserSciCodeMainDir,'scilabcode\mainfun.sci'); + +// --- List of the paths containing the .sci files written by the user. --- +UserSciFilesPaths = ... + [... + fullfile(UserSciCodeMainDir,'scilabcode');... + ]; + +// -------------------------- +// --- End Specify paths. --- +// -------------------------- + + +// ---------------------------- +// --- Select the run mode. --- +// ---------------------------- +//RunMode = 'GenLibraryStructure'; +//RunMode = 'Translate'; +RunMode = 'All'; + +// --- Select one of the following options. --- + +// 'GenLibraryStructure'; +// Generates the library structure and exits. It is very +// useful when the user wants to manually change the files stored in that structure +// before running the translation. 'GenLibraryStructure' option forces SCI2C to remove +// the already existing WorkingDir and OutCCCodeDir directories. + +// 'Translate'; +// Performs the translation without generating the library structure. It means that the library +// structure must be already existing. This is useful when the user doesn't want to spend time +// to generate again that structure or when he wants to force the SCI2C tool to access to +// a manually-changed library structure. 'Translate' option forces SCI2C to don't remove +// the already existing WorkingDir. Only OutCCCodeDir directory will be removed. + +// 'All'; +// Performs all the actions listed above. + +// -------------------------------- +// --- End Select the run mode. --- +// -------------------------------- + + +// ---------------------------- +// --- Translation Options. --- +// ---------------------------- +// --- Enable (1) / Disable (0) copy of Scilab code into C code. --- +// If 1 the Scilab code will be copied into the C code in order to show +// how each Scilab code line has been translated into C code. +CopySciCodeIntoCCode = 1; + +// --- Select the path style for the C code. --- +// It can be: +// windows +// unix +// cygwin +CCompilerPathStyle = 'cygwin'; + +// --- Path + File name of the main SCI2C library header file. +Sci2CLibMainHeaderFName = 'C:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\Scilab2C\CFiles\sci2cincludes\sci2clib.h'; +// -------------------------------- +// --- End Translation Options. --- +// -------------------------------- diff --git a/macros/ToolInitialization/doublecomplex.sci b/macros/ToolInitialization/doublecomplex.sci index ebeb883c..4ceac0c8 100644 --- a/macros/ToolInitialization/doublecomplex.sci +++ b/macros/ToolInitialization/doublecomplex.sci @@ -1,29 +1,29 @@ -function y = doublecomplex(x) -// function y = doublecomplex(x) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 27-Oct-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -if(x==0) -y = 0*%i; -else -y=x+0*%i; -end -endfunction +function y = doublecomplex(x) +// function y = doublecomplex(x) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 27-Oct-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +if(x==0) +y = 0*%i; +else +y=x+0*%i; +end +endfunction diff --git a/macros/ToolInitialization/floatcomplex.sci b/macros/ToolInitialization/floatcomplex.sci index eedae766..f4c42416 100644 --- a/macros/ToolInitialization/floatcomplex.sci +++ b/macros/ToolInitialization/floatcomplex.sci @@ -1,26 +1,26 @@ -function y = floatcomplex(x) -// function y = floatcomplex(x) -// ----------------------------------------------------------------- -// //NUT: add description here -// -// Input data: -// //NUT: add description here -// -// Output data: -// //NUT: add description here -// -// Status: -// 27-Oct-2007 -- Raffaele Nutricato: Author. -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------------------ -// --- Check input arguments. --- -// ------------------------------ -SCI2CNInArgCheck(argn(2),1,1); - -y = x+0*%i; - -endfunction \ No newline at end of file +function y = floatcomplex(x) +// function y = floatcomplex(x) +// ----------------------------------------------------------------- +// //NUT: add description here +// +// Input data: +// //NUT: add description here +// +// Output data: +// //NUT: add description here +// +// Status: +// 27-Oct-2007 -- Raffaele Nutricato: Author. +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------------------ +// --- Check input arguments. --- +// ------------------------------ +SCI2CNInArgCheck(argn(2),1,1); + +y = x+0*%i; + +endfunction diff --git a/macros/runsci2c.sci b/macros/runsci2c.sci index 7475f870..c58e0192 100644 --- a/macros/runsci2c.sci +++ b/macros/runsci2c.sci @@ -1,266 +1,266 @@ -function runsci2c(UserScilabMainFile, UserSciFilesPaths, SCI2COutputPath, Runmode, BuildTool,Target,Board_name) -// function runsci2c(SCI2CInputPrmFile) -// ----------------------------------------------------------------- -// === hArtes/PoliBa/GAP SCI2C tool === -// === Authors: === -// === Raffaele Nutricato === -// === raffaele.nutricato@tiscali.it === -// === Alberto Morea === -// -// This is the main function of SCI2C. -// -// Input data: -// SCI2CInputPrmFile: path+filename of the input parameters file. -// -// Output data: -// --- -// -// Status: -// 11-Apr-2007 -- Raffaele Nutricato: Author. -// 11-Apr-2007 -- Alberto Morea: Tests. -// -// Copyright 2007 Raffaele Nutricato & Alberto Morea. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - -// ------------------- -// --- Soft reset. --- -// ------------------- -//mode(-1); -//clc; -// ----------------------- -// --- End Soft reset. --- -// ----------------------- - -// ------------------------- -// --- Input Parameters. --- -// ------------------------- -RunSci2CMainDir = pwd(); -disp(RunSci2CMainDir); -// ----------------------------- -// --- End input Parameters. --- -// ----------------------------- - -// ------------------------------- -// --- Perform Intializations. --- -// ------------------------------- -// --- Load SCI2C directories and files. --- -//cd(fullfile(RunSci2CMainDir,'ToolInitialization')); -//exec('INIT_SCI2CLoader.sce'); -//cd(RunSci2CMainDir); - -// --- Initialize the SCI2C tool directories and files. --- -[FileInfoDatFile,SharedInfoDatFile] = INIT_SCI2C(UserScilabMainFile, ... - UserSciFilesPaths, SCI2COutputPath, RunMode, Target,Board_name); - -// -- Load FileInfo and SharedInfo -load(SharedInfoDatFile,'SharedInfo'); -load(FileInfoDatFile,'FileInfo'); - -RunMode = SharedInfo.RunMode; - -// --- Generation of the library structure. --- -if (RunMode == 'GenLibraryStructure' | RunMode == 'All') - INIT_GenLibraries(FileInfoDatFile); -end - -// --- Load Library Info. --- -INIT_LoadLibraries(FileInfoDatFile); - -// ----------------------------------- -// --- End Perform Intializations. --- -// ----------------------------------- - -// ---------------------------------- -// --- Perform SCI2C Translation. --- -// ---------------------------------- -if (RunMode == 'All' | RunMode == 'Translate') - FlagContinueTranslation = 1; - while(FlagContinueTranslation == 1) - UpdateSCI2CInfo(FileInfoDatFile); - AST_GetASTFile(FileInfoDatFile); - AST2Ccode(FileInfoDatFile); - JoinDeclarAndCcode(FileInfoDatFile); - FlagContinueTranslation = ManageNextConversion(FileInfoDatFile); - end -end - -load(SharedInfoDatFile,'SharedInfo'); -// --------------------------- -// --- Copy library files. --- -// --------------------------- - -global SCI2CHOME -allSources = SCI2CHOME + "/" + getAllSources(SharedInfo, BuildTool); -allHeaders = SCI2CHOME + "/" +getAllHeaders(SharedInfo); -allInterfaces = SCI2CHOME + "/" + getAllInterfaces(SharedInfo); -if(~isempty(getAllLibraries(SharedInfo))) - allLibraries = SCI2CHOME + "/" + getAllLibraries(SharedInfo); -else - allLibraries = '' -end -//allLibraries = SCI2CHOME + "/" + getAllLibraries(Target); -if (Target == 'Arduino') - mkdir(SCI2COutputPath+"/arduino/"); - mkdir(SCI2COutputPath+"/arduino/sci2c_arduino"); -end -mkdir(SCI2COutputPath+"/src/"); -mkdir(SCI2COutputPath+"/src/c/"); -mkdir(SCI2COutputPath+"/includes/"); -mkdir(SCI2COutputPath+"/interfaces/"); -mkdir(SCI2COutputPath+"/libraries/"); - -// -- Sources -PrintStepInfo('Copying sources', FileInfo.GeneralReport,'both'); - -for i = 1:size(allSources, "*") - // DEBUG only - //disp("Copying "+allSources(i)+" in "+SCI2COutputPath+"/src/c/"); - //Copy ode related functions only if 'ode' function is used. - if(~isempty(strstr(allSources(i),'dode'))) - if(size(SharedInfo.Includelist) <> 0) - if((mtlb_strcmp(part(SharedInfo.Includelist(1),1:5),'odefn') == %T)) - if BuildTool == "nmake" - copyfile(allSources(i), SCI2COutputPath+"/arduino/sci2c_arduino/"); - else - copyfile(allSources(i), SCI2COutputPath+"/src/c/"); - end - end - end - else - if BuildTool == "nmake" - copyfile(allSources(i), SCI2COutputPath+"/arduino/sci2c_arduino/"); - else - copyfile(allSources(i), SCI2COutputPath+"/src/c/"); - end - end -end - -// -- Includes -PrintStepInfo('Copying headers', FileInfo.GeneralReport,'both'); -for i = 1:size(allHeaders, "*") - // DEBUG only - //disp("Copying "+allHeaders(i)+" in "+SCI2COutputPath+"/includes/"); - if BuildTool == "nmake" - copyfile(allHeaders(i), SCI2COutputPath+"/arduino/sci2c_arduino/"); - else - copyfile(allHeaders(i), SCI2COutputPath+"/includes/"); - end -end - -// -- Interfaces -PrintStepInfo('Copying interfaces', FileInfo.GeneralReport,'both'); -for i = 1:size(allInterfaces, "*") - // DEBUG only - //disp("Copying "+allInterfaces(i)+" in "+SCI2COutputPath+"/interfaces/"); - if BuildTool == "nmake" - copyfile(allInterfaces(i), SCI2COutputPath+"/arduino/sci2c_arduino/"); - else - copyfile(allInterfaces(i), SCI2COutputPath+"/interfaces/"); - end -end - -// -- Libraries -if(~isempty(allLibraries)) - PrintStepInfo('Copying libraries', FileInfo.GeneralReport,'both'); - for i = 1:size(allLibraries, "*") - // DEBUG only - //disp("Copying "+allLibraries(i)+" in "+SCI2COutputPath+"/libraries/"); - copyfile(allLibraries(i), SCI2COutputPath+"/libraries/"); - end -end - -//Copy folder containing opencv include files in Includes folder -//if((Target == 'RPi') & (SharedInfo.OpenCVUsed == %T)) -// copyfile(SCI2CHOME + "/" +'thirdparty/raspberrypi/includes/opencv2/',SCI2COutputPath+"/includes/opencv2") -//end - -// -------------------------- -// --- Generate Makefile. --- -// -------------------------- -//If output format is chosen as 'Arduino', then copy makefile for arduino from -//default folder, else generate makefile for standalone c code - -if (Target == 'Arduino') - - GenerateSetupFunction(FileInfo); - //Copy arduino makefile - arduinoFiles = SCI2CHOME + "/" + getArduinoFiles(); - PrintStepInfo('Copying arduino files', FileInfo.GeneralReport,'both'); - copyfile(arduinoFiles(1), SCI2COutputPath); - for i = 2:size(arduinoFiles, "*") - // DEBUG only - //disp("Copying "+arduinoFiles(i)+" in "+SCI2COutputPath+"/arduino/sci2carduino"); - copyfile(arduinoFiles(i), SCI2COutputPath+"/arduino/sci2c_arduino/"); - end - C_GenerateMkfle_arduino(FileInfo,SharedInfo); - movefile(FileInfo.MakefileFilename, SCI2COutputPath+"/arduino/sci2c_arduino/"); -elseif (Target == 'AVR') - AVRFile = SCI2CHOME + "/" + "src/c/hardware/avr/default_files/Makefile"; - copyfile(AVRFile, SCI2COutputPath); -else - - if BuildTool == "make" - C_GenerateMakefile(FileInfo,SharedInfo); - copyBlasLapackLibs(FileInfo,SharedInfo); //Previously .dll files and blas,lapack library not creating for cygwin by additing this works fine - end - if BuildTool == "nmake" - //copyBlasLapackLibs(FileInfo,SharedInfo); - C_GenerateMakefile_msvc(FileInfo,SharedInfo); - end -end -if BuildTool == "nmake" & Target == 'Arduino' - movefile(SCI2COutputPath +"/setup_arduino.h", SCI2COutputPath+"/arduino/sci2c_arduino/"); - movefile(SCI2COutputPath +"/setup_arduino.cpp", SCI2COutputPath+"/arduino/sci2c_arduino/"); - movefile(SCI2COutputPath +"/loop_arduino.cpp", SCI2COutputPath+"/arduino/sci2c_arduino/"); - movefile(SCI2COutputPath +"/loop_arduino.h", SCI2COutputPath+"/arduino/sci2c_arduino/"); -end - - - -// ------------------------------ -// --- Generate SCI2C Header. --- -// ------------------------------ -// FIXME : Give the user the ability to set this prefix -FunctionPrefix = "SCI2C"; -C_GenerateSCI2CHeader(SCI2COutputPath+"/includes/", FunctionPrefix); - -// ----------------- -// --- Epilogue. --- -// ----------------- -if (RunMode == 'All' | RunMode == 'Translate') - PrintStepInfo('Translation Successfully Completed!!!',FileInfo.GeneralReport,'both'); -elseif (RunMode == 'GenLibraryStructure') - PrintStepInfo('Library Structure Successfully Created!!!',FileInfo.GeneralReport,'both'); -end - - -endfunction - - -function r = copyBlasLapackLibs(FileInfo, SharedInfo) - r = %f; - if getos() == 'Windows' then - // create external-libs directory - EXTERNLIBSPATH = FileInfo.OutCCCodeDir + '/external-libs'; - if ~isdir(EXTERNLIBSPATH) then - mkdir(EXTERNLIBSPATH); - end - if ~isdir(EXTERNLIBSPATH) r = %f; - else - // copy blas & lapack librairies - copyfile(SCI + '/bin/blasplus.lib', EXTERNLIBSPATH); - copyfile(SCI + '/bin/lapack.lib', EXTERNLIBSPATH); - copyfile(SCI + '/bin/blasplus.dll', FileInfo.OutCCCodeDir); - copyfile(SCI + '/bin/lapack.dll', FileInfo.OutCCCodeDir); - // copy dependencies if MKL - if isfile(SCI + '/bin/libguide40.dll') then - copyfile(SCI + '/bin/libguide40.dll', FileInfo.OutCCCodeDir); - end - if isfile(SCI + '/bin/libiomp5md.dll') then - copyfile(SCI + '/bin/libiomp5md.dll', FileInfo.OutCCCodeDir); - end - r = %t; - end - end -endfunction +function runsci2c(UserScilabMainFile, UserSciFilesPaths, SCI2COutputPath, Runmode, BuildTool,Target,Board_name) +// function runsci2c(SCI2CInputPrmFile) +// ----------------------------------------------------------------- +// === hArtes/PoliBa/GAP SCI2C tool === +// === Authors: === +// === Raffaele Nutricato === +// === raffaele.nutricato@tiscali.it === +// === Alberto Morea === +// +// This is the main function of SCI2C. +// +// Input data: +// SCI2CInputPrmFile: path+filename of the input parameters file. +// +// Output data: +// --- +// +// Status: +// 11-Apr-2007 -- Raffaele Nutricato: Author. +// 11-Apr-2007 -- Alberto Morea: Tests. +// +// Copyright 2007 Raffaele Nutricato & Alberto Morea. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + +// ------------------- +// --- Soft reset. --- +// ------------------- +//mode(-1); +//clc; +// ----------------------- +// --- End Soft reset. --- +// ----------------------- + +// ------------------------- +// --- Input Parameters. --- +// ------------------------- +RunSci2CMainDir = pwd(); +disp(RunSci2CMainDir); +// ----------------------------- +// --- End input Parameters. --- +// ----------------------------- + +// ------------------------------- +// --- Perform Intializations. --- +// ------------------------------- +// --- Load SCI2C directories and files. --- +//cd(fullfile(RunSci2CMainDir,'ToolInitialization')); +//exec('INIT_SCI2CLoader.sce'); +//cd(RunSci2CMainDir); + +// --- Initialize the SCI2C tool directories and files. --- +[FileInfoDatFile,SharedInfoDatFile] = INIT_SCI2C(UserScilabMainFile, ... + UserSciFilesPaths, SCI2COutputPath, RunMode, Target,Board_name); + +// -- Load FileInfo and SharedInfo +load(SharedInfoDatFile,'SharedInfo'); +load(FileInfoDatFile,'FileInfo'); + +RunMode = SharedInfo.RunMode; + +// --- Generation of the library structure. --- +if (RunMode == 'GenLibraryStructure' | RunMode == 'All') + INIT_GenLibraries(FileInfoDatFile); +end + +// --- Load Library Info. --- +INIT_LoadLibraries(FileInfoDatFile); + +// ----------------------------------- +// --- End Perform Intializations. --- +// ----------------------------------- + +// ---------------------------------- +// --- Perform SCI2C Translation. --- +// ---------------------------------- +if (RunMode == 'All' | RunMode == 'Translate') + FlagContinueTranslation = 1; + while(FlagContinueTranslation == 1) + UpdateSCI2CInfo(FileInfoDatFile); + AST_GetASTFile(FileInfoDatFile); + AST2Ccode(FileInfoDatFile); + JoinDeclarAndCcode(FileInfoDatFile); + FlagContinueTranslation = ManageNextConversion(FileInfoDatFile); + end +end + +load(SharedInfoDatFile,'SharedInfo'); +// --------------------------- +// --- Copy library files. --- +// --------------------------- + +global SCI2CHOME +allSources = SCI2CHOME + "/" + getAllSources(SharedInfo, BuildTool); +allHeaders = SCI2CHOME + "/" +getAllHeaders(SharedInfo); +allInterfaces = SCI2CHOME + "/" + getAllInterfaces(SharedInfo); +if(~isempty(getAllLibraries(SharedInfo))) + allLibraries = SCI2CHOME + "/" + getAllLibraries(SharedInfo); +else + allLibraries = '' +end +//allLibraries = SCI2CHOME + "/" + getAllLibraries(Target); +if (Target == 'Arduino') + mkdir(SCI2COutputPath+"/arduino/"); + mkdir(SCI2COutputPath+"/arduino/sci2c_arduino"); +end +mkdir(SCI2COutputPath+"/src/"); +mkdir(SCI2COutputPath+"/src/c/"); +mkdir(SCI2COutputPath+"/includes/"); +mkdir(SCI2COutputPath+"/interfaces/"); +mkdir(SCI2COutputPath+"/libraries/"); + +// -- Sources +PrintStepInfo('Copying sources', FileInfo.GeneralReport,'both'); + +for i = 1:size(allSources, "*") + // DEBUG only + //disp("Copying "+allSources(i)+" in "+SCI2COutputPath+"/src/c/"); + //Copy ode related functions only if 'ode' function is used. + if(~isempty(strstr(allSources(i),'dode'))) + if(size(SharedInfo.Includelist) <> 0) + if((mtlb_strcmp(part(SharedInfo.Includelist(1),1:5),'odefn') == %T)) + if BuildTool == "nmake" + copyfile(allSources(i), SCI2COutputPath+"/arduino/sci2c_arduino/"); + else + copyfile(allSources(i), SCI2COutputPath+"/src/c/"); + end + end + end + else + if BuildTool == "nmake" + copyfile(allSources(i), SCI2COutputPath+"/arduino/sci2c_arduino/"); + else + copyfile(allSources(i), SCI2COutputPath+"/src/c/"); + end + end +end + +// -- Includes +PrintStepInfo('Copying headers', FileInfo.GeneralReport,'both'); +for i = 1:size(allHeaders, "*") + // DEBUG only + //disp("Copying "+allHeaders(i)+" in "+SCI2COutputPath+"/includes/"); + if BuildTool == "nmake" + copyfile(allHeaders(i), SCI2COutputPath+"/arduino/sci2c_arduino/"); + else + copyfile(allHeaders(i), SCI2COutputPath+"/includes/"); + end +end + +// -- Interfaces +PrintStepInfo('Copying interfaces', FileInfo.GeneralReport,'both'); +for i = 1:size(allInterfaces, "*") + // DEBUG only + //disp("Copying "+allInterfaces(i)+" in "+SCI2COutputPath+"/interfaces/"); + if BuildTool == "nmake" + copyfile(allInterfaces(i), SCI2COutputPath+"/arduino/sci2c_arduino/"); + else + copyfile(allInterfaces(i), SCI2COutputPath+"/interfaces/"); + end +end + +// -- Libraries +if(~isempty(allLibraries)) + PrintStepInfo('Copying libraries', FileInfo.GeneralReport,'both'); + for i = 1:size(allLibraries, "*") + // DEBUG only + //disp("Copying "+allLibraries(i)+" in "+SCI2COutputPath+"/libraries/"); + copyfile(allLibraries(i), SCI2COutputPath+"/libraries/"); + end +end + +//Copy folder containing opencv include files in Includes folder +//if((Target == 'RPi') & (SharedInfo.OpenCVUsed == %T)) +// copyfile(SCI2CHOME + "/" +'thirdparty/raspberrypi/includes/opencv2/',SCI2COutputPath+"/includes/opencv2") +//end + +// -------------------------- +// --- Generate Makefile. --- +// -------------------------- +//If output format is chosen as 'Arduino', then copy makefile for arduino from +//default folder, else generate makefile for standalone c code + +if (Target == 'Arduino') + + GenerateSetupFunction(FileInfo); + //Copy arduino makefile + arduinoFiles = SCI2CHOME + "/" + getArduinoFiles(); + PrintStepInfo('Copying arduino files', FileInfo.GeneralReport,'both'); + copyfile(arduinoFiles(1), SCI2COutputPath); + for i = 2:size(arduinoFiles, "*") + // DEBUG only + //disp("Copying "+arduinoFiles(i)+" in "+SCI2COutputPath+"/arduino/sci2carduino"); + copyfile(arduinoFiles(i), SCI2COutputPath+"/arduino/sci2c_arduino/"); + end + C_GenerateMkfle_arduino(FileInfo,SharedInfo); + movefile(FileInfo.MakefileFilename, SCI2COutputPath+"/arduino/sci2c_arduino/"); +elseif (Target == 'AVR') + AVRFile = SCI2CHOME + "/" + "src/c/hardware/avr/default_files/Makefile"; + copyfile(AVRFile, SCI2COutputPath); +else + + if BuildTool == "make" + C_GenerateMakefile(FileInfo,SharedInfo); + copyBlasLapackLibs(FileInfo,SharedInfo); //Previously .dll files and blas,lapack library not creating for cygwin by additing this works fine + end + if BuildTool == "nmake" + //copyBlasLapackLibs(FileInfo,SharedInfo); + C_GenerateMakefile_msvc(FileInfo,SharedInfo); + end +end +if BuildTool == "nmake" & Target == 'Arduino' + movefile(SCI2COutputPath +"/setup_arduino.h", SCI2COutputPath+"/arduino/sci2c_arduino/"); + movefile(SCI2COutputPath +"/setup_arduino.cpp", SCI2COutputPath+"/arduino/sci2c_arduino/"); + movefile(SCI2COutputPath +"/loop_arduino.cpp", SCI2COutputPath+"/arduino/sci2c_arduino/"); + movefile(SCI2COutputPath +"/loop_arduino.h", SCI2COutputPath+"/arduino/sci2c_arduino/"); +end + + + +// ------------------------------ +// --- Generate SCI2C Header. --- +// ------------------------------ +// FIXME : Give the user the ability to set this prefix +FunctionPrefix = "SCI2C"; +C_GenerateSCI2CHeader(SCI2COutputPath+"/includes/", FunctionPrefix); + +// ----------------- +// --- Epilogue. --- +// ----------------- +if (RunMode == 'All' | RunMode == 'Translate') + PrintStepInfo('Translation Successfully Completed!!!',FileInfo.GeneralReport,'both'); +elseif (RunMode == 'GenLibraryStructure') + PrintStepInfo('Library Structure Successfully Created!!!',FileInfo.GeneralReport,'both'); +end + + +endfunction + + +function r = copyBlasLapackLibs(FileInfo, SharedInfo) + r = %f; + if getos() == 'Windows' then + // create external-libs directory + EXTERNLIBSPATH = FileInfo.OutCCCodeDir + '/external-libs'; + if ~isdir(EXTERNLIBSPATH) then + mkdir(EXTERNLIBSPATH); + end + if ~isdir(EXTERNLIBSPATH) r = %f; + else + // copy blas & lapack librairies + copyfile(SCI + '/bin/blasplus.lib', EXTERNLIBSPATH); + copyfile(SCI + '/bin/lapack.lib', EXTERNLIBSPATH); + copyfile(SCI + '/bin/blasplus.dll', FileInfo.OutCCCodeDir); + copyfile(SCI + '/bin/lapack.dll', FileInfo.OutCCCodeDir); + // copy dependencies if MKL + if isfile(SCI + '/bin/libguide40.dll') then + copyfile(SCI + '/bin/libguide40.dll', FileInfo.OutCCCodeDir); + end + if isfile(SCI + '/bin/libiomp5md.dll') then + copyfile(SCI + '/bin/libiomp5md.dll', FileInfo.OutCCCodeDir); + end + r = %t; + end + end +endfunction diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionAbs.sci b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionAbs.sci index 8bbbf644..8d0b9a8a 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionAbs.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionAbs.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() disp(abs(7)) disp(abs(-3)) diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionConj.sci b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionConj.sci index 3cceb0d1..d23b77c9 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionConj.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionConj.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= FLOAT -function mainfunction() +function mainfunction() s1=[1+%i*3 1-%i*7;-1+5*%i 1-%i*7;-1+5*%i -1-6*%i] s2=conj(s1); @@ -8,7 +8,7 @@ disp(s2); s3=[1 1;-1+5*%i 1-%i*7;-1+5*%i -1-6*%i] s4=conj(s3); -disp(s4); +disp(s4); s5=1+%i*3 s6=conj(s5); @@ -17,11 +17,11 @@ disp(s6); s7=1-%i*3 s8=conj(s7); -disp(s8); +disp(s8); s9=[1+%i*3 1-%i*7;-1 7;-1+5*%i -1-6*%i] s10=conj(s9); -disp(s10); +disp(s10); s11=[1+%i*3 1;-1+5*%i 1;-1 -1-6*%i] s12=conj(s11); diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionFind.sci b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionFind.sci index 2a093e9c..329af47f 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionFind.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionFind.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() a = 1 disp(find(a==0)) diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionFind2d.sci b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionFind2d.sci index 2857b80b..bf7ed22d 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionFind2d.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionFind2d.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() a = 1 [u1,v1]=find(a==0); diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionIsEmpty.sci b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionIsEmpty.sci index 9c975ad7..fa6c77f4 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionIsEmpty.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionIsEmpty.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test isempty diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionIsNan.sci b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionIsNan.sci index 9d4eac4f..37e1ac10 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionIsNan.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionIsNan.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test isnan diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionLength.sci b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionLength.sci index 7509073c..e6e5b99b 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionLength.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionLength.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test length diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionSign.sci b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionSign.sci index 6a1ce45c..f0dff288 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionSign.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionSign.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test sign diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionSize.sci b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionSize.sci index 067365db..888a0c3c 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionSize.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionSize.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test sign diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionType.sci b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionType.sci index db837346..a92d6099 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionType.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/auxiliaryFunctions/mainfunctionType.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test type diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionACos.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionACos.sci index e0225554..3044e026 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionACos.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionACos.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test acos diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionACosh.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionACosh.sci index 08739198..b0a83a9c 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionACosh.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionACosh.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test acos diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionASin.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionASin.sci index 83fdef40..5dcb9e6a 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionASin.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionASin.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= FLOAT -function mainfunction() +function mainfunction() //test asin diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionASinh.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionASinh.sci index 967341ef..52c6245c 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionASinh.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionASinh.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test asinh diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATan.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATan.sci index ae5e83db..91cfba6b 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATan.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATan.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test atan diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATan2.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATan2.sci index fa8d0a16..801ce585 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATan2.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATan2.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test atan2 diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATanh.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATanh.sci index d81af8d7..a23deedb 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATanh.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionATanh.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test atanh diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCeil_Fix_Floor_Int_Round.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCeil_Fix_Floor_Int_Round.sci index a5930c21..96ce7f6e 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCeil_Fix_Floor_Int_Round.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCeil_Fix_Floor_Int_Round.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // test ceil/fix/floor/int/round diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCos.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCos.sci index d86406b1..f0a4a15a 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCos.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCos.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test cos diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCosh.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCosh.sci index 915396ff..268ced3d 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCosh.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionCosh.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test cosh diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionExp_Expm.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionExp_Expm.sci index d56328d1..957f7b29 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionExp_Expm.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionExp_Expm.sci @@ -1,5 +1,5 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test exp and expm diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog.sci index 925182cb..d3e52e2b 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test log diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog10.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog10.sci index c8b48552..8af14d28 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog10.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog10.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test log10 diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog1p.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog1p.sci index 3c929e80..74831ae7 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog1p.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionLog1p.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test log1p diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionPow0.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionPow0.sci index 0a19a9b9..d8a1fc88 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionPow0.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionPow0.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= FLOAT -function mainfunction() +function mainfunction() //test pow0 diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionPow_MatrixPow.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionPow_MatrixPow.sci index 3706353b..8f0e9f5f 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionPow_MatrixPow.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionPow_MatrixPow.sci @@ -1,4 +1,4 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE function mainfunction() diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSin.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSin.sci index db01d7bd..817e219a 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSin.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSin.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test sin diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSinh.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSinh.sci index c16af3e7..6e2380ab 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSinh.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSinh.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test sinh diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSqrt.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSqrt.sci index ba64d189..a7d91d2d 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSqrt.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionSqrt.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test sqrt diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionTan.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionTan.sci index 67572f08..bfed76d2 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionTan.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionTan.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test tan diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionTanh.sci b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionTanh.sci index b282d6d9..95a21cb3 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionTanh.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/elementary Functions/mainfunctionTanh.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test tanh diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/implicitList/mainfunctionImplicitList.sci b/src/Scilab2C/SCI2CTests/Mes_tests/implicitList/mainfunctionImplicitList.sci index 8d7c6912..db618253 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/implicitList/mainfunctionImplicitList.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/implicitList/mainfunctionImplicitList.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test OpColon diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpIns.sci b/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpIns.sci index 37c7375e..dc7d68f5 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpIns.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpIns.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // test OpIns diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogEq.sci b/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogEq.sci index 86ab7251..4d57b0c7 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogEq.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogEq.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // test OpEqual diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogNe.sci b/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogNe.sci index d1212dac..714a33f7 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogNe.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogNe.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // test OpEqual diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogNot.sci b/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogNot.sci index 6f17a306..0c84325b 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogNot.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/mainfunctionOpLogNot.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // test OpLogNot diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionChol.sci b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionChol.sci index 46f8c409..732ed740 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionChol.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionChol.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test chol diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionDet.sci b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionDet.sci index fbd59649..c4300e24 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionDet.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionDet.sci @@ -1,5 +1,5 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test det diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionEye.sci b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionEye.sci index b077c9f4..b52ded74 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionEye.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionEye.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test eye diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionInversion.sci b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionInversion.sci index 71645901..606fcdcf 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionInversion.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionInversion.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test inversion diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionOnes.sci b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionOnes.sci index 15b57b61..f62b7929 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionOnes.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionOnes.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test ones diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionOpApex_OpDotApex.sci b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionOpApex_OpDotApex.sci index 3f3822ea..5e803fb3 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionOpApex_OpDotApex.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionOpApex_OpDotApex.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test OpApex(transpose&conj) & OpDotApex(transpose) diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionSpec_Spec2.sci b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionSpec_Spec2.sci index 36b63d7f..c829b50c 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionSpec_Spec2.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionSpec_Spec2.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test spec diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionZeros.sci b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionZeros.sci index 7b4b0f9d..7d00286d 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionZeros.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/matrixOperations/mainfunctionZeros.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test zeros diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpMinus.sci b/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpMinus.sci index 4445143b..bc11c8c4 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpMinus.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpMinus.sci @@ -1,5 +1,5 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test soustraction diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpPlus.sci b/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpPlus.sci index 3cef1468..0118d2dc 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpPlus.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpPlus.sci @@ -1,5 +1,5 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test addition diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpSlash_OpDotSlash.sci b/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpSlash_OpDotSlash.sci index 5523a19f..894c7b90 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpSlash_OpDotSlash.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/operations/mainfunctionOpSlash_OpDotSlash.sci @@ -1,5 +1,5 @@ //SCI2C: DEFAULT_PRECISION= FLOAT -function mainfunction() +function mainfunction() //test division diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionConvol.sci b/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionConvol.sci index 41c38603..f7edf5c5 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionConvol.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionConvol.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test convol diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionFft.sci b/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionFft.sci index e9d11acd..0b96cdd7 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionFft.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionFft.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // test fftshift diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionFftShift.sci b/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionFftShift.sci index b562894f..2e5f84b6 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionFftShift.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionFftShift.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // test fftshift diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionIfft.sci b/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionIfft.sci index 3da3e39b..0e0fc0f0 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionIfft.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionIfft.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test ifft diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionLev.sci b/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionLev.sci index 274567db..15a8cbce 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionLev.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/signalProcessing/mainfunctionLev.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test lev diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionMean.sci b/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionMean.sci index ab4b0bc5..dbd5f223 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionMean.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionMean.sci @@ -1,7 +1,7 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test mean diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionSum.sci b/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionSum.sci index 7302398e..d3595196 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionSum.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionSum.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test sum diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionVariance.sci b/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionVariance.sci index 716d61e3..901c79b1 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionVariance.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/statistic Functions/mainfunctionVariance.sci @@ -1,6 +1,6 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() //test variance diff --git a/src/Scilab2C/SCI2CTests/Mes_tests/type/mainfunctionReal_Imag.sci b/src/Scilab2C/SCI2CTests/Mes_tests/type/mainfunctionReal_Imag.sci index 02b5c3a7..9513e48c 100644 --- a/src/Scilab2C/SCI2CTests/Mes_tests/type/mainfunctionReal_Imag.sci +++ b/src/Scilab2C/SCI2CTests/Mes_tests/type/mainfunctionReal_Imag.sci @@ -1,7 +1,7 @@ //SCI2C: DEFAULT_PRECISION= DOUBLE function mainfunction() - + disp(real(4)); disp(imag(4)); diff --git a/src/Scilab2C/SCI2CTests/test000_TrigonIdentity/SCI2CInputParameters.sce b/src/Scilab2C/SCI2CTests/test000_TrigonIdentity/SCI2CInputParameters.sce index 84590e7b..3bfb97cc 100644 --- a/src/Scilab2C/SCI2CTests/test000_TrigonIdentity/SCI2CInputParameters.sce +++ b/src/Scilab2C/SCI2CTests/test000_TrigonIdentity/SCI2CInputParameters.sce @@ -1,89 +1,89 @@ -// ----------------------------------------------------------------- -// === hArtes/PoliBa/GAP SCI2C tool === -// === Authors: === -// === Raffaele Nutricato === -// === raffaele.nutricato@tiscali.it === -// === Alberto Morea === -// === === -// === *************** === -// === USER PARAMETERS === -// === *************** === -// === === -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------------------ -// --- Specify Paths of User Scilab code. --- -// ------------------------------------------ -// UserSciCodeMainDir = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\SCI2CTests\test999_WorkingDir'; -UserSciCodeMainDir = '../SCI2CTests/test999_WorkingDir'; - -// --- Path + filename of the .sci main file of the code to be translated. --- -// It is the entry point. -UserScilabMainFile = fullfile(UserSciCodeMainDir,'scilabcode\mainfunction.sci'); - -// --- List of the paths containing the .sci files written by the user. --- -UserSciFilesPaths = ... - [... - fullfile(UserSciCodeMainDir,'scilabcode');... - ]; - -// -------------------------- -// --- End Specify paths. --- -// -------------------------- - - -// ---------------------------- -// --- Select the run mode. --- -// ---------------------------- -//RunMode = 'GenLibraryStructure'; -//RunMode = 'Translate'; -RunMode = 'All'; - -// --- Select one of the following options. --- - -// 'GenLibraryStructure'; -// Generates the library structure and exits. It is very -// useful when the user wants to manually change the files stored in that structure -// before running the translation. 'GenLibraryStructure' option forces SCI2C to remove -// the already existing WorkingDir and OutCCCodeDir directories. - -// 'Translate'; -// Performs the translation without generating the library structure. It means that the library -// structure must be already existing. This is useful when the user doesn't want to spend time -// to generate again that structure or when he wants to force the SCI2C tool to access to -// a manually-changed library structure. 'Translate' option forces SCI2C to don't remove -// the already existing WorkingDir. Only OutCCCodeDir directory will be removed. - -// 'All'; -// Performs all the actions listed above. - -// -------------------------------- -// --- End Select the run mode. --- -// -------------------------------- - - -// ---------------------------- -// --- Translation Options. --- -// ---------------------------- -// --- Enable (1) / Disable (0) copy of Scilab code into C code. --- -// If 1 the Scilab code will be copied into the C code in order to show -// how each Scilab code line has been translated into C code. -CopySciCodeIntoCCode = 1; - -// --- Select the path style for the C code. --- -// It can be: -// windows -// unix -// cygwin -CCompilerPathStyle = 'cygwin'; - -// --- Path + File name of the main SCI2C library header file. -// Sci2CLibMainHeaderFName = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\Scilab2C\CFiles\sci2cincludes\sci2clib.h'; -Sci2CLibMainHeaderFName = '../../../Scilab2C/CFiles/sci2cincludes/sci2clib.h'; -// -------------------------------- -// --- End Translation Options. --- -// -------------------------------- +// ----------------------------------------------------------------- +// === hArtes/PoliBa/GAP SCI2C tool === +// === Authors: === +// === Raffaele Nutricato === +// === raffaele.nutricato@tiscali.it === +// === Alberto Morea === +// === === +// === *************** === +// === USER PARAMETERS === +// === *************** === +// === === +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------------------ +// --- Specify Paths of User Scilab code. --- +// ------------------------------------------ +// UserSciCodeMainDir = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\SCI2CTests\test999_WorkingDir'; +UserSciCodeMainDir = '../SCI2CTests/test999_WorkingDir'; + +// --- Path + filename of the .sci main file of the code to be translated. --- +// It is the entry point. +UserScilabMainFile = fullfile(UserSciCodeMainDir,'scilabcode\mainfunction.sci'); + +// --- List of the paths containing the .sci files written by the user. --- +UserSciFilesPaths = ... + [... + fullfile(UserSciCodeMainDir,'scilabcode');... + ]; + +// -------------------------- +// --- End Specify paths. --- +// -------------------------- + + +// ---------------------------- +// --- Select the run mode. --- +// ---------------------------- +//RunMode = 'GenLibraryStructure'; +//RunMode = 'Translate'; +RunMode = 'All'; + +// --- Select one of the following options. --- + +// 'GenLibraryStructure'; +// Generates the library structure and exits. It is very +// useful when the user wants to manually change the files stored in that structure +// before running the translation. 'GenLibraryStructure' option forces SCI2C to remove +// the already existing WorkingDir and OutCCCodeDir directories. + +// 'Translate'; +// Performs the translation without generating the library structure. It means that the library +// structure must be already existing. This is useful when the user doesn't want to spend time +// to generate again that structure or when he wants to force the SCI2C tool to access to +// a manually-changed library structure. 'Translate' option forces SCI2C to don't remove +// the already existing WorkingDir. Only OutCCCodeDir directory will be removed. + +// 'All'; +// Performs all the actions listed above. + +// -------------------------------- +// --- End Select the run mode. --- +// -------------------------------- + + +// ---------------------------- +// --- Translation Options. --- +// ---------------------------- +// --- Enable (1) / Disable (0) copy of Scilab code into C code. --- +// If 1 the Scilab code will be copied into the C code in order to show +// how each Scilab code line has been translated into C code. +CopySciCodeIntoCCode = 1; + +// --- Select the path style for the C code. --- +// It can be: +// windows +// unix +// cygwin +CCompilerPathStyle = 'cygwin'; + +// --- Path + File name of the main SCI2C library header file. +// Sci2CLibMainHeaderFName = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\Scilab2C\CFiles\sci2cincludes\sci2clib.h'; +Sci2CLibMainHeaderFName = '../../../Scilab2C/CFiles/sci2cincludes/sci2clib.h'; +// -------------------------------- +// --- End Translation Options. --- +// -------------------------------- diff --git a/src/Scilab2C/SCI2CTests/test000_TrigonIdentity/scilabcode/mainfunction.sci b/src/Scilab2C/SCI2CTests/test000_TrigonIdentity/scilabcode/mainfunction.sci index e39f7648..842a517e 100644 --- a/src/Scilab2C/SCI2CTests/test000_TrigonIdentity/scilabcode/mainfunction.sci +++ b/src/Scilab2C/SCI2CTests/test000_TrigonIdentity/scilabcode/mainfunction.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // ------------------------------ // --- Simple Scalar Addition --- @@ -27,4 +27,4 @@ w = cos(sin(cos(x*3)*2).* x+ones(3,6).*cos(x-sin(y*2))); distxw = sqrt(x.^2 + w.^2); disp(distxw); endfunction - \ No newline at end of file + diff --git a/src/Scilab2C/SCI2CTests/test001_LinearRegression/SCI2CInputParameters.sce b/src/Scilab2C/SCI2CTests/test001_LinearRegression/SCI2CInputParameters.sce index 84590e7b..3bfb97cc 100644 --- a/src/Scilab2C/SCI2CTests/test001_LinearRegression/SCI2CInputParameters.sce +++ b/src/Scilab2C/SCI2CTests/test001_LinearRegression/SCI2CInputParameters.sce @@ -1,89 +1,89 @@ -// ----------------------------------------------------------------- -// === hArtes/PoliBa/GAP SCI2C tool === -// === Authors: === -// === Raffaele Nutricato === -// === raffaele.nutricato@tiscali.it === -// === Alberto Morea === -// === === -// === *************** === -// === USER PARAMETERS === -// === *************** === -// === === -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------------------ -// --- Specify Paths of User Scilab code. --- -// ------------------------------------------ -// UserSciCodeMainDir = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\SCI2CTests\test999_WorkingDir'; -UserSciCodeMainDir = '../SCI2CTests/test999_WorkingDir'; - -// --- Path + filename of the .sci main file of the code to be translated. --- -// It is the entry point. -UserScilabMainFile = fullfile(UserSciCodeMainDir,'scilabcode\mainfunction.sci'); - -// --- List of the paths containing the .sci files written by the user. --- -UserSciFilesPaths = ... - [... - fullfile(UserSciCodeMainDir,'scilabcode');... - ]; - -// -------------------------- -// --- End Specify paths. --- -// -------------------------- - - -// ---------------------------- -// --- Select the run mode. --- -// ---------------------------- -//RunMode = 'GenLibraryStructure'; -//RunMode = 'Translate'; -RunMode = 'All'; - -// --- Select one of the following options. --- - -// 'GenLibraryStructure'; -// Generates the library structure and exits. It is very -// useful when the user wants to manually change the files stored in that structure -// before running the translation. 'GenLibraryStructure' option forces SCI2C to remove -// the already existing WorkingDir and OutCCCodeDir directories. - -// 'Translate'; -// Performs the translation without generating the library structure. It means that the library -// structure must be already existing. This is useful when the user doesn't want to spend time -// to generate again that structure or when he wants to force the SCI2C tool to access to -// a manually-changed library structure. 'Translate' option forces SCI2C to don't remove -// the already existing WorkingDir. Only OutCCCodeDir directory will be removed. - -// 'All'; -// Performs all the actions listed above. - -// -------------------------------- -// --- End Select the run mode. --- -// -------------------------------- - - -// ---------------------------- -// --- Translation Options. --- -// ---------------------------- -// --- Enable (1) / Disable (0) copy of Scilab code into C code. --- -// If 1 the Scilab code will be copied into the C code in order to show -// how each Scilab code line has been translated into C code. -CopySciCodeIntoCCode = 1; - -// --- Select the path style for the C code. --- -// It can be: -// windows -// unix -// cygwin -CCompilerPathStyle = 'cygwin'; - -// --- Path + File name of the main SCI2C library header file. -// Sci2CLibMainHeaderFName = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\Scilab2C\CFiles\sci2cincludes\sci2clib.h'; -Sci2CLibMainHeaderFName = '../../../Scilab2C/CFiles/sci2cincludes/sci2clib.h'; -// -------------------------------- -// --- End Translation Options. --- -// -------------------------------- +// ----------------------------------------------------------------- +// === hArtes/PoliBa/GAP SCI2C tool === +// === Authors: === +// === Raffaele Nutricato === +// === raffaele.nutricato@tiscali.it === +// === Alberto Morea === +// === === +// === *************** === +// === USER PARAMETERS === +// === *************** === +// === === +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------------------ +// --- Specify Paths of User Scilab code. --- +// ------------------------------------------ +// UserSciCodeMainDir = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\SCI2CTests\test999_WorkingDir'; +UserSciCodeMainDir = '../SCI2CTests/test999_WorkingDir'; + +// --- Path + filename of the .sci main file of the code to be translated. --- +// It is the entry point. +UserScilabMainFile = fullfile(UserSciCodeMainDir,'scilabcode\mainfunction.sci'); + +// --- List of the paths containing the .sci files written by the user. --- +UserSciFilesPaths = ... + [... + fullfile(UserSciCodeMainDir,'scilabcode');... + ]; + +// -------------------------- +// --- End Specify paths. --- +// -------------------------- + + +// ---------------------------- +// --- Select the run mode. --- +// ---------------------------- +//RunMode = 'GenLibraryStructure'; +//RunMode = 'Translate'; +RunMode = 'All'; + +// --- Select one of the following options. --- + +// 'GenLibraryStructure'; +// Generates the library structure and exits. It is very +// useful when the user wants to manually change the files stored in that structure +// before running the translation. 'GenLibraryStructure' option forces SCI2C to remove +// the already existing WorkingDir and OutCCCodeDir directories. + +// 'Translate'; +// Performs the translation without generating the library structure. It means that the library +// structure must be already existing. This is useful when the user doesn't want to spend time +// to generate again that structure or when he wants to force the SCI2C tool to access to +// a manually-changed library structure. 'Translate' option forces SCI2C to don't remove +// the already existing WorkingDir. Only OutCCCodeDir directory will be removed. + +// 'All'; +// Performs all the actions listed above. + +// -------------------------------- +// --- End Select the run mode. --- +// -------------------------------- + + +// ---------------------------- +// --- Translation Options. --- +// ---------------------------- +// --- Enable (1) / Disable (0) copy of Scilab code into C code. --- +// If 1 the Scilab code will be copied into the C code in order to show +// how each Scilab code line has been translated into C code. +CopySciCodeIntoCCode = 1; + +// --- Select the path style for the C code. --- +// It can be: +// windows +// unix +// cygwin +CCompilerPathStyle = 'cygwin'; + +// --- Path + File name of the main SCI2C library header file. +// Sci2CLibMainHeaderFName = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\Scilab2C\CFiles\sci2cincludes\sci2clib.h'; +Sci2CLibMainHeaderFName = '../../../Scilab2C/CFiles/sci2cincludes/sci2clib.h'; +// -------------------------------- +// --- End Translation Options. --- +// -------------------------------- diff --git a/src/Scilab2C/SCI2CTests/test001_LinearRegression/scilabcode/mainfunction.sci b/src/Scilab2C/SCI2CTests/test001_LinearRegression/scilabcode/mainfunction.sci index a29a1c9e..390b7b66 100644 --- a/src/Scilab2C/SCI2CTests/test001_LinearRegression/scilabcode/mainfunction.sci +++ b/src/Scilab2C/SCI2CTests/test001_LinearRegression/scilabcode/mainfunction.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // Knowing that // (1) P * (V^gamma) = C @@ -28,8 +28,8 @@ a = (sum(y)*sum(x.^2)-sum(x)*sum(x.*y))./(length(x)*sum(x.^2)-sum(x).*sum(x)); b = (length(x)*sum(x.*y)-sum(x)*sum(y))./(length(x)*sum(x.^2)-sum(x).*sum(x)); // Other way to compute a and b -beq = sum((x-mean(x)).*(y-mean(y)))./sum((x-mean(x)).^2); -aeq = mean(y)-mean(x)*beq; +beq = sum((x-mean(x)).*(y-mean(y)))./sum((x-mean(x)).^2); +aeq = mean(y)-mean(x)*beq; C = 10 .^a; gamma = -b; diff --git a/src/Scilab2C/SCI2CTests/test999_WorkingDir/SCI2CInputParameters.sce b/src/Scilab2C/SCI2CTests/test999_WorkingDir/SCI2CInputParameters.sce index 52d8c7d5..8d733b65 100644 --- a/src/Scilab2C/SCI2CTests/test999_WorkingDir/SCI2CInputParameters.sce +++ b/src/Scilab2C/SCI2CTests/test999_WorkingDir/SCI2CInputParameters.sce @@ -1,89 +1,89 @@ -// ----------------------------------------------------------------- -// === hArtes/PoliBa/GAP SCI2C tool === -// === Authors: === -// === Raffaele Nutricato === -// === raffaele.nutricato@tiscali.it === -// === Alberto Morea === -// === === -// === *************** === -// === USER PARAMETERS === -// === *************** === -// === === -// -// Copyright 2007 Raffaele Nutricato. -// Contact: raffaele.nutricato@tiscali.it -// ----------------------------------------------------------------- - - -// ------------------------------------------ -// --- Specify Paths of User Scilab code. --- -// ------------------------------------------ -// UserSciCodeMainDir = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\SCI2CTests\test999_WorkingDir'; -UserSciCodeMainDir = '../SCI2CTests/test999_WorkingDir'; - -// --- Path + filename of the .sci main file of the code to be translated. --- -// It is the entry point. -UserScilabMainFile = fullfile(UserSciCodeMainDir,'scilabcode/mainfunction.sci'); - -// --- List of the paths containing the .sci files written by the user. --- -UserSciFilesPaths = ... - [... - fullfile(UserSciCodeMainDir,'scilabcode');... - ]; - -// -------------------------- -// --- End Specify paths. --- -// -------------------------- - - -// ---------------------------- -// --- Select the run mode. --- -// ---------------------------- -//RunMode = 'GenLibraryStructure'; -//RunMode = 'Translate'; -RunMode = 'All'; - -// --- Select one of the following options. --- - -// 'GenLibraryStructure'; -// Generates the library structure and exits. It is very -// useful when the user wants to manually change the files stored in that structure -// before running the translation. 'GenLibraryStructure' option forces SCI2C to remove -// the already existing WorkingDir and OutCCCodeDir directories. - -// 'Translate'; -// Performs the translation without generating the library structure. It means that the library -// structure must be already existing. This is useful when the user doesn't want to spend time -// to generate again that structure or when he wants to force the SCI2C tool to access to -// a manually-changed library structure. 'Translate' option forces SCI2C to don't remove -// the already existing WorkingDir. Only OutCCCodeDir directory will be removed. - -// 'All'; -// Performs all the actions listed above. - -// -------------------------------- -// --- End Select the run mode. --- -// -------------------------------- - - -// ---------------------------- -// --- Translation Options. --- -// ---------------------------- -// --- Enable (1) / Disable (0) copy of Scilab code into C code. --- -// If 1 the Scilab code will be copied into the C code in order to show -// how each Scilab code line has been translated into C code. -CopySciCodeIntoCCode = 1; - -// --- Select the path style for the C code. --- -// It can be: -// windows -// unix -// cygwin -CCompilerPathStyle = 'unix'; - -// --- Path + File name of the main SCI2C library header file. -// Sci2CLibMainHeaderFName = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\Scilab2C\CFiles\sci2cincludes\sci2clib.h'; -Sci2CLibMainHeaderFName = '../../../Scilab2C/CFiles/sci2cincludes/sci2clib.h'; -// -------------------------------- -// --- End Translation Options. --- -// -------------------------------- +// ----------------------------------------------------------------- +// === hArtes/PoliBa/GAP SCI2C tool === +// === Authors: === +// === Raffaele Nutricato === +// === raffaele.nutricato@tiscali.it === +// === Alberto Morea === +// === === +// === *************** === +// === USER PARAMETERS === +// === *************** === +// === === +// +// Copyright 2007 Raffaele Nutricato. +// Contact: raffaele.nutricato@tiscali.it +// ----------------------------------------------------------------- + + +// ------------------------------------------ +// --- Specify Paths of User Scilab code. --- +// ------------------------------------------ +// UserSciCodeMainDir = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\SCI2CTests\test999_WorkingDir'; +UserSciCodeMainDir = '../SCI2CTests/test999_WorkingDir'; + +// --- Path + filename of the .sci main file of the code to be translated. --- +// It is the entry point. +UserScilabMainFile = fullfile(UserSciCodeMainDir,'scilabcode/mainfunction.sci'); + +// --- List of the paths containing the .sci files written by the user. --- +UserSciFilesPaths = ... + [... + fullfile(UserSciCodeMainDir,'scilabcode');... + ]; + +// -------------------------- +// --- End Specify paths. --- +// -------------------------- + + +// ---------------------------- +// --- Select the run mode. --- +// ---------------------------- +//RunMode = 'GenLibraryStructure'; +//RunMode = 'Translate'; +RunMode = 'All'; + +// --- Select one of the following options. --- + +// 'GenLibraryStructure'; +// Generates the library structure and exits. It is very +// useful when the user wants to manually change the files stored in that structure +// before running the translation. 'GenLibraryStructure' option forces SCI2C to remove +// the already existing WorkingDir and OutCCCodeDir directories. + +// 'Translate'; +// Performs the translation without generating the library structure. It means that the library +// structure must be already existing. This is useful when the user doesn't want to spend time +// to generate again that structure or when he wants to force the SCI2C tool to access to +// a manually-changed library structure. 'Translate' option forces SCI2C to don't remove +// the already existing WorkingDir. Only OutCCCodeDir directory will be removed. + +// 'All'; +// Performs all the actions listed above. + +// -------------------------------- +// --- End Select the run mode. --- +// -------------------------------- + + +// ---------------------------- +// --- Translation Options. --- +// ---------------------------- +// --- Enable (1) / Disable (0) copy of Scilab code into C code. --- +// If 1 the Scilab code will be copied into the C code in order to show +// how each Scilab code line has been translated into C code. +CopySciCodeIntoCCode = 1; + +// --- Select the path style for the C code. --- +// It can be: +// windows +// unix +// cygwin +CCompilerPathStyle = 'unix'; + +// --- Path + File name of the main SCI2C library header file. +// Sci2CLibMainHeaderFName = 'D:\Nutricato\OpenProjects\FP6_hArtes\WP2_SCI2C\Software\svnhartes\src\Scilab2C\Scilab2C\CFiles\sci2cincludes\sci2clib.h'; +Sci2CLibMainHeaderFName = '../../../Scilab2C/CFiles/sci2cincludes/sci2clib.h'; +// -------------------------------- +// --- End Translation Options. --- +// -------------------------------- diff --git a/src/Scilab2C/SCI2CTests/test999_WorkingDir/scilabcode/mainfunction.sci b/src/Scilab2C/SCI2CTests/test999_WorkingDir/scilabcode/mainfunction.sci index e39f7648..842a517e 100644 --- a/src/Scilab2C/SCI2CTests/test999_WorkingDir/scilabcode/mainfunction.sci +++ b/src/Scilab2C/SCI2CTests/test999_WorkingDir/scilabcode/mainfunction.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // ------------------------------ // --- Simple Scalar Addition --- @@ -27,4 +27,4 @@ w = cos(sin(cos(x*3)*2).* x+ones(3,6).*cos(x-sin(y*2))); distxw = sqrt(x.^2 + w.^2); disp(distxw); endfunction - \ No newline at end of file + diff --git a/src/c/auxiliaryFunctions/includes/dynlib_auxiliaryfunctions.h b/src/c/auxiliaryFunctions/includes/dynlib_auxiliaryfunctions.h index 09b1bea8..a2e741a1 100644 --- a/src/c/auxiliaryFunctions/includes/dynlib_auxiliaryfunctions.h +++ b/src/c/auxiliaryFunctions/includes/dynlib_auxiliaryfunctions.h @@ -1,26 +1,26 @@ -/* -* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -* Copyright (C) 2009 - DIGITEO - Allan CORNET -* -* 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 -* -*/ - -#ifndef __DYNLIB_AUXILIARYFUNCTIONS_H__ -#define __DYNLIB_AUXILIARYFUNCTIONS_H__ - -#if defined(_MSC_VER) && defined(_USRDLL) - #if AUXILIARYFUNCTIONS_EXPORTS - #define EXTERN_AUXFUNCT __declspec (dllexport) - #else - #define EXTERN_AUXFUNCT __declspec (dllimport) - #endif -#else - #define EXTERN_AUXFUNCT -#endif - -#endif /* __DYNLIB_AUXILIARYFUNCTIONS_H__ */ +/* +* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +* Copyright (C) 2009 - DIGITEO - Allan CORNET +* +* 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 +* +*/ + +#ifndef __DYNLIB_AUXILIARYFUNCTIONS_H__ +#define __DYNLIB_AUXILIARYFUNCTIONS_H__ + +#if defined(_MSC_VER) && defined(_USRDLL) + #if AUXILIARYFUNCTIONS_EXPORTS + #define EXTERN_AUXFUNCT __declspec (dllexport) + #else + #define EXTERN_AUXFUNCT __declspec (dllimport) + #endif +#else + #define EXTERN_AUXFUNCT +#endif + +#endif /* __DYNLIB_AUXILIARYFUNCTIONS_H__ */ diff --git a/src/c/auxiliaryFunctions/interfaces/int_length.h b/src/c/auxiliaryFunctions/interfaces/int_length.h index fe84a92a..130601e3 100644 --- a/src/c/auxiliaryFunctions/interfaces/int_length.h +++ b/src/c/auxiliaryFunctions/interfaces/int_length.h @@ -32,39 +32,39 @@ #ifndef __INT_LENGTH_H__ #define __INT_LENGTH_H__ -#define s0lengths0(in) \ +#define s0lengths0(in) \ slengths(in) -#define d0lengthd0(in) \ +#define d0lengthd0(in) \ dlengths(in) - -#define c0lengths0(in) \ + +#define c0lengths0(in) \ clengths(in) -#define z0lengthd0(in) \ +#define z0lengthd0(in) \ zlengths(in) -#define g0lengths0(in) \ +#define g0lengths0(in) \ slengths(in) -#define g0lengthd0(in) \ +#define g0lengthd0(in) \ dlengths(in) -#define s2lengths0(inptr,insizeptr) \ +#define s2lengths0(inptr,insizeptr) \ slengtha(inptr, insizeptr[0]*insizeptr[1]) -#define d2lengthd0(inptr,insizeptr) \ +#define d2lengthd0(inptr,insizeptr) \ dlengtha(inptr, insizeptr[0]*insizeptr[1]) -#define c2lengths0(inptr,insizeptr) \ +#define c2lengths0(inptr,insizeptr) \ clengtha(inptr, insizeptr[0]*insizeptr[1]) -#define z2lengthd0(inptr,insizeptr) \ +#define z2lengthd0(inptr,insizeptr) \ zlengtha(inptr, insizeptr[0]*insizeptr[1]) -#define g2lengths0(inptr,insizeptr) \ +#define g2lengths0(inptr,insizeptr) \ slengtha(inptr, insizeptr[0]*insizeptr[1]) -#define g2lengthd0(inptr,insizeptr) \ +#define g2lengthd0(inptr,insizeptr) \ dlengtha(inptr, insizeptr[0]*insizeptr[1]) #endif /* !__INT_LENGTH_H__ */ diff --git a/src/c/auxiliaryFunctions/isnan/sisnans.c b/src/c/auxiliaryFunctions/isnan/sisnans.c index 905890b8..39484bd9 100644 --- a/src/c/auxiliaryFunctions/isnan/sisnans.c +++ b/src/c/auxiliaryFunctions/isnan/sisnans.c @@ -1,23 +1,23 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2007-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 - * - */ - - -#ifdef _WIN32 -#include -#endif - -#include "isnan.h" - -float sisnans(float in) { - return isnan(in) ? (float)1 :(float)0; -} - +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-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 + * + */ + + +#ifdef _WIN32 +#include +#endif + +#include "isnan.h" + +float sisnans(float in) { + return isnan(in) ? (float)1 :(float)0; +} + diff --git a/src/c/elementaryFunctions/acos/cacoss.c b/src/c/elementaryFunctions/acos/cacoss.c index 97420313..6e12ed8a 100644 --- a/src/c/elementaryFunctions/acos/cacoss.c +++ b/src/c/elementaryFunctions/acos/cacoss.c @@ -1,147 +1,147 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 fonction is a translation of fortran wacos write by Bruno Pincon - * REFERENCE - * This is a Fortran-77 translation of an algorithm by - * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which - * appears in their article : - * "Implementing the Complex Arcsine and Arccosine - * Functions Using Exception Handling", ACM, TOMS, - * Vol 23, No. 3, Sept 1997, p. 299-335 - */ - -#include "acos.h" -#include "atan.h" -#include "log.h" -#include "log1p.h" -#include "sqrt.h" -#include "abs.h" -#include "lapack.h" -#include "min.h" -#include "max.h" - -#define localSign(x) (x>0 ? 1.0f : -1.0f) - -floatComplex cacoss(floatComplex z) { - static float sfltPi = 3.1415926535897932384626433f; - static float sfltPi_2 = 1.5707963267948966192313216f; - static float sfltLn2 = 0.6931471805599453094172321f; - static float sfltAcross = 1.5f; - static float sfltBcross = 0.6417f; - - float fltLsup = ssqrts((float) getOverflowThreshold())/8.0f; - float fltLinf = 4.0f * ssqrts((float) getUnderflowThreshold()); - float fltEpsm = ssqrts((float) getRelativeMachinePrecision()); - - float fltAbsReal = sabss(creals(z)); - float fltAbsImg = sabss(cimags(z)); - float fltSignReal = localSign(creals(z)); - float fltSignImg = localSign(cimags(z)); - - float fltR = 0, fltS = 0, fltA = 0, fltB = 0; - - float fltTemp = 0; - - float _pfltReal = 0; - float _pfltImg = 0; - - if( min(fltAbsReal, fltAbsImg) > fltLinf && max(fltAbsReal, fltAbsImg) <= fltLsup) - {/* we are in the safe region */ - fltR = ssqrts( (fltAbsReal + 1 )*(fltAbsReal + 1 ) + fltAbsImg*fltAbsImg); - fltS = ssqrts( (fltAbsReal - 1 )*(fltAbsReal - 1 ) + fltAbsImg*fltAbsImg); - fltA = 0.5f * ( fltR + fltS ); - fltB = fltAbsReal / fltA; - - - /* compute the real part */ - if(fltB <= sfltBcross) - _pfltReal = sacoss(fltB); - else if( fltAbsReal <= 1) - _pfltReal = satans(ssqrts(0.5f * (fltA + fltAbsReal) * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + (fltS + (1 - fltAbsReal)))) / fltAbsReal); - else - _pfltReal = satans((fltAbsImg * ssqrts(0.5f * ((fltA + fltAbsReal) / (fltR + (fltAbsReal + 1)) + (fltA + fltAbsReal) / (fltS + (fltAbsReal - 1))))) / fltAbsReal); - - /* compute the imaginary part */ - if(fltA <= sfltAcross) - { - float fltImg1 = 0; - - if(fltAbsReal < 1) - /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */ - fltImg1 = 0.5f * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + fltAbsImg*fltAbsImg / (fltS + (1 - fltAbsReal))); - else - /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */ - fltImg1 = 0.5f * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + (fltS + (fltAbsReal - 1))); - /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */ - fltTemp = fltImg1 + ssqrts(fltImg1 *( fltA + 1)); - _pfltImg = slog1ps(fltTemp); - } - else - /* ai = log(A + sqrt(A**2 - 1.d0)) */ - _pfltImg = slogs(fltA + ssqrts(fltA*fltA - 1)); - } - else - {/* evaluation in the special regions ... */ - if(fltAbsImg <= fltEpsm * sabss(fltAbsReal - 1)) - { - if(fltAbsReal < 1) - { - _pfltReal = sacoss(fltAbsReal); - _pfltImg = fltAbsImg / ssqrts((1 + fltAbsReal) * (1 - fltAbsReal)); - } - else - { - _pfltReal = 0; - if(fltAbsReal <= fltLsup) - { - fltTemp = (fltAbsReal - 1) + ssqrts((fltAbsReal - 1) * (fltAbsReal + 1)); - _pfltImg = slog1ps(fltTemp); - } - else - _pfltImg = sfltLn2 + slogs(fltAbsReal); - } - } - else if(fltAbsImg < fltLinf) - { - _pfltReal = ssqrts(fltAbsImg); - _pfltImg = _pfltReal; - } - else if((fltEpsm * fltAbsImg - 1 >= fltAbsReal)) - { - _pfltReal = sfltPi_2; - _pfltImg = sfltLn2 + slogs(fltAbsImg); - } - else if(fltAbsReal > 1) - { - _pfltReal = satans(fltAbsImg / fltAbsReal); - fltTemp = (fltAbsReal / fltAbsImg)*(fltAbsReal / fltAbsImg); - _pfltImg = sfltLn2 + slogs(fltAbsImg) + 0.5f * slog1ps(fltTemp); - } - else - { - float fltTemp2 = ssqrts(1 + fltAbsImg*fltAbsImg); - _pfltReal = sfltPi_2; - fltTemp = 2 * fltAbsImg * (fltAbsImg + fltTemp2); - _pfltImg = 0.5f * slog1ps(fltTemp); - } - } - if(fltSignReal < 0) - _pfltReal = sfltPi - _pfltReal; - - if(fltAbsImg != 0 || fltSignReal < 0) - _pfltImg = - fltSignImg * _pfltImg; - - return FloatComplex(_pfltReal, _pfltImg); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 fonction is a translation of fortran wacos write by Bruno Pincon + * REFERENCE + * This is a Fortran-77 translation of an algorithm by + * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which + * appears in their article : + * "Implementing the Complex Arcsine and Arccosine + * Functions Using Exception Handling", ACM, TOMS, + * Vol 23, No. 3, Sept 1997, p. 299-335 + */ + +#include "acos.h" +#include "atan.h" +#include "log.h" +#include "log1p.h" +#include "sqrt.h" +#include "abs.h" +#include "lapack.h" +#include "min.h" +#include "max.h" + +#define localSign(x) (x>0 ? 1.0f : -1.0f) + +floatComplex cacoss(floatComplex z) { + static float sfltPi = 3.1415926535897932384626433f; + static float sfltPi_2 = 1.5707963267948966192313216f; + static float sfltLn2 = 0.6931471805599453094172321f; + static float sfltAcross = 1.5f; + static float sfltBcross = 0.6417f; + + float fltLsup = ssqrts((float) getOverflowThreshold())/8.0f; + float fltLinf = 4.0f * ssqrts((float) getUnderflowThreshold()); + float fltEpsm = ssqrts((float) getRelativeMachinePrecision()); + + float fltAbsReal = sabss(creals(z)); + float fltAbsImg = sabss(cimags(z)); + float fltSignReal = localSign(creals(z)); + float fltSignImg = localSign(cimags(z)); + + float fltR = 0, fltS = 0, fltA = 0, fltB = 0; + + float fltTemp = 0; + + float _pfltReal = 0; + float _pfltImg = 0; + + if( min(fltAbsReal, fltAbsImg) > fltLinf && max(fltAbsReal, fltAbsImg) <= fltLsup) + {/* we are in the safe region */ + fltR = ssqrts( (fltAbsReal + 1 )*(fltAbsReal + 1 ) + fltAbsImg*fltAbsImg); + fltS = ssqrts( (fltAbsReal - 1 )*(fltAbsReal - 1 ) + fltAbsImg*fltAbsImg); + fltA = 0.5f * ( fltR + fltS ); + fltB = fltAbsReal / fltA; + + + /* compute the real part */ + if(fltB <= sfltBcross) + _pfltReal = sacoss(fltB); + else if( fltAbsReal <= 1) + _pfltReal = satans(ssqrts(0.5f * (fltA + fltAbsReal) * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + (fltS + (1 - fltAbsReal)))) / fltAbsReal); + else + _pfltReal = satans((fltAbsImg * ssqrts(0.5f * ((fltA + fltAbsReal) / (fltR + (fltAbsReal + 1)) + (fltA + fltAbsReal) / (fltS + (fltAbsReal - 1))))) / fltAbsReal); + + /* compute the imaginary part */ + if(fltA <= sfltAcross) + { + float fltImg1 = 0; + + if(fltAbsReal < 1) + /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */ + fltImg1 = 0.5f * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + fltAbsImg*fltAbsImg / (fltS + (1 - fltAbsReal))); + else + /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */ + fltImg1 = 0.5f * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + (fltS + (fltAbsReal - 1))); + /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */ + fltTemp = fltImg1 + ssqrts(fltImg1 *( fltA + 1)); + _pfltImg = slog1ps(fltTemp); + } + else + /* ai = log(A + sqrt(A**2 - 1.d0)) */ + _pfltImg = slogs(fltA + ssqrts(fltA*fltA - 1)); + } + else + {/* evaluation in the special regions ... */ + if(fltAbsImg <= fltEpsm * sabss(fltAbsReal - 1)) + { + if(fltAbsReal < 1) + { + _pfltReal = sacoss(fltAbsReal); + _pfltImg = fltAbsImg / ssqrts((1 + fltAbsReal) * (1 - fltAbsReal)); + } + else + { + _pfltReal = 0; + if(fltAbsReal <= fltLsup) + { + fltTemp = (fltAbsReal - 1) + ssqrts((fltAbsReal - 1) * (fltAbsReal + 1)); + _pfltImg = slog1ps(fltTemp); + } + else + _pfltImg = sfltLn2 + slogs(fltAbsReal); + } + } + else if(fltAbsImg < fltLinf) + { + _pfltReal = ssqrts(fltAbsImg); + _pfltImg = _pfltReal; + } + else if((fltEpsm * fltAbsImg - 1 >= fltAbsReal)) + { + _pfltReal = sfltPi_2; + _pfltImg = sfltLn2 + slogs(fltAbsImg); + } + else if(fltAbsReal > 1) + { + _pfltReal = satans(fltAbsImg / fltAbsReal); + fltTemp = (fltAbsReal / fltAbsImg)*(fltAbsReal / fltAbsImg); + _pfltImg = sfltLn2 + slogs(fltAbsImg) + 0.5f * slog1ps(fltTemp); + } + else + { + float fltTemp2 = ssqrts(1 + fltAbsImg*fltAbsImg); + _pfltReal = sfltPi_2; + fltTemp = 2 * fltAbsImg * (fltAbsImg + fltTemp2); + _pfltImg = 0.5f * slog1ps(fltTemp); + } + } + if(fltSignReal < 0) + _pfltReal = sfltPi - _pfltReal; + + if(fltAbsImg != 0 || fltSignReal < 0) + _pfltImg = - fltSignImg * _pfltImg; + + return FloatComplex(_pfltReal, _pfltImg); +} diff --git a/src/c/elementaryFunctions/acos/zacoss.c b/src/c/elementaryFunctions/acos/zacoss.c index de6f3fe9..10da477c 100644 --- a/src/c/elementaryFunctions/acos/zacoss.c +++ b/src/c/elementaryFunctions/acos/zacoss.c @@ -1,147 +1,147 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 fonction is a translation of fortran wacos write by Bruno Pincon - * REFERENCE - * This is a Fortran-77 translation of an algorithm by - * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which - * appears in their article : - * "Implementing the Complex Arcsine and Arccosine - * Functions Using Exception Handling", ACM, TOMS, - * Vol 23, No. 3, Sept 1997, p. 299-335 - */ - -#include "acos.h" -#include "atan.h" -#include "log.h" -#include "log1p.h" -#include "sqrt.h" -#include "abs.h" -#include "lapack.h" -#include "min.h" -#include "max.h" - -#define localSign(x) (x>0 ? 1 : -1) - -doubleComplex zacoss(doubleComplex z) { - static double sdblPi = 3.1415926535897932384626433; - static double sdblPi_2 = 1.5707963267948966192313216; - static double sdblLn2 = 0.6931471805599453094172321; - static double sdblAcross = 1.5; - static double sdblBcross = 0.6417; - - double dblLsup = dsqrts(getOverflowThreshold())/8.0; - double dblLinf = 4.0 * dsqrts(getUnderflowThreshold()); - double dblEpsm = dsqrts(getRelativeMachinePrecision()); - - double dblAbsReal = dabss(zreals(z)); - double dblAbsImg = dabss(zimags(z)); - double dblSignReal = localSign(zreals(z)); - double dblSignImg = localSign(zimags(z)); - - double dblR = 0, dblS = 0, dblA = 0, dblB = 0; - - double dblTemp = 0; - - double _pdblReal = 0; - double _pdblImg = 0; - - if( min(dblAbsReal, dblAbsImg) > dblLinf && max(dblAbsReal, dblAbsImg) <= dblLsup) - {/* we are in the safe region */ - dblR = dsqrts( (dblAbsReal + 1 )*(dblAbsReal + 1 ) + dblAbsImg*dblAbsImg); - dblS = dsqrts( (dblAbsReal - 1 )*(dblAbsReal - 1 ) + dblAbsImg*dblAbsImg); - dblA = 0.5 * ( dblR + dblS ); - dblB = dblAbsReal / dblA; - - - /* compute the real part */ - if(dblB <= sdblBcross) - _pdblReal = dacoss(dblB); - else if( dblAbsReal <= 1) - _pdblReal = datans(dsqrts(0.5 * (dblA + dblAbsReal) * (dblAbsImg*dblAbsImg / (dblR + (dblAbsReal + 1)) + (dblS + (1 - dblAbsReal)))) / dblAbsReal); - else - _pdblReal = datans((dblAbsImg * dsqrts(0.5 * ((dblA + dblAbsReal) / (dblR + (dblAbsReal + 1)) + (dblA + dblAbsReal) / (dblS + (dblAbsReal - 1))))) / dblAbsReal); - - /* compute the imaginary part */ - if(dblA <= sdblAcross) - { - double dblImg1 = 0; - - if(dblAbsReal < 1) - /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */ - dblImg1 = 0.5 * (dblAbsImg*dblAbsImg / (dblR + (dblAbsReal + 1)) + dblAbsImg*dblAbsImg / (dblS + (1 - dblAbsReal))); - else - /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */ - dblImg1 = 0.5 * (dblAbsImg*dblAbsImg / (dblR + (dblAbsReal + 1)) + (dblS + (dblAbsReal - 1))); - /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */ - dblTemp = dblImg1 + dsqrts(dblImg1 *( dblA + 1)); - _pdblImg = dlog1ps(dblTemp); - } - else - /* ai = log(A + sqrt(A**2 - 1.d0)) */ - _pdblImg = dlogs(dblA + dsqrts(dblA*dblA - 1)); - } - else - {/* evaluation in the special regions ... */ - if(dblAbsImg <= dblEpsm * dabss(dblAbsReal - 1)) - { - if(dblAbsReal < 1) - { - _pdblReal = dacoss(dblAbsReal); - _pdblImg = dblAbsImg / dsqrts((1 + dblAbsReal) * (1 - dblAbsReal)); - } - else - { - _pdblReal = 0; - if(dblAbsReal <= dblLsup) - { - dblTemp = (dblAbsReal - 1) + dsqrts((dblAbsReal - 1) * (dblAbsReal + 1)); - _pdblImg = dlog1ps(dblTemp); - } - else - _pdblImg = sdblLn2 + dlogs(dblAbsReal); - } - } - else if(dblAbsImg < dblLinf) - { - _pdblReal = dsqrts(dblAbsImg); - _pdblImg = _pdblReal; - } - else if((dblEpsm * dblAbsImg - 1 >= dblAbsReal)) - { - _pdblReal = sdblPi_2; - _pdblImg = sdblLn2 + dlogs(dblAbsImg); - } - else if(dblAbsReal > 1) - { - _pdblReal = datans(dblAbsImg / dblAbsReal); - dblTemp = (dblAbsReal / dblAbsImg)*(dblAbsReal / dblAbsImg); - _pdblImg = sdblLn2 + dlogs(dblAbsImg) + 0.5 * dlog1ps(dblTemp); - } - else - { - double dblTemp2 = dsqrts(1 + dblAbsImg*dblAbsImg); - _pdblReal = sdblPi_2; - dblTemp = 2 * dblAbsImg * (dblAbsImg + dblTemp2); - _pdblImg = 0.5 * dlog1ps(dblTemp); - } - } - if(dblSignReal < 0) - _pdblReal = sdblPi - _pdblReal; - - if(dblAbsImg != 0 || dblSignReal < 0) - _pdblImg = - dblSignImg * _pdblImg; - - return DoubleComplex(_pdblReal, _pdblImg); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 fonction is a translation of fortran wacos write by Bruno Pincon + * REFERENCE + * This is a Fortran-77 translation of an algorithm by + * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which + * appears in their article : + * "Implementing the Complex Arcsine and Arccosine + * Functions Using Exception Handling", ACM, TOMS, + * Vol 23, No. 3, Sept 1997, p. 299-335 + */ + +#include "acos.h" +#include "atan.h" +#include "log.h" +#include "log1p.h" +#include "sqrt.h" +#include "abs.h" +#include "lapack.h" +#include "min.h" +#include "max.h" + +#define localSign(x) (x>0 ? 1 : -1) + +doubleComplex zacoss(doubleComplex z) { + static double sdblPi = 3.1415926535897932384626433; + static double sdblPi_2 = 1.5707963267948966192313216; + static double sdblLn2 = 0.6931471805599453094172321; + static double sdblAcross = 1.5; + static double sdblBcross = 0.6417; + + double dblLsup = dsqrts(getOverflowThreshold())/8.0; + double dblLinf = 4.0 * dsqrts(getUnderflowThreshold()); + double dblEpsm = dsqrts(getRelativeMachinePrecision()); + + double dblAbsReal = dabss(zreals(z)); + double dblAbsImg = dabss(zimags(z)); + double dblSignReal = localSign(zreals(z)); + double dblSignImg = localSign(zimags(z)); + + double dblR = 0, dblS = 0, dblA = 0, dblB = 0; + + double dblTemp = 0; + + double _pdblReal = 0; + double _pdblImg = 0; + + if( min(dblAbsReal, dblAbsImg) > dblLinf && max(dblAbsReal, dblAbsImg) <= dblLsup) + {/* we are in the safe region */ + dblR = dsqrts( (dblAbsReal + 1 )*(dblAbsReal + 1 ) + dblAbsImg*dblAbsImg); + dblS = dsqrts( (dblAbsReal - 1 )*(dblAbsReal - 1 ) + dblAbsImg*dblAbsImg); + dblA = 0.5 * ( dblR + dblS ); + dblB = dblAbsReal / dblA; + + + /* compute the real part */ + if(dblB <= sdblBcross) + _pdblReal = dacoss(dblB); + else if( dblAbsReal <= 1) + _pdblReal = datans(dsqrts(0.5 * (dblA + dblAbsReal) * (dblAbsImg*dblAbsImg / (dblR + (dblAbsReal + 1)) + (dblS + (1 - dblAbsReal)))) / dblAbsReal); + else + _pdblReal = datans((dblAbsImg * dsqrts(0.5 * ((dblA + dblAbsReal) / (dblR + (dblAbsReal + 1)) + (dblA + dblAbsReal) / (dblS + (dblAbsReal - 1))))) / dblAbsReal); + + /* compute the imaginary part */ + if(dblA <= sdblAcross) + { + double dblImg1 = 0; + + if(dblAbsReal < 1) + /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */ + dblImg1 = 0.5 * (dblAbsImg*dblAbsImg / (dblR + (dblAbsReal + 1)) + dblAbsImg*dblAbsImg / (dblS + (1 - dblAbsReal))); + else + /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */ + dblImg1 = 0.5 * (dblAbsImg*dblAbsImg / (dblR + (dblAbsReal + 1)) + (dblS + (dblAbsReal - 1))); + /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */ + dblTemp = dblImg1 + dsqrts(dblImg1 *( dblA + 1)); + _pdblImg = dlog1ps(dblTemp); + } + else + /* ai = log(A + sqrt(A**2 - 1.d0)) */ + _pdblImg = dlogs(dblA + dsqrts(dblA*dblA - 1)); + } + else + {/* evaluation in the special regions ... */ + if(dblAbsImg <= dblEpsm * dabss(dblAbsReal - 1)) + { + if(dblAbsReal < 1) + { + _pdblReal = dacoss(dblAbsReal); + _pdblImg = dblAbsImg / dsqrts((1 + dblAbsReal) * (1 - dblAbsReal)); + } + else + { + _pdblReal = 0; + if(dblAbsReal <= dblLsup) + { + dblTemp = (dblAbsReal - 1) + dsqrts((dblAbsReal - 1) * (dblAbsReal + 1)); + _pdblImg = dlog1ps(dblTemp); + } + else + _pdblImg = sdblLn2 + dlogs(dblAbsReal); + } + } + else if(dblAbsImg < dblLinf) + { + _pdblReal = dsqrts(dblAbsImg); + _pdblImg = _pdblReal; + } + else if((dblEpsm * dblAbsImg - 1 >= dblAbsReal)) + { + _pdblReal = sdblPi_2; + _pdblImg = sdblLn2 + dlogs(dblAbsImg); + } + else if(dblAbsReal > 1) + { + _pdblReal = datans(dblAbsImg / dblAbsReal); + dblTemp = (dblAbsReal / dblAbsImg)*(dblAbsReal / dblAbsImg); + _pdblImg = sdblLn2 + dlogs(dblAbsImg) + 0.5 * dlog1ps(dblTemp); + } + else + { + double dblTemp2 = dsqrts(1 + dblAbsImg*dblAbsImg); + _pdblReal = sdblPi_2; + dblTemp = 2 * dblAbsImg * (dblAbsImg + dblTemp2); + _pdblImg = 0.5 * dlog1ps(dblTemp); + } + } + if(dblSignReal < 0) + _pdblReal = sdblPi - _pdblReal; + + if(dblAbsImg != 0 || dblSignReal < 0) + _pdblImg = - dblSignImg * _pdblImg; + + return DoubleComplex(_pdblReal, _pdblImg); +} diff --git a/src/c/elementaryFunctions/acosd/cacoss.c b/src/c/elementaryFunctions/acosd/cacoss.c index 97420313..6e12ed8a 100644 --- a/src/c/elementaryFunctions/acosd/cacoss.c +++ b/src/c/elementaryFunctions/acosd/cacoss.c @@ -1,147 +1,147 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 fonction is a translation of fortran wacos write by Bruno Pincon - * REFERENCE - * This is a Fortran-77 translation of an algorithm by - * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which - * appears in their article : - * "Implementing the Complex Arcsine and Arccosine - * Functions Using Exception Handling", ACM, TOMS, - * Vol 23, No. 3, Sept 1997, p. 299-335 - */ - -#include "acos.h" -#include "atan.h" -#include "log.h" -#include "log1p.h" -#include "sqrt.h" -#include "abs.h" -#include "lapack.h" -#include "min.h" -#include "max.h" - -#define localSign(x) (x>0 ? 1.0f : -1.0f) - -floatComplex cacoss(floatComplex z) { - static float sfltPi = 3.1415926535897932384626433f; - static float sfltPi_2 = 1.5707963267948966192313216f; - static float sfltLn2 = 0.6931471805599453094172321f; - static float sfltAcross = 1.5f; - static float sfltBcross = 0.6417f; - - float fltLsup = ssqrts((float) getOverflowThreshold())/8.0f; - float fltLinf = 4.0f * ssqrts((float) getUnderflowThreshold()); - float fltEpsm = ssqrts((float) getRelativeMachinePrecision()); - - float fltAbsReal = sabss(creals(z)); - float fltAbsImg = sabss(cimags(z)); - float fltSignReal = localSign(creals(z)); - float fltSignImg = localSign(cimags(z)); - - float fltR = 0, fltS = 0, fltA = 0, fltB = 0; - - float fltTemp = 0; - - float _pfltReal = 0; - float _pfltImg = 0; - - if( min(fltAbsReal, fltAbsImg) > fltLinf && max(fltAbsReal, fltAbsImg) <= fltLsup) - {/* we are in the safe region */ - fltR = ssqrts( (fltAbsReal + 1 )*(fltAbsReal + 1 ) + fltAbsImg*fltAbsImg); - fltS = ssqrts( (fltAbsReal - 1 )*(fltAbsReal - 1 ) + fltAbsImg*fltAbsImg); - fltA = 0.5f * ( fltR + fltS ); - fltB = fltAbsReal / fltA; - - - /* compute the real part */ - if(fltB <= sfltBcross) - _pfltReal = sacoss(fltB); - else if( fltAbsReal <= 1) - _pfltReal = satans(ssqrts(0.5f * (fltA + fltAbsReal) * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + (fltS + (1 - fltAbsReal)))) / fltAbsReal); - else - _pfltReal = satans((fltAbsImg * ssqrts(0.5f * ((fltA + fltAbsReal) / (fltR + (fltAbsReal + 1)) + (fltA + fltAbsReal) / (fltS + (fltAbsReal - 1))))) / fltAbsReal); - - /* compute the imaginary part */ - if(fltA <= sfltAcross) - { - float fltImg1 = 0; - - if(fltAbsReal < 1) - /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */ - fltImg1 = 0.5f * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + fltAbsImg*fltAbsImg / (fltS + (1 - fltAbsReal))); - else - /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */ - fltImg1 = 0.5f * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + (fltS + (fltAbsReal - 1))); - /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */ - fltTemp = fltImg1 + ssqrts(fltImg1 *( fltA + 1)); - _pfltImg = slog1ps(fltTemp); - } - else - /* ai = log(A + sqrt(A**2 - 1.d0)) */ - _pfltImg = slogs(fltA + ssqrts(fltA*fltA - 1)); - } - else - {/* evaluation in the special regions ... */ - if(fltAbsImg <= fltEpsm * sabss(fltAbsReal - 1)) - { - if(fltAbsReal < 1) - { - _pfltReal = sacoss(fltAbsReal); - _pfltImg = fltAbsImg / ssqrts((1 + fltAbsReal) * (1 - fltAbsReal)); - } - else - { - _pfltReal = 0; - if(fltAbsReal <= fltLsup) - { - fltTemp = (fltAbsReal - 1) + ssqrts((fltAbsReal - 1) * (fltAbsReal + 1)); - _pfltImg = slog1ps(fltTemp); - } - else - _pfltImg = sfltLn2 + slogs(fltAbsReal); - } - } - else if(fltAbsImg < fltLinf) - { - _pfltReal = ssqrts(fltAbsImg); - _pfltImg = _pfltReal; - } - else if((fltEpsm * fltAbsImg - 1 >= fltAbsReal)) - { - _pfltReal = sfltPi_2; - _pfltImg = sfltLn2 + slogs(fltAbsImg); - } - else if(fltAbsReal > 1) - { - _pfltReal = satans(fltAbsImg / fltAbsReal); - fltTemp = (fltAbsReal / fltAbsImg)*(fltAbsReal / fltAbsImg); - _pfltImg = sfltLn2 + slogs(fltAbsImg) + 0.5f * slog1ps(fltTemp); - } - else - { - float fltTemp2 = ssqrts(1 + fltAbsImg*fltAbsImg); - _pfltReal = sfltPi_2; - fltTemp = 2 * fltAbsImg * (fltAbsImg + fltTemp2); - _pfltImg = 0.5f * slog1ps(fltTemp); - } - } - if(fltSignReal < 0) - _pfltReal = sfltPi - _pfltReal; - - if(fltAbsImg != 0 || fltSignReal < 0) - _pfltImg = - fltSignImg * _pfltImg; - - return FloatComplex(_pfltReal, _pfltImg); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 fonction is a translation of fortran wacos write by Bruno Pincon + * REFERENCE + * This is a Fortran-77 translation of an algorithm by + * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which + * appears in their article : + * "Implementing the Complex Arcsine and Arccosine + * Functions Using Exception Handling", ACM, TOMS, + * Vol 23, No. 3, Sept 1997, p. 299-335 + */ + +#include "acos.h" +#include "atan.h" +#include "log.h" +#include "log1p.h" +#include "sqrt.h" +#include "abs.h" +#include "lapack.h" +#include "min.h" +#include "max.h" + +#define localSign(x) (x>0 ? 1.0f : -1.0f) + +floatComplex cacoss(floatComplex z) { + static float sfltPi = 3.1415926535897932384626433f; + static float sfltPi_2 = 1.5707963267948966192313216f; + static float sfltLn2 = 0.6931471805599453094172321f; + static float sfltAcross = 1.5f; + static float sfltBcross = 0.6417f; + + float fltLsup = ssqrts((float) getOverflowThreshold())/8.0f; + float fltLinf = 4.0f * ssqrts((float) getUnderflowThreshold()); + float fltEpsm = ssqrts((float) getRelativeMachinePrecision()); + + float fltAbsReal = sabss(creals(z)); + float fltAbsImg = sabss(cimags(z)); + float fltSignReal = localSign(creals(z)); + float fltSignImg = localSign(cimags(z)); + + float fltR = 0, fltS = 0, fltA = 0, fltB = 0; + + float fltTemp = 0; + + float _pfltReal = 0; + float _pfltImg = 0; + + if( min(fltAbsReal, fltAbsImg) > fltLinf && max(fltAbsReal, fltAbsImg) <= fltLsup) + {/* we are in the safe region */ + fltR = ssqrts( (fltAbsReal + 1 )*(fltAbsReal + 1 ) + fltAbsImg*fltAbsImg); + fltS = ssqrts( (fltAbsReal - 1 )*(fltAbsReal - 1 ) + fltAbsImg*fltAbsImg); + fltA = 0.5f * ( fltR + fltS ); + fltB = fltAbsReal / fltA; + + + /* compute the real part */ + if(fltB <= sfltBcross) + _pfltReal = sacoss(fltB); + else if( fltAbsReal <= 1) + _pfltReal = satans(ssqrts(0.5f * (fltA + fltAbsReal) * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + (fltS + (1 - fltAbsReal)))) / fltAbsReal); + else + _pfltReal = satans((fltAbsImg * ssqrts(0.5f * ((fltA + fltAbsReal) / (fltR + (fltAbsReal + 1)) + (fltA + fltAbsReal) / (fltS + (fltAbsReal - 1))))) / fltAbsReal); + + /* compute the imaginary part */ + if(fltA <= sfltAcross) + { + float fltImg1 = 0; + + if(fltAbsReal < 1) + /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */ + fltImg1 = 0.5f * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + fltAbsImg*fltAbsImg / (fltS + (1 - fltAbsReal))); + else + /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */ + fltImg1 = 0.5f * (fltAbsImg*fltAbsImg / (fltR + (fltAbsReal + 1)) + (fltS + (fltAbsReal - 1))); + /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */ + fltTemp = fltImg1 + ssqrts(fltImg1 *( fltA + 1)); + _pfltImg = slog1ps(fltTemp); + } + else + /* ai = log(A + sqrt(A**2 - 1.d0)) */ + _pfltImg = slogs(fltA + ssqrts(fltA*fltA - 1)); + } + else + {/* evaluation in the special regions ... */ + if(fltAbsImg <= fltEpsm * sabss(fltAbsReal - 1)) + { + if(fltAbsReal < 1) + { + _pfltReal = sacoss(fltAbsReal); + _pfltImg = fltAbsImg / ssqrts((1 + fltAbsReal) * (1 - fltAbsReal)); + } + else + { + _pfltReal = 0; + if(fltAbsReal <= fltLsup) + { + fltTemp = (fltAbsReal - 1) + ssqrts((fltAbsReal - 1) * (fltAbsReal + 1)); + _pfltImg = slog1ps(fltTemp); + } + else + _pfltImg = sfltLn2 + slogs(fltAbsReal); + } + } + else if(fltAbsImg < fltLinf) + { + _pfltReal = ssqrts(fltAbsImg); + _pfltImg = _pfltReal; + } + else if((fltEpsm * fltAbsImg - 1 >= fltAbsReal)) + { + _pfltReal = sfltPi_2; + _pfltImg = sfltLn2 + slogs(fltAbsImg); + } + else if(fltAbsReal > 1) + { + _pfltReal = satans(fltAbsImg / fltAbsReal); + fltTemp = (fltAbsReal / fltAbsImg)*(fltAbsReal / fltAbsImg); + _pfltImg = sfltLn2 + slogs(fltAbsImg) + 0.5f * slog1ps(fltTemp); + } + else + { + float fltTemp2 = ssqrts(1 + fltAbsImg*fltAbsImg); + _pfltReal = sfltPi_2; + fltTemp = 2 * fltAbsImg * (fltAbsImg + fltTemp2); + _pfltImg = 0.5f * slog1ps(fltTemp); + } + } + if(fltSignReal < 0) + _pfltReal = sfltPi - _pfltReal; + + if(fltAbsImg != 0 || fltSignReal < 0) + _pfltImg = - fltSignImg * _pfltImg; + + return FloatComplex(_pfltReal, _pfltImg); +} diff --git a/src/c/elementaryFunctions/acosh/dacoshs.c b/src/c/elementaryFunctions/acosh/dacoshs.c index a5c13c8b..78825eab 100644 --- a/src/c/elementaryFunctions/acosh/dacoshs.c +++ b/src/c/elementaryFunctions/acosh/dacoshs.c @@ -14,10 +14,10 @@ #include "acosh.h" #ifdef _MSC_VER -double acosh(double x) -{ - return log(x + sqrt(x * x - 1)); -} +double acosh(double x) +{ + return log(x + sqrt(x * x - 1)); +} #endif double dacoshs(double x) { diff --git a/src/c/elementaryFunctions/acosh/sacoshs.c b/src/c/elementaryFunctions/acosh/sacoshs.c index d2a9ae53..875897d1 100644 --- a/src/c/elementaryFunctions/acosh/sacoshs.c +++ b/src/c/elementaryFunctions/acosh/sacoshs.c @@ -14,11 +14,11 @@ #include "acosh.h" #ifdef _MSC_VER -float acoshf (float x) -{ - return (float) log(x + sqrt(x * x - 1)); -} -#endif +float acoshf (float x) +{ + return (float) log(x + sqrt(x * x - 1)); +} +#endif float sacoshs(float x) { return (acoshf(x)); diff --git a/src/c/elementaryFunctions/acosh/testDoubleAcosh.c b/src/c/elementaryFunctions/acosh/testDoubleAcosh.c index 60a041db..d9cdf3ee 100644 --- a/src/c/elementaryFunctions/acosh/testDoubleAcosh.c +++ b/src/c/elementaryFunctions/acosh/testDoubleAcosh.c @@ -14,9 +14,9 @@ #include "isnan.h" #include "testAcosh.h" -#ifdef _MSC_VER -#include -#define isnan(x) _isnan((double)x) +#ifdef _MSC_VER +#include +#define isnan(x) _isnan((double)x) #endif diff --git a/src/c/elementaryFunctions/acosh/testFloatAcosh.c b/src/c/elementaryFunctions/acosh/testFloatAcosh.c index aa14a308..67627792 100644 --- a/src/c/elementaryFunctions/acosh/testFloatAcosh.c +++ b/src/c/elementaryFunctions/acosh/testFloatAcosh.c @@ -1,510 +1,510 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2006-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 - * - */ - -#include "testAcosh.h" -#include "isnan.h" - -#ifdef _MSC_VER -#include -#define isnan(x) _isnan((double)x) -#endif - -#define IN {38.746443623676896095276f,39.8779044859111309052f,99.6399083640426397324f,\ -93.207842670381069183350f,6.8147667217999696731567f,71.874653641134500503540f,\ -65.928971720859408378601f,43.781969323754310607910f,95.70061699487268924713f,\ -39.777786191552877426147f,54.149620747193694114685f,14.754852838814258575439f,\ -91.972588421776890754700f,41.853474546223878860474f,90.448315022513270378113f,\ -32.027477025985717773438f,57.482325518503785133362f,75.726259034126996994019f,\ -32.547289272770285606384f,50.125551037490367889404f,26.862081931903958320618f,\ -11.706684622913599014282f,36.675705714151263237000f,87.538864836096763610840f,\ -52.483216533437371253967f,76.861125137656927108765f,82.899243896827101707458f,\ -64.99033216387033462524f,56.250627012923359870911f,21.698794979602098464966f,\ -93.22312804870307445526f,93.5097210109233856201f,97.608120972290635108948f,\ -91.35094834491610527039f,26.843591919168829917908f,9.1870715841650962829590f,\ -17.129724519327282905579f,73.117265943437814712524f,86.922781122848391532898f,\ -1.4808017760515213012695f,65.071928361430764198303f,42.254429217427968978882f,\ -23.262092983350157737732f,31.955500133335590362549f,74.261871399357914924622f,\ -77.881882060319185256958f,65.248953877016901969910f,90.324406325817108154297f,\ -86.69646182097494602203f,70.879780035465955734253f,69.452034076675772666931f,\ -84.671579115092754364014f,93.227435695007443428040f,95.654127094894647598267f,\ -16.239900095388293266296f,12.728751823306083679199f,95.707353064790368080139f,\ -67.644099798053503036499f,39.798104530200362205505f,11.081875301897525787354f,\ -50.97153154201805591583f,58.446559030562639236450f,25.919713405892252922058f,\ -29.182348400354385375977f,6.0309174004942178726196f,90.43274922296404838562f,\ -61.944271018728613853455f,25.037935934960842132568f,83.850894169881939888000f,\ -82.732185069471597671509f,73.220202280208468437195f,29.458374157547950744629f,\ -29.091028729453682899475f,70.458725746721029281616f,30.465652560815215110779f,\ -75.730663724243640899658f,73.18075490184128284454f,69.053836632519960403442f,\ -62.402765033766627311707f,41.599050164222717285156f,28.105994546785950660706f,\ -5.6220385245978832244873f,58.040395518764853477478f,0.4246918484568595886230f,\ -68.2817161548882722855f,89.133544359356164932251f,92.980264825746417045593f,\ -28.40001545846462249756f,9.885430941358208656311f,41.369083430618047714233f,\ -64.121548598632216453552f,64.692758955061435699463f,47.02662643976509571075f,\ -60.481913108378648757935f,67.138904659077525138855f,71.394702047109603881836f,\ -54.127137595787644386292f,39.052018057554960250854f,1.1089378502219915390015f,\ -90.150084160268306732178f,13.887455360963940620422f,8.5074969567358493804932f,\ -34.66010238043963909149f,42.338709905743598937988f,80.213972786441445351f,\ -31.7881367169320583344f,18.021041667088866233826f,69.688742049038410186768f,\ -35.482168616726994514465f,16.12617420032620429993f,75.34236568026244640350f,\ -62.194181978702545166016f,51.510728383436799049377f,67.819245439022779464722f,\ -61.666865786537528038025f,70.212037675082683563232f,13.621602999046444892883f,\ -60.870522353798151016235f,18.923167092725634574890f,47.614179179072380065918f,\ -17.161004850640892982483f,41.371036972850561141968f,15.31781828962266445160f,\ -22.868881560862064361572f,95.856341393664479255676f,39.499193150550127029419f,\ -2.500818995758891106f,44.927055388689041137695f,91.384086245670914649963f,\ -11.012465786188840866089f,74.87958460114896297455f,0.7881646975874900817871f,\ -23.523587780073285102844f,80.106287542730569839478f,65.456348611041903495789f,\ -51.620832458138465881348f,70.271815219894051551819f,5.5151230655610561370850f,\ -62.56400248967111110687f,84.313133545219898223877f,17.294042231515049934387f,\ -41.730730701237916946411f,81.875373004004359245300f,25.327575206756591796875f,\ -86.085468018427491188049f,17.212611716240644454956f,78.060937067493796348572f,\ -13.735765032470226287842f,0.2187759149819612503052f,1.4656470157206058502197f,\ -30.469974083825945854187f,80.307766422629356384277f,99.052629480138421058655f,\ -82.85992136225104331970f,87.21015579067170619965f,29.531141556799411773682f,\ -58.27610609121620655060f,29.06773509457707405090f,2.0005736034363508224f,\ -71.4346818625926971436f,26.664068037644028663635f,51.992803346365690231323f,\ -48.17320345900952816010f,0.0918259844183921813965f,38.418471114709973335266f,\ -49.06664276495575904846f,44.197808159515261650085f,65.678765252232551574707f,\ -10.470610717311501502991f,42.787145730108022689819f,75.105277216061949729919f,\ -36.962236650288105010986f,84.119305433705449104309f,90.374342072755098342896f,\ -44.184404192492365837097f,1.0920032858848571777344f,20.380018139258027076721f,\ -85.418348293751478195190f,39.327101549133658409119f,97.573022358119487762451f,\ -8.4199145901948213577271f,23.39450428262352943420f,48.397052986547350883484f,\ -33.292300626635551452637f,96.453859517350792884827f,52.920697536319494247437f,\ -7.9968032892793416976929f,75.475437380373477935791f,4.476350219920277596f,\ -84.631874877959489822388f,20.008285669609904289246f,69.44785490632057189941f,\ -28.204387659206986427307f,79.546741675585508346558f,20.281786611303687095642f,\ -78.075716458261013031006f,93.606285052374005317688f,88.801648560911417007446f,\ -33.848348213359713554382f,89.761531725525856018066f} - -#define RESULT {4.3500195892822599574856f,4.378812333443298676627f,5.2946847693089331698957f,\ -5.2279502699832844925254f,2.6068118507181217147206f,4.968022463585481496295f,\ -4.8816676362403299549442f,4.4722388068202851840738f,5.2543446283333992141706f,\ -4.3762977630646631155287f,4.6848128785767624293612f,3.3835688928264802122214f,\ -5.2146082054939908445590f,4.4271792498758397726988f,5.1978952030053422461719f,\ -4.159497560939560578674f,4.7445490293632399669832f,5.0202285648475850621253f,\ -4.1756051841813626168687f,4.6075785448582253778227f,3.9835162329116351465075f,\ -3.1514779837977200394050f,4.2950758361772223281605f,5.165197419194649697261f,\ -4.653549840642725143880f,5.035105083560019956224f,5.1107367420045859418565f,\ -4.8673265089936572636020f,4.7228853485288873059744f,3.7698725167565876326137f,\ -5.2281142583800894740875f,5.2311839874435639430317f,5.2740816359097371091025f,\ -5.2078258853539018957690f,3.982827186610214287299f,2.9079691610609703644741f,\ -3.5331093207527803912171f,4.9851649496034715625115f,5.1581342419725935144470f,\ -0.9450506373811344840163f,4.8685813827251553931319f,4.4367163112396088564537f,\ -3.8395099847061766595857f,4.1572465837028591550961f,5.0006994941965512424531f,\ -5.0482993082581542054754f,4.8712984679982609392823f,5.1965242406243383754827f,\ -5.1555269912574592794385f,4.954082618091184997411f,4.9337317049920867972901f,\ -5.1318923054243690273779f,5.228160467885317963521f,5.2538586990129676479455f,\ -3.4796690893012534040452f,3.2354639460120244720542f,5.2544150166005954005755f,\ -4.9073526741507107473694f,4.3768085901327413722584f,3.0964161555968114925008f,\ -4.6243182142058252281913f,4.7611868033967539304285f,3.9477786701409951497510f,\ -4.0664175090632737052943f,2.4831009250018341028010f,5.1977230816033159754852f,\ -4.8193171469932529760172f,3.9131402651137854320496f,5.1221517738388655516246f,\ -5.1087193584020944570057f,4.98657191625376672306f,4.0758371911626332106948f,\ -4.0632814774108050315249f,4.9481239065017428302440f,4.1094776238806378643176f,\ -5.0202867341820684998766f,4.9860329708595516606806f,4.9279811897230469952547f,\ -4.8266925606060153697285f,4.421080015153528108840f,4.0288134359166507536543f,\ -2.4118364183807097234080f,4.7542122019999739634954f,0,\ -4.9167355873994562642793f,5.1832514554357551617159f,5.2255055264178071894321f,\ -4.0392267678246307482937f,2.9816410740582028893186f,4.4155348942144980739499f,\ -4.8538668500531736427206f,4.8627367182462748473881f,4.5437480774189333843083f,\ -4.7954231948046981415246f,4.8998553915953095838631f,4.9613217960209823331752f,\ -4.6843975172654603866818f,4.3578777660333960497496f,0.4626347638559775710121f,\ -5.1945923008314265345575f,3.3228343258666956927527f,2.830622803369744922009f,\ -4.238528249750794785200f,4.438709481897562980635f,5.077806047884725337838f,\ -4.1519928438683244564800f,3.5839165427001460351164f,4.9371344840241793150426f,\ -4.2619788264190443527468f,3.4726281293145686568380f,5.0151457380383783757338f,\ -4.8233440014012511909414f,4.6348430510092004652734f,4.9099388325030934865367f,\ -4.81482819845952114690f,4.9446162371720561168331f,3.3034540778469194677314f,\ -4.8018287252966844746993f,3.6328352359975357721567f,4.556167488561304601546f,\ -3.5349368514717505185274f,4.41558212917596915048f,3.4210967363570983224008f,\ -3.8224459155669441301484f,5.2559705982049909067655f,4.3692671498839636967659f,\ -1.5671566063449566819088f,4.4980634827120455909721f,5.2081885950679547292452f,\ -3.0901072205487807309510f,5.0089838747007107144782f,0,\ -3.850698741029123794988f,5.076462566530570263978f,4.8744723131002718474747f,\ -4.6369786693462113902342f,4.9454673471881154256380f,2.3923187222394570738970f,\ -4.8292733779221936885051f,5.127649658742538640865f,3.5426723072020398497273f,\ -4.424241396092424949416f,5.0983081346685077406278f,3.9246509637740216724922f,\ -5.1484540607983912963164f,3.537944651477085589164f,5.0505959169093319616195f,\ -3.3118225003889145696689f,0,0.9310418690232507010762f,\ -4.1096195393026562214800f,5.0789747485012091132717f,5.2887730188734272118722f,\ -5.1102622536361952398920f,5.1614350980940946200803f,4.0783057415377843568649f,\ -4.7582657239633334711471f,4.0624799671967695147146f,1.3172890037212539038336f,\ -4.9618816771260449982606f,3.9761122565887623281f,4.64415999832871140285f,\ -4.5678423566873336270078f,0,4.3415161209508754680542f,\ -4.5862227542495350718355f,4.481694375737592217490f,4.8778648861550966131517f,\ -3.0394313734202933474648f,4.4492483198356360674097f,5.0119936831694982259933f,\ -4.3028609023006350042806f,5.1253479422290126876760f,5.1970769705972195140475f,\ -4.4813909798397162376205f,0.4257373352329655857851f,3.7070996451820255046528f,\ -5.1406738437618608728030f,4.3648993866947414232982f,5.2737219653314042489001f,\ -2.820201721217977297584f,3.8451912168199942065883f,4.5724793527790357217100f,\ -4.1982477070823893683382f,5.2621850617105074832125f,4.661852422144622920541f,\ -2.7682565538529817494862f,5.0169105620070073570105f,2.1792385497944919414692f,\ -5.131423242241443638534f,3.6886685835548016498819f,4.9336715234659216378077f,\ -4.032310316197459165721f,5.0694524637856641646749f,3.7022621441401133424165f,\ -5.0507852459760567143121f,5.2322161767096924123166f,5.1795206909289932539764f,\ -4.2148191048546337356129f,5.19027265701442619417f} - -#define CRIN {0.1483933464623987674713f,0.5565875237807631492615f,0.4628333351574838161469f,\ -0.9158247429877519607544f,0.0444016349501907825470f,0.8175177471712231636047f,\ -0.5320580708794295787811f,0.2989391684532165527344f,0.5029047676362097263336f,\ -0.4266923693940043449402f,0.3965902938507497310638f,0.7440190296620130538940f,\ -0.7921002809889614582062f,0.5715918401256203651428f,0.4155966262333095073700f,\ -0.2953372262418270111084f,0.1075767637230455875397f,0.7572548976168036460876f,\ -0.93660886352881789207f,0.7694978956133127212524f,0.0902581927366554737091f,\ -0.4731486858800053596497f,0.4765542480163276195526f,0.6361737176775932312012f,\ -0.5064576440490782260895f,0.9049607468768954277039f,0.6742701171897351741791f,\ -0.3656400945037603378296f,0.6837903787381947040558f,0.4100628877058625221252f,\ -0.3582529271952807903290f,0.7118562050163745880127f,0.7966963038779795169830f,\ -0.9753969227895140647888f,0.5733916512690484523773f,0.8998429346829652786255f,\ -0.5953218084760010242462f,0.3765322910621762275696f,0.9104355531744658946991f,\ -0.1861076802015304565430f,0.6715109744109213352203f,0.2566455481573939323425f,\ -0.9819463356398046016693f,0.7608660291880369186401f,0.8556561623699963092804f,\ -0.8441717335954308509827f,0.3884846637956798076630f,0.4608103148639202117920f,\ -0.8381579727865755558014f,0.5278776129707694053650f,0.0187810636125504970551f,\ -0.2611750457435846328735f,0.6092445817776024341583f,0.0081067951396107673645f,\ -0.0276411953382194042206f,0.0158492103219032287598f,0.8109004520811140537262f,\ -0.2429467244073748588562f,0.3353355019353330135345f,0.4142854567617177963257f,\ -0.5946544189937412738800f,0.9080675477162003517151f,0.992223232518881559372f,\ -0.6239561475813388824463f,0.0789771513082087039948f,0.5889828568324446678162f,\ -0.2523608407936990261078f,0.5871062893420457839966f,0.0000379872508347034454f,\ -0.4244823055341839790344f,0.69984475849196314812f,0.4405533373355865478516f,\ -0.6495711454190313816071f,0.4199861017987132072449f,0.2716385438106954097748f,\ -0.0272838752716779708862f,0.6936013107188045978546f,0.1495713749900460243f,\ -0.5206344048492610454559f,0.9685971699655055999756f,0.9657785953022539615631f,\ -0.0654204180464148521423f,0.9626990980468690395355f,0.2655456010252237319946f,\ -0.8290728745050728321075f,0.1334408046677708625793f,0.8514542016200721263885f,\ -0.8984219655394554138184f,0.1995774977840483188629f,0.0138073815032839775085f,\ -0.2245407640002667903900f,0.3930436577647924423218f,0.8261723746545612812042f,\ -0.5051761353388428688049f,0.5651183272711932659149f,0.822583723813295364380f,\ -0.9197964356280863285065f,0.4713199352845549583435f,0.9223483256064355373383f,\ -0.2136987913399934768677f,0.7260794681496918201447f,0.9689361499622464179993f,\ -0.8346118587069213390350f,0.8257038742303848266602f,0.1350833275355398654938f,\ -0.7953761396929621696472f,0.8992118402384221553802f,0.2715440522879362106323f,\ -0.9219025229103863239288f,0.1750466236844658851624f,0.3323095212690532207489f,\ -0.9493130259215831756592f,0.7118741781450808048248f,0.8032329222187399864197f,\ -0.3628453887067735195160f,0.7530685458332300186157f,0.2641473677940666675568f,\ -0.9660940738394856452942f,0.8041944387368857860565f,0.5316947177052497863770f,\ -0.1673618280328810214996f,0.955579827539622783661f,0.6473058252595365047455f,\ -0.2645611818879842758179f,0.5411860425956547260284f,0.4980195099487900733948f,\ -0.0190768833272159099579f,0.4227291680872440338135f,0.8374647037126123905182f,\ -0.4151327675208449363708f,0.3497115275822579860687f,0.4844544250518083572388f,\ -0.3347255480475723743439f,0.2362121837213635444641f,0.0928130256943404674530f,\ -0.0737370252609252929688f,0.4197955676354467868805f,0.9802277712151408195496f,\ -0.8419611467979848384857f,0.6906680446118116378784f,0.2502765958197414875031f,\ -0.8266033390536904335022f,0.1875236849300563335419f,0.5023231171071529388428f,\ -0.8916302681900560855865f,0.8934147348627448081970f,0.1574523574672639369965f,\ -0.1629528645426034927368f,0.5226223585195839405060f,0.8417599620297551155090f,\ -0.5858130785636603832245f,0.1322202011942863464355f,0.8028764897026121616364f,\ -0.5250511718913912773132f,0.2528006075881421566010f,0.4602345135062932968140f,\ -0.996287219692021608353f,0.4019785309210419654846f,0.1399875725619494915009f,\ -0.5081327147781848907471f,0.9440425024367868900299f,0.9318959629163146018982f,\ -0.6445578685961663722992f,0.5729571748524904251099f,0.4810055238194763660431f,\ -0.6713787661865353584290f,0.0962744313292205333710f,0.8855805248022079467773f,\ -0.3892059125937521457672f,0.2907031057402491569519f,0.4209313853643834590912f,\ -0.9504273366183042526245f,0.482190326321870088577f,0.2289973804727196693420f,\ -0.2940405677072703838348f,0.6957426778972148895264f,0.9139824123121798038483f,\ -0.2068154653534293174744f,0.6285024262033402919769f,0.4031575415283441543579f,\ -0.3064021435566246509552f,0.3148818286135792732239f,0.7400112929753959178925f,\ -0.8853011503815650939941f,0.788494529668241739273f,0.8977585239335894584656f,\ -0.0339450328610837459564f,0.8802101369947195053101f,0.5418177028186619281769f,\ -0.9511840576305985450745f,0.5574890668503940105438f,0.1312845982611179351807f,\ -0.9453403786756098270416f,0.2518341308459639549255f,0.2607447705231606960297f,\ -0.1215410251170396804810f,0.9136986923404037952423f,0.9382542567327618598938f,\ -0.3105722474865615367889f,0.9309121072292327880859f} - -#define CIIN {0.5225624092854559421539f,0.7617142526432871818542f,0.3009174778126180171967f,\ -0.1853434126824140548706f,0.5148605112917721271515f,0.7257346073165535926819f,\ -0.7033738414756953716278f,0.5664369426667690277100f,0.7816161573864519596100f,\ -0.3330347230657935142517f,0.4017280167900025844574f,0.8503915611654520034790f,\ -0.41114101978018879890f,0.1586530329659581184387f,0.6542402538470923900604f,\ -0.9449902996420860290527f,0.400338994804769754410f,0.9679889930412173271179f,\ -0.32740902295336127281f,0.8933845367282629013062f,0.6218692888505756855011f,\ -0.0985169494524598121643f,0.7449700380675494670868f,0.3134250529110431671143f,\ -0.1409188793040812015533f,0.3239218806847929954529f,0.9958796552382409572601f,\ -0.2412899602204561233521f,0.4753343504853546619415f,0.9194070147350430488586f,\ -0.0450326460413634777069f,0.8481595069169998168945f,0.8928631045855581760406f,\ -0.1469233212992548942566f,0.4904643460176885128021f,0.9986877571791410446167f,\ -0.3392539476044476032257f,0.8790708789601922035217f,0.3107871781103312969208f,\ -0.1200211457908153533936f,0.0909670502878725528717f,0.5804221173748373985291f,\ -0.446611551102250814438f,0.3501139078289270401001f,0.7262432840652763843536f,\ -0.3650169344618916511536f,0.5597011330537497997284f,0.434090383350849151611f,\ -0.5082829319871962070465f,0.3487796885892748832703f,0.8136124997399747371674f,\ -0.337404197081923484802f,0.7742837746627628803253f,0.0156080657616257667542f,\ -0.0195691580884158611298f,0.0445443131029605865479f,0.4240885511972010135651f,\ -0.8158838218078017234802f,0.9913199446164071559906f,0.5120379645377397537231f,\ -0.1021917951293289661407f,0.7161553995683789253235f,0.4527317988686263561249f,\ -0.2445004582405090332031f,0.1668560453690588474274f,0.9187424210831522941589f,\ -0.3418669118545949459076f,0.4624818544834852218628f,0.0400874321348965167999f,\ -0.4700120547786355018616f,0.8552942494861781597137f,0.3308605216443538665771f,\ -0.0322206378914415836334f,0.9760772576555609703064f,0.0763854510150849819183f,\ -0.2165335658937692642212f,0.2348632332868874073029f,0.1446668924763798713684f,\ -0.5313451024703681468964f,0.4441541358828544616699f,0.5759493880905210971832f,\ -0.3719177199527621269226f,0.5167253850959241390228f,0.5186656024307012557983f,\ -0.6306529571302235126495f,0.0928382659330964088440f,0.5421750987879931926727f,\ -0.2833826132118701934814f,0.2819099412299692630768f,0.1141945635899901390076f,\ -0.7321730605326592922211f,0.9823690224438905715942f,0.8243003231473267078400f,\ -0.6485677706077694892883f,0.5304958778433501720428f,0.6958626955747604370117f,\ -0.6050392785109579563141f,0.2683336613699793815613f,0.5511700971983373165131f,\ -0.1174971889704465866089f,0.7958277617581188678741f,0.4983139941468834877014f,\ -0.9196587274782359600067f,0.1420703046023845672607f,0.389312467072159051895f,\ -0.2658497532829642295837f,0.9480321384035050868988f,0.2326095197349786758423f,\ -0.0139051643200218677521f,0.9270462663844227790833f,0.4878733339719474315643f,\ -0.0354842916131019592285f,0.6607114099897444248199f,0.0879401965066790580750f,\ -0.8046676008962094783783f,0.212315237149596214294f,0.9163186331279575824738f,\ -0.9393384093418717384338f,0.3174265320412814617157f,0.9574301876127719879150f,\ -0.7951935962773859500885f,0.3240787154063582420349f,0.0472964248619973659515f,\ -0.1696171183139085769653f,0.7654392314143478870392f,0.2554624872282147407532f,\ -0.1189010548405349254608f,0.7469239532947540283203f,0.0616608508862555027008f,\ -0.1056091515347361564636f,0.1581688239239156246185f,0.9732552450150251388550f,\ -0.8786917333491146564484f,0.1824825564399361610413f,0.9303942839615046977997f,\ -0.4655157290399074554443f,0.5399280847050249576569f,0.9143392136320471763611f,\ -0.0622840351425111293793f,0.6500507537275552749634f,0.2340233740396797657013f,\ -0.3603484155610203742981f,0.1917369994334876537323f,0.2371335849165916442871f,\ -0.4136920445598661899567f,0.2661342276260256767273f,0.3891090690158307552338f,\ -0.6622495856136083602905f,0.4503725995309650897980f,0.3829893553629517555237f,\ -0.1937121297232806682587f,0.9629272706806659698486f,0.6385000632144510746002f,\ -0.2695108866319060325623f,0.1092974594794213771820f,0.0598662365227937698364f,\ -0.1431378168053925037384f,0.2944079088047146797180f,0.9022735017351806163788f,\ -0.9111119657754898071289f,0.9847188093699514865875f,0.0592310009524226188660f,\ -0.5464080139063298702240f,0.5080275069922208786011f,0.6546461437828838825226f,\ -0.9597736010327935218811f,0.1577645908109843730927f,0.1818120293319225311279f,\ -0.4555030376650393009186f,0.1048952480778098106384f,0.7636235631071031093597f,\ -0.1893162522464990615845f,0.1596221593208611011505f,0.3115166993811726570129f,\ -0.2491372707299888134003f,0.0469047501683235168457f,0.0797643386758863925934f,\ -0.3945369226858019828796f,0.3254697113297879695892f,0.5811151321977376937866f,\ -0.1456566532142460346222f,0.4704219633713364601135f,0.8631705637089908123016f,\ -0.1648640967905521392822f,0.0801398889161646366119f,0.4932156866416335105896f,\ -0.4345335862599313259125f,0.1079503614455461502075f,0.2686753761954605579376f,\ -0.7417223947122693061829f,0.4086893904022872447968f,0.6706044673919677734375f,\ -0.4159612008370459079742f,0.4766113189980387687683f,0.4431825890205800533295f,\ -0.6688354592770338058472f,0.5834077899344265460968f,0.4861929873004555702209f,\ -0.715783319901674985886f,0.1403244398534297943115f} - -#define CRRESULT {0.5053397031743451783825f,0.7650083608446867078356f,0.3289296819323739295982f,\ -0.3563456766158749622342f,0.4948207655225617118688f,0.8169593462846268527855f,\ -0.7132198900639351579755f,0.5570137230416445373038f,0.7685376318852206178889f,\ -0.3559803193123551312560f,0.4189790595413633300659f,0.8813522345691391368661f,\ -0.5405451162482487470484f,0.1905551975849387180695f,0.6493731034151291048317f,\ -0.8578709195697519218626f,0.3922142862720902067863f,0.9642946930057294530059f,\ -0.5389615746319644795648f,0.9186094888728127960675f,0.5890418064066422765279f,\ -0.1113977102429560134267f,0.7345860770241963155769f,0.3799876579856086289411f,\ -0.1619970506356118999935f,0.51382943864194075001f,0.9605702232101991366875f,\ -0.2552214504374311077051f,0.5588288246069162967800f,0.8545155572742579863643f,\ -0.0482073009402987154304f,0.8701819105023789191478f,0.9267094766915666692597f,\ -0.3583874762657675017152f,0.5394241582016752190043f,1.0267057888096897677599f,\ -0.3962322220487046187110f,0.8200372580795054489045f,0.5035682683774097556650f,\ -0.1218215489911998739014f,0.1217295472085216101465f,0.5645974853924803360528f,\ -0.6787204142960019392916f,0.4641409785094591788912f,0.8320374579652175528466f,\ -0.5202648072575078996849f,0.5635084163999081185992f,0.4608376215542885900867f,\ -0.6521335567127740651117f,0.3901559225476997627702f,0.7433295520896158192770f,\ -0.3414853587252406064145f,0.7876437052847802267053f,0.0156079448330699189357f,\ -0.0195753850507095344957f,0.0445351746116087257588f,0.5619901990592348628439f,\ -0.7563216032216260042986f,0.8953230010983072029163f,0.5250759023565449989945f,\ -0.1262270783291525866332f,0.8463340938014771719367f,0.6903512283163251161966f,\ -0.3002023271844543317322f,0.1665929038330317135674f,0.8881085995755062523216f,\ -0.3450945758035259824936f,0.5168125326109850314893f,0.0400767031552608649081f,\ -0.4881659313644853837033f,0.8717577944100705078512f,0.3559191435167290418207f,\ -0.0423384874325624382951f,0.8962569818869624560520f,0.0792669980362326609402f,\ -0.2149514867261388406661f,0.3084002596083564862184f,0.1457610223920582370738f,\ -0.5638322964331675679617f,0.6681928703809085767773f,0.7715309042125101379739f,\ -0.3644939000586688848671f,0.7241095709372292743566f,0.5109856481565466790329f,\ -0.7492592023075983487246f,0.0935322123614654998836f,0.6873609600399674945947f,\ -0.4653574362777189166174f,0.2834338708350941926639f,0.1139584955905696417311f,\ -0.6886187601911135658384f,0.8966624572124947123442f,0.8901159605244814976288f,\ -0.6621780758434868685569f,0.5739364819547106977282f,0.7967040377802739881119f,\ -0.7702556784014074064970f,0.2963495189276508789966f,0.729639913718978516677f,\ -0.1199467917211827494572f,0.8369585267706058928638f,0.7130151705637984838049f,\ -0.9564173315765011063050f,0.2362741844905166255231f,0.3829952297292640861492f,\ -0.3854654409071321952140f,0.9956878617898979877410f,0.2388852521695121466916f,\ -0.0357548125472270175718f,0.8344528446849692748799f,0.4908081134490644426016f,\ -0.1072298401775326898155f,0.7292248632489435333781f,0.1444440063075330404896f,\ -0.7618560442692507983509f,0.3014073074948313002430f,0.8338433864005018181231f,\ -1.013809216729007589564f,0.4488437286282063176657f,0.9028988520348978363828f,\ -0.7342748763980897486192f,0.5492704923146081164020f,0.0619250478958671968233f,\ -0.1747947745500638971894f,0.7643392221916658346714f,0.2869233753851287982428f,\ -0.1186438529044472750540f,0.7261517086175122148717f,0.1110167797262640587697f,\ -0.1156665104854840142590f,0.1677179018762894047168f,0.9049771869312485117476f,\ -0.8140692858573190804350f,0.1865250841653489921601f,0.8328626043313867022277f,\ -0.4511026850510220786994f,0.5511713324178673101272f,1.0040394102716723168101f,\ -0.1134432764930088655131f,0.7136163206069113806862f,0.2389915016256592694699f,\ -0.5061510239067475991348f,0.1938531425179492451161f,0.267912781705172242663f,\ -0.594520593176991907214f,0.4421595740617755287971f,0.3838580911610497414799f,\ -0.6265966551277006857390f,0.4892019455111443759776f,0.5371648663643865395656f,\ -0.2336644699290637006150f,0.8580649693764487162539f,0.7447932141471096390006f,\ -0.30664577808112553070f,0.1126796888171682081703f,0.0673404850217956818526f,\ -0.3780061914448271664924f,0.3135468248495265064513f,0.8141814149801622768621f,\ -0.8656800272972641208113f,1.0330415543607425199468f,0.1517147576472806791426f,\ -0.6107832692276639052764f,0.5555300503019462432519f,0.6621194316643849164805f,\ -0.9359383537376269046604f,0.1578266511911156633197f,0.3288869400610432980336f,\ -0.4688911283964798393242f,0.1093517544178844447256f,0.7390278072154514710235f,\ -0.3915656081630794482784f,0.1803516698292359499156f,0.3140185989593758941751f,\ -0.2570435038916802361619f,0.0651252572213311814453f,0.1812803236410877871787f,\ -0.3918987512324060840108f,0.3907169202420177067658f,0.5847178774812699098007f,\ -0.1522469534945809221949f,0.4726351219523636792985f,0.8890284419930043480207f,\ -0.3043305148205690535690f,0.1282404489119809976039f,0.6689999411776240689775f,\ -0.4220981761434796641907f,0.2107039270298768085521f,0.3089304668962193911597f,\ -0.8825265124364938262858f,0.4570764804119011315287f,0.6317437032300170507426f,\ -0.6289949625530589782940f,0.4716158816756069738219f,0.4417016096894970100806f,\ -0.6297964082740089564183f,0.7506329678118981441060f,0.6853639001045995771122f,\ -0.6844909750084481325771f,0.3028385676048351293765f} - -#define CIRESULT {1.4391441245686327210507f,1.130955515640670316913f,1.1164484564631134144719f,\ -0.5343429881094952094145f,1.5313159234681512632648f,0.9218282568507811802760f,\ -1.1368031918334591257036f,1.309961324172885133166f,1.1768313149474189938104f,\ -1.1581725732800560724201f,1.198068547194847122128f,1.0167778558643913999759f,\ -0.8107284978807606234952f,0.9747572654361357225028f,1.2226962809307837520834f,\ -1.356863284326968122073f,1.4708283871101888173882f,1.0424189614104724110888f,\ -0.6175483783889722522176f,1.012434899444895508580f,1.4941377955828787360559f,\ -1.081247186686038253001f,1.189977918876721885155f,0.9361970185325101390106f,\ -1.0473314366303878575337f,0.6478815708564551467674f,1.103880390282215628872f,\ -1.208902068619972958174f,0.9405460211534443226711f,1.2708555309086870810376f,\ -1.2048457921815343141247f,1.0386992340805454304586f,0.9940470159552662332558f,\ -0.4129471251607437776165f,1.0483368304459323994138f,0.9626808065085141752348f,\ -0.9866797451792658213421f,1.2893127532844186333705f,0.6333368050416610106623f,\ -1.3849939050391590900091f,0.8412033774271403530065f,1.3484185557182311043789f,\ -0.6561721869869621137639f,0.8152667302376208624537f,0.8942162872449925803409f,\ -0.7354476761871528989190f,1.2302184692777484720239f,1.1419032200306009627866f,\ -0.8136425490751511002685f,1.0585917357001826122342f,1.5562281161680697749716f,\ -1.3215709464122720184776f,1.0936282246933759498830f,1.562690430228121041267f,\ -1.5431569076078051061529f,1.5549621593607869662890f,0.7985043985204253180754f,\ -1.3827954341839958640747f,1.3338048203354757603734f,1.1992311317991326546917f,\ -0.9398015526727905299964f,0.8526323846859752420002f,0.6516084904889641871151f,\ -0.9312161189612270240090f,1.4928235928235611407189f,1.1434135639085114544145f,\ -1.3304436504678796016066f,1.0279557218905930326969f,1.5707583700301124274290f,\ -1.18264027414866035315f,1.049240570305455033662f,1.1438977350867394200407f,\ -0.8645410048697405036577f,1.272544314036070156604f,1.2965854453389789036066f,\ -1.5441276936419627840991f,0.8474785980812834518261f,1.4222542688372477037717f,\ -1.1067340541491283989473f,0.6658230283826037654293f,0.7440600810961385258580f,\ -1.509454955782236762474f,0.7139904083352976993382f,1.3343109319103572119047f,\ -0.8754276015708571945240f,1.4375430902494801266300f,0.8182153660902479197503f,\ -0.6279916190243797213810f,1.3777792247900606525945f,1.5570776874524723254467f,\ -1.3896877170114805277734f,1.292290381577097857502f,0.9513544490495031702437f,\ -1.146595322853661613749f,1.0663673649265974496814f,0.9066444651210990857138f,\ -0.7936124351430207113367f,1.1025133400691302654195f,0.7646931356316959416120f,\ -1.3570006423237950254901f,1.0127507430242304042878f,0.6984070724030820853656f,\ -0.9777377069899801931285f,0.6381815285628557044006f,1.4447151619316793702552f,\ -0.7381184252357657626931f,0.9463444174447509515957f,1.3036540993301888313738f,\ -0.3993509460349408124458f,1.4425649666003559357108f,1.2703537792660923866350f,\ -0.3366052452908819825339f,0.9799364183556658058905f,0.6519110571169279833015f,\ -1.288935099739083156578f,0.766834829952783847418f,1.3765235555687964641436f,\ -0.9026821267000586512808f,0.7532458865053713870097f,1.1915253215495016370085f,\ -1.4398661339551832583084f,0.5960292480319858698934f,0.8683763627836410536887f,\ -1.307183356265154250409f,1.1437419441048803925298f,1.0721920855425228769064f,\ -1.5518517938677236500666f,1.2329687641584510249260f,0.5874976025749066854686f,\ -1.1457409989520814797004f,1.2187173974473419768572f,1.2272326680013900812583f,\ -1.3202499364548996307889f,1.3364966855772182352524f,1.5028659601895917319325f,\ -1.5039244799556488185743f,1.199080874147727016066f,0.8850027352965960103504f,\ -0.5797999065603636204003f,0.9935513093218836244702f,1.3250345117052622079257f,\ -0.7510747251416685088543f,1.3856864393507652977178f,1.0646397833458374204696f,\ -0.7161423103150551527918f,0.6220745390646167383153f,1.4237426982899421545881f,\ -1.4349026977530163762253f,1.0862935323189089054097f,0.7475103036060971595234f,\ -0.9640755596017442918821f,1.4756182374730877349123f,0.8992686396344509169865f,\ -1.0456992348735927311765f,1.316872193719026640224f,1.0937098269572853581622f,\ -0.3787889502350130777053f,1.1777575502770252224849f,1.466927792635024818679f,\ -1.198998549247170863907f,0.9317214709279717510526f,0.3994553068013038665818f,\ -0.9996993047110468433303f,1.0533682169916682713762f,1.1680862767422879322510f,\ -1.0968093743281353003027f,1.475564759332087749755f,0.5739680940616843640711f,\ -1.2132055498728515630091f,1.277641763762892734846f,1.2372616699165408515881f,\ -0.4908185034943345348424f,1.0764535824324550361553f,1.3508749145869605179371f,\ -1.282220574891209663448f,0.8033914160655766245611f,0.4529330910646225394345f,\ -1.3777085436870080137339f,0.9478851551815749010288f,1.2208388985822435923723f,\ -1.263077873207383738929f,1.284175149159334061721f,1.023436357706823729430f,\ -0.5626793926847969418148f,0.6728398111486185717567f,0.7545922256887819257187f,\ -1.5396608871785673056110f,0.5335122401588628937574f,1.0275094129340511805992f,\ -0.8338356239168208672297f,1.0426578447465559840168f,1.4617456602888381222982f,\ -0.6682797094798482717692f,1.3426136823908161321839f,1.3312882615539098907220f,\ -1.4697575902556172522395f,0.7877417380659905710161f,0.7165102522491650915981f,\ -1.3183788402186256139004f,0.4738958779540429211430f} - - -void sacoshsTest(void) { - float In[]=IN; - float Res[]=RESULT; - float out; - int i = 0; - - for (i=0;i<200;i++){ - if (In[i]<1) assert(1); - else { - out = sacoshs(In[i]); - assert ( ( fabs(out-Res[i]) / fabs(out) ) <1e-6); - } - } -} - -void cacoshsTest(void) { - float InR[]=CRIN; - float InI[]=CIIN; - float ResR[]=CRRESULT; - float ResI[]=CIRESULT; - int i=0; - floatComplex in,out; - - for (i=0;i<200;i++){ - in=FloatComplex(InR[i],InI[i]); - out=cacoshs(in); - assert( ( fabs(creals(out)-ResR[i]) / fabs(creals(out)) ) <1e-6); - assert( ( fabs(cimags(out)-ResI[i]) / fabs(cimags(out)) ) <1e-6); - } -} - -void sacoshaTest(void) { - float In[]=IN; - float Res[]=RESULT; - float out[200],in[200]; - int i = 0; - - for (i=0;i<200;i++){ - in[i]=In[i]; - } - - sacosha(in,200,out); - for (i=0;i<200;i++){ - if (isnan(out[i])) assert(1); - else{ - assert ( ( fabs(out[i]-Res[i]) / fabs(out[i]) ) <1e-6); - } - } -} - -void cacoshaTest(void) { - float InR[]=CRIN; - float InI[]=CIIN; - float ResR[]=CRRESULT; - float ResI[]=CIRESULT; - int i=0; - floatComplex in[200],out[200]; - - for (i=0;i<200;i++){ - in[i]=FloatComplex(InR[i],InI[i]); - } - cacosha(in,200,out); - for (i=0;i<200;i++){ - assert( ( fabs(creals(out[i])-ResR[i]) / fabs(creals(out[i])) ) <1e-6); - assert( ( fabs(cimags(out[i])-ResI[i]) / fabs(cimags(out[i])) ) <1e-6); - } -} - -int testAcosh(void) { - printf("\n>>>> Float Hyperbolic ArcCosine Tests\n"); - sacoshsTest(); - cacoshsTest(); - sacoshaTest(); - cacoshaTest(); - return 0; -} - -int main(void) { - assert(testAcosh() == 0); - return 0; -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-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 + * + */ + +#include "testAcosh.h" +#include "isnan.h" + +#ifdef _MSC_VER +#include +#define isnan(x) _isnan((double)x) +#endif + +#define IN {38.746443623676896095276f,39.8779044859111309052f,99.6399083640426397324f,\ +93.207842670381069183350f,6.8147667217999696731567f,71.874653641134500503540f,\ +65.928971720859408378601f,43.781969323754310607910f,95.70061699487268924713f,\ +39.777786191552877426147f,54.149620747193694114685f,14.754852838814258575439f,\ +91.972588421776890754700f,41.853474546223878860474f,90.448315022513270378113f,\ +32.027477025985717773438f,57.482325518503785133362f,75.726259034126996994019f,\ +32.547289272770285606384f,50.125551037490367889404f,26.862081931903958320618f,\ +11.706684622913599014282f,36.675705714151263237000f,87.538864836096763610840f,\ +52.483216533437371253967f,76.861125137656927108765f,82.899243896827101707458f,\ +64.99033216387033462524f,56.250627012923359870911f,21.698794979602098464966f,\ +93.22312804870307445526f,93.5097210109233856201f,97.608120972290635108948f,\ +91.35094834491610527039f,26.843591919168829917908f,9.1870715841650962829590f,\ +17.129724519327282905579f,73.117265943437814712524f,86.922781122848391532898f,\ +1.4808017760515213012695f,65.071928361430764198303f,42.254429217427968978882f,\ +23.262092983350157737732f,31.955500133335590362549f,74.261871399357914924622f,\ +77.881882060319185256958f,65.248953877016901969910f,90.324406325817108154297f,\ +86.69646182097494602203f,70.879780035465955734253f,69.452034076675772666931f,\ +84.671579115092754364014f,93.227435695007443428040f,95.654127094894647598267f,\ +16.239900095388293266296f,12.728751823306083679199f,95.707353064790368080139f,\ +67.644099798053503036499f,39.798104530200362205505f,11.081875301897525787354f,\ +50.97153154201805591583f,58.446559030562639236450f,25.919713405892252922058f,\ +29.182348400354385375977f,6.0309174004942178726196f,90.43274922296404838562f,\ +61.944271018728613853455f,25.037935934960842132568f,83.850894169881939888000f,\ +82.732185069471597671509f,73.220202280208468437195f,29.458374157547950744629f,\ +29.091028729453682899475f,70.458725746721029281616f,30.465652560815215110779f,\ +75.730663724243640899658f,73.18075490184128284454f,69.053836632519960403442f,\ +62.402765033766627311707f,41.599050164222717285156f,28.105994546785950660706f,\ +5.6220385245978832244873f,58.040395518764853477478f,0.4246918484568595886230f,\ +68.2817161548882722855f,89.133544359356164932251f,92.980264825746417045593f,\ +28.40001545846462249756f,9.885430941358208656311f,41.369083430618047714233f,\ +64.121548598632216453552f,64.692758955061435699463f,47.02662643976509571075f,\ +60.481913108378648757935f,67.138904659077525138855f,71.394702047109603881836f,\ +54.127137595787644386292f,39.052018057554960250854f,1.1089378502219915390015f,\ +90.150084160268306732178f,13.887455360963940620422f,8.5074969567358493804932f,\ +34.66010238043963909149f,42.338709905743598937988f,80.213972786441445351f,\ +31.7881367169320583344f,18.021041667088866233826f,69.688742049038410186768f,\ +35.482168616726994514465f,16.12617420032620429993f,75.34236568026244640350f,\ +62.194181978702545166016f,51.510728383436799049377f,67.819245439022779464722f,\ +61.666865786537528038025f,70.212037675082683563232f,13.621602999046444892883f,\ +60.870522353798151016235f,18.923167092725634574890f,47.614179179072380065918f,\ +17.161004850640892982483f,41.371036972850561141968f,15.31781828962266445160f,\ +22.868881560862064361572f,95.856341393664479255676f,39.499193150550127029419f,\ +2.500818995758891106f,44.927055388689041137695f,91.384086245670914649963f,\ +11.012465786188840866089f,74.87958460114896297455f,0.7881646975874900817871f,\ +23.523587780073285102844f,80.106287542730569839478f,65.456348611041903495789f,\ +51.620832458138465881348f,70.271815219894051551819f,5.5151230655610561370850f,\ +62.56400248967111110687f,84.313133545219898223877f,17.294042231515049934387f,\ +41.730730701237916946411f,81.875373004004359245300f,25.327575206756591796875f,\ +86.085468018427491188049f,17.212611716240644454956f,78.060937067493796348572f,\ +13.735765032470226287842f,0.2187759149819612503052f,1.4656470157206058502197f,\ +30.469974083825945854187f,80.307766422629356384277f,99.052629480138421058655f,\ +82.85992136225104331970f,87.21015579067170619965f,29.531141556799411773682f,\ +58.27610609121620655060f,29.06773509457707405090f,2.0005736034363508224f,\ +71.4346818625926971436f,26.664068037644028663635f,51.992803346365690231323f,\ +48.17320345900952816010f,0.0918259844183921813965f,38.418471114709973335266f,\ +49.06664276495575904846f,44.197808159515261650085f,65.678765252232551574707f,\ +10.470610717311501502991f,42.787145730108022689819f,75.105277216061949729919f,\ +36.962236650288105010986f,84.119305433705449104309f,90.374342072755098342896f,\ +44.184404192492365837097f,1.0920032858848571777344f,20.380018139258027076721f,\ +85.418348293751478195190f,39.327101549133658409119f,97.573022358119487762451f,\ +8.4199145901948213577271f,23.39450428262352943420f,48.397052986547350883484f,\ +33.292300626635551452637f,96.453859517350792884827f,52.920697536319494247437f,\ +7.9968032892793416976929f,75.475437380373477935791f,4.476350219920277596f,\ +84.631874877959489822388f,20.008285669609904289246f,69.44785490632057189941f,\ +28.204387659206986427307f,79.546741675585508346558f,20.281786611303687095642f,\ +78.075716458261013031006f,93.606285052374005317688f,88.801648560911417007446f,\ +33.848348213359713554382f,89.761531725525856018066f} + +#define RESULT {4.3500195892822599574856f,4.378812333443298676627f,5.2946847693089331698957f,\ +5.2279502699832844925254f,2.6068118507181217147206f,4.968022463585481496295f,\ +4.8816676362403299549442f,4.4722388068202851840738f,5.2543446283333992141706f,\ +4.3762977630646631155287f,4.6848128785767624293612f,3.3835688928264802122214f,\ +5.2146082054939908445590f,4.4271792498758397726988f,5.1978952030053422461719f,\ +4.159497560939560578674f,4.7445490293632399669832f,5.0202285648475850621253f,\ +4.1756051841813626168687f,4.6075785448582253778227f,3.9835162329116351465075f,\ +3.1514779837977200394050f,4.2950758361772223281605f,5.165197419194649697261f,\ +4.653549840642725143880f,5.035105083560019956224f,5.1107367420045859418565f,\ +4.8673265089936572636020f,4.7228853485288873059744f,3.7698725167565876326137f,\ +5.2281142583800894740875f,5.2311839874435639430317f,5.2740816359097371091025f,\ +5.2078258853539018957690f,3.982827186610214287299f,2.9079691610609703644741f,\ +3.5331093207527803912171f,4.9851649496034715625115f,5.1581342419725935144470f,\ +0.9450506373811344840163f,4.8685813827251553931319f,4.4367163112396088564537f,\ +3.8395099847061766595857f,4.1572465837028591550961f,5.0006994941965512424531f,\ +5.0482993082581542054754f,4.8712984679982609392823f,5.1965242406243383754827f,\ +5.1555269912574592794385f,4.954082618091184997411f,4.9337317049920867972901f,\ +5.1318923054243690273779f,5.228160467885317963521f,5.2538586990129676479455f,\ +3.4796690893012534040452f,3.2354639460120244720542f,5.2544150166005954005755f,\ +4.9073526741507107473694f,4.3768085901327413722584f,3.0964161555968114925008f,\ +4.6243182142058252281913f,4.7611868033967539304285f,3.9477786701409951497510f,\ +4.0664175090632737052943f,2.4831009250018341028010f,5.1977230816033159754852f,\ +4.8193171469932529760172f,3.9131402651137854320496f,5.1221517738388655516246f,\ +5.1087193584020944570057f,4.98657191625376672306f,4.0758371911626332106948f,\ +4.0632814774108050315249f,4.9481239065017428302440f,4.1094776238806378643176f,\ +5.0202867341820684998766f,4.9860329708595516606806f,4.9279811897230469952547f,\ +4.8266925606060153697285f,4.421080015153528108840f,4.0288134359166507536543f,\ +2.4118364183807097234080f,4.7542122019999739634954f,0,\ +4.9167355873994562642793f,5.1832514554357551617159f,5.2255055264178071894321f,\ +4.0392267678246307482937f,2.9816410740582028893186f,4.4155348942144980739499f,\ +4.8538668500531736427206f,4.8627367182462748473881f,4.5437480774189333843083f,\ +4.7954231948046981415246f,4.8998553915953095838631f,4.9613217960209823331752f,\ +4.6843975172654603866818f,4.3578777660333960497496f,0.4626347638559775710121f,\ +5.1945923008314265345575f,3.3228343258666956927527f,2.830622803369744922009f,\ +4.238528249750794785200f,4.438709481897562980635f,5.077806047884725337838f,\ +4.1519928438683244564800f,3.5839165427001460351164f,4.9371344840241793150426f,\ +4.2619788264190443527468f,3.4726281293145686568380f,5.0151457380383783757338f,\ +4.8233440014012511909414f,4.6348430510092004652734f,4.9099388325030934865367f,\ +4.81482819845952114690f,4.9446162371720561168331f,3.3034540778469194677314f,\ +4.8018287252966844746993f,3.6328352359975357721567f,4.556167488561304601546f,\ +3.5349368514717505185274f,4.41558212917596915048f,3.4210967363570983224008f,\ +3.8224459155669441301484f,5.2559705982049909067655f,4.3692671498839636967659f,\ +1.5671566063449566819088f,4.4980634827120455909721f,5.2081885950679547292452f,\ +3.0901072205487807309510f,5.0089838747007107144782f,0,\ +3.850698741029123794988f,5.076462566530570263978f,4.8744723131002718474747f,\ +4.6369786693462113902342f,4.9454673471881154256380f,2.3923187222394570738970f,\ +4.8292733779221936885051f,5.127649658742538640865f,3.5426723072020398497273f,\ +4.424241396092424949416f,5.0983081346685077406278f,3.9246509637740216724922f,\ +5.1484540607983912963164f,3.537944651477085589164f,5.0505959169093319616195f,\ +3.3118225003889145696689f,0,0.9310418690232507010762f,\ +4.1096195393026562214800f,5.0789747485012091132717f,5.2887730188734272118722f,\ +5.1102622536361952398920f,5.1614350980940946200803f,4.0783057415377843568649f,\ +4.7582657239633334711471f,4.0624799671967695147146f,1.3172890037212539038336f,\ +4.9618816771260449982606f,3.9761122565887623281f,4.64415999832871140285f,\ +4.5678423566873336270078f,0,4.3415161209508754680542f,\ +4.5862227542495350718355f,4.481694375737592217490f,4.8778648861550966131517f,\ +3.0394313734202933474648f,4.4492483198356360674097f,5.0119936831694982259933f,\ +4.3028609023006350042806f,5.1253479422290126876760f,5.1970769705972195140475f,\ +4.4813909798397162376205f,0.4257373352329655857851f,3.7070996451820255046528f,\ +5.1406738437618608728030f,4.3648993866947414232982f,5.2737219653314042489001f,\ +2.820201721217977297584f,3.8451912168199942065883f,4.5724793527790357217100f,\ +4.1982477070823893683382f,5.2621850617105074832125f,4.661852422144622920541f,\ +2.7682565538529817494862f,5.0169105620070073570105f,2.1792385497944919414692f,\ +5.131423242241443638534f,3.6886685835548016498819f,4.9336715234659216378077f,\ +4.032310316197459165721f,5.0694524637856641646749f,3.7022621441401133424165f,\ +5.0507852459760567143121f,5.2322161767096924123166f,5.1795206909289932539764f,\ +4.2148191048546337356129f,5.19027265701442619417f} + +#define CRIN {0.1483933464623987674713f,0.5565875237807631492615f,0.4628333351574838161469f,\ +0.9158247429877519607544f,0.0444016349501907825470f,0.8175177471712231636047f,\ +0.5320580708794295787811f,0.2989391684532165527344f,0.5029047676362097263336f,\ +0.4266923693940043449402f,0.3965902938507497310638f,0.7440190296620130538940f,\ +0.7921002809889614582062f,0.5715918401256203651428f,0.4155966262333095073700f,\ +0.2953372262418270111084f,0.1075767637230455875397f,0.7572548976168036460876f,\ +0.93660886352881789207f,0.7694978956133127212524f,0.0902581927366554737091f,\ +0.4731486858800053596497f,0.4765542480163276195526f,0.6361737176775932312012f,\ +0.5064576440490782260895f,0.9049607468768954277039f,0.6742701171897351741791f,\ +0.3656400945037603378296f,0.6837903787381947040558f,0.4100628877058625221252f,\ +0.3582529271952807903290f,0.7118562050163745880127f,0.7966963038779795169830f,\ +0.9753969227895140647888f,0.5733916512690484523773f,0.8998429346829652786255f,\ +0.5953218084760010242462f,0.3765322910621762275696f,0.9104355531744658946991f,\ +0.1861076802015304565430f,0.6715109744109213352203f,0.2566455481573939323425f,\ +0.9819463356398046016693f,0.7608660291880369186401f,0.8556561623699963092804f,\ +0.8441717335954308509827f,0.3884846637956798076630f,0.4608103148639202117920f,\ +0.8381579727865755558014f,0.5278776129707694053650f,0.0187810636125504970551f,\ +0.2611750457435846328735f,0.6092445817776024341583f,0.0081067951396107673645f,\ +0.0276411953382194042206f,0.0158492103219032287598f,0.8109004520811140537262f,\ +0.2429467244073748588562f,0.3353355019353330135345f,0.4142854567617177963257f,\ +0.5946544189937412738800f,0.9080675477162003517151f,0.992223232518881559372f,\ +0.6239561475813388824463f,0.0789771513082087039948f,0.5889828568324446678162f,\ +0.2523608407936990261078f,0.5871062893420457839966f,0.0000379872508347034454f,\ +0.4244823055341839790344f,0.69984475849196314812f,0.4405533373355865478516f,\ +0.6495711454190313816071f,0.4199861017987132072449f,0.2716385438106954097748f,\ +0.0272838752716779708862f,0.6936013107188045978546f,0.1495713749900460243f,\ +0.5206344048492610454559f,0.9685971699655055999756f,0.9657785953022539615631f,\ +0.0654204180464148521423f,0.9626990980468690395355f,0.2655456010252237319946f,\ +0.8290728745050728321075f,0.1334408046677708625793f,0.8514542016200721263885f,\ +0.8984219655394554138184f,0.1995774977840483188629f,0.0138073815032839775085f,\ +0.2245407640002667903900f,0.3930436577647924423218f,0.8261723746545612812042f,\ +0.5051761353388428688049f,0.5651183272711932659149f,0.822583723813295364380f,\ +0.9197964356280863285065f,0.4713199352845549583435f,0.9223483256064355373383f,\ +0.2136987913399934768677f,0.7260794681496918201447f,0.9689361499622464179993f,\ +0.8346118587069213390350f,0.8257038742303848266602f,0.1350833275355398654938f,\ +0.7953761396929621696472f,0.8992118402384221553802f,0.2715440522879362106323f,\ +0.9219025229103863239288f,0.1750466236844658851624f,0.3323095212690532207489f,\ +0.9493130259215831756592f,0.7118741781450808048248f,0.8032329222187399864197f,\ +0.3628453887067735195160f,0.7530685458332300186157f,0.2641473677940666675568f,\ +0.9660940738394856452942f,0.8041944387368857860565f,0.5316947177052497863770f,\ +0.1673618280328810214996f,0.955579827539622783661f,0.6473058252595365047455f,\ +0.2645611818879842758179f,0.5411860425956547260284f,0.4980195099487900733948f,\ +0.0190768833272159099579f,0.4227291680872440338135f,0.8374647037126123905182f,\ +0.4151327675208449363708f,0.3497115275822579860687f,0.4844544250518083572388f,\ +0.3347255480475723743439f,0.2362121837213635444641f,0.0928130256943404674530f,\ +0.0737370252609252929688f,0.4197955676354467868805f,0.9802277712151408195496f,\ +0.8419611467979848384857f,0.6906680446118116378784f,0.2502765958197414875031f,\ +0.8266033390536904335022f,0.1875236849300563335419f,0.5023231171071529388428f,\ +0.8916302681900560855865f,0.8934147348627448081970f,0.1574523574672639369965f,\ +0.1629528645426034927368f,0.5226223585195839405060f,0.8417599620297551155090f,\ +0.5858130785636603832245f,0.1322202011942863464355f,0.8028764897026121616364f,\ +0.5250511718913912773132f,0.2528006075881421566010f,0.4602345135062932968140f,\ +0.996287219692021608353f,0.4019785309210419654846f,0.1399875725619494915009f,\ +0.5081327147781848907471f,0.9440425024367868900299f,0.9318959629163146018982f,\ +0.6445578685961663722992f,0.5729571748524904251099f,0.4810055238194763660431f,\ +0.6713787661865353584290f,0.0962744313292205333710f,0.8855805248022079467773f,\ +0.3892059125937521457672f,0.2907031057402491569519f,0.4209313853643834590912f,\ +0.9504273366183042526245f,0.482190326321870088577f,0.2289973804727196693420f,\ +0.2940405677072703838348f,0.6957426778972148895264f,0.9139824123121798038483f,\ +0.2068154653534293174744f,0.6285024262033402919769f,0.4031575415283441543579f,\ +0.3064021435566246509552f,0.3148818286135792732239f,0.7400112929753959178925f,\ +0.8853011503815650939941f,0.788494529668241739273f,0.8977585239335894584656f,\ +0.0339450328610837459564f,0.8802101369947195053101f,0.5418177028186619281769f,\ +0.9511840576305985450745f,0.5574890668503940105438f,0.1312845982611179351807f,\ +0.9453403786756098270416f,0.2518341308459639549255f,0.2607447705231606960297f,\ +0.1215410251170396804810f,0.9136986923404037952423f,0.9382542567327618598938f,\ +0.3105722474865615367889f,0.9309121072292327880859f} + +#define CIIN {0.5225624092854559421539f,0.7617142526432871818542f,0.3009174778126180171967f,\ +0.1853434126824140548706f,0.5148605112917721271515f,0.7257346073165535926819f,\ +0.7033738414756953716278f,0.5664369426667690277100f,0.7816161573864519596100f,\ +0.3330347230657935142517f,0.4017280167900025844574f,0.8503915611654520034790f,\ +0.41114101978018879890f,0.1586530329659581184387f,0.6542402538470923900604f,\ +0.9449902996420860290527f,0.400338994804769754410f,0.9679889930412173271179f,\ +0.32740902295336127281f,0.8933845367282629013062f,0.6218692888505756855011f,\ +0.0985169494524598121643f,0.7449700380675494670868f,0.3134250529110431671143f,\ +0.1409188793040812015533f,0.3239218806847929954529f,0.9958796552382409572601f,\ +0.2412899602204561233521f,0.4753343504853546619415f,0.9194070147350430488586f,\ +0.0450326460413634777069f,0.8481595069169998168945f,0.8928631045855581760406f,\ +0.1469233212992548942566f,0.4904643460176885128021f,0.9986877571791410446167f,\ +0.3392539476044476032257f,0.8790708789601922035217f,0.3107871781103312969208f,\ +0.1200211457908153533936f,0.0909670502878725528717f,0.5804221173748373985291f,\ +0.446611551102250814438f,0.3501139078289270401001f,0.7262432840652763843536f,\ +0.3650169344618916511536f,0.5597011330537497997284f,0.434090383350849151611f,\ +0.5082829319871962070465f,0.3487796885892748832703f,0.8136124997399747371674f,\ +0.337404197081923484802f,0.7742837746627628803253f,0.0156080657616257667542f,\ +0.0195691580884158611298f,0.0445443131029605865479f,0.4240885511972010135651f,\ +0.8158838218078017234802f,0.9913199446164071559906f,0.5120379645377397537231f,\ +0.1021917951293289661407f,0.7161553995683789253235f,0.4527317988686263561249f,\ +0.2445004582405090332031f,0.1668560453690588474274f,0.9187424210831522941589f,\ +0.3418669118545949459076f,0.4624818544834852218628f,0.0400874321348965167999f,\ +0.4700120547786355018616f,0.8552942494861781597137f,0.3308605216443538665771f,\ +0.0322206378914415836334f,0.9760772576555609703064f,0.0763854510150849819183f,\ +0.2165335658937692642212f,0.2348632332868874073029f,0.1446668924763798713684f,\ +0.5313451024703681468964f,0.4441541358828544616699f,0.5759493880905210971832f,\ +0.3719177199527621269226f,0.5167253850959241390228f,0.5186656024307012557983f,\ +0.6306529571302235126495f,0.0928382659330964088440f,0.5421750987879931926727f,\ +0.2833826132118701934814f,0.2819099412299692630768f,0.1141945635899901390076f,\ +0.7321730605326592922211f,0.9823690224438905715942f,0.8243003231473267078400f,\ +0.6485677706077694892883f,0.5304958778433501720428f,0.6958626955747604370117f,\ +0.6050392785109579563141f,0.2683336613699793815613f,0.5511700971983373165131f,\ +0.1174971889704465866089f,0.7958277617581188678741f,0.4983139941468834877014f,\ +0.9196587274782359600067f,0.1420703046023845672607f,0.389312467072159051895f,\ +0.2658497532829642295837f,0.9480321384035050868988f,0.2326095197349786758423f,\ +0.0139051643200218677521f,0.9270462663844227790833f,0.4878733339719474315643f,\ +0.0354842916131019592285f,0.6607114099897444248199f,0.0879401965066790580750f,\ +0.8046676008962094783783f,0.212315237149596214294f,0.9163186331279575824738f,\ +0.9393384093418717384338f,0.3174265320412814617157f,0.9574301876127719879150f,\ +0.7951935962773859500885f,0.3240787154063582420349f,0.0472964248619973659515f,\ +0.1696171183139085769653f,0.7654392314143478870392f,0.2554624872282147407532f,\ +0.1189010548405349254608f,0.7469239532947540283203f,0.0616608508862555027008f,\ +0.1056091515347361564636f,0.1581688239239156246185f,0.9732552450150251388550f,\ +0.8786917333491146564484f,0.1824825564399361610413f,0.9303942839615046977997f,\ +0.4655157290399074554443f,0.5399280847050249576569f,0.9143392136320471763611f,\ +0.0622840351425111293793f,0.6500507537275552749634f,0.2340233740396797657013f,\ +0.3603484155610203742981f,0.1917369994334876537323f,0.2371335849165916442871f,\ +0.4136920445598661899567f,0.2661342276260256767273f,0.3891090690158307552338f,\ +0.6622495856136083602905f,0.4503725995309650897980f,0.3829893553629517555237f,\ +0.1937121297232806682587f,0.9629272706806659698486f,0.6385000632144510746002f,\ +0.2695108866319060325623f,0.1092974594794213771820f,0.0598662365227937698364f,\ +0.1431378168053925037384f,0.2944079088047146797180f,0.9022735017351806163788f,\ +0.9111119657754898071289f,0.9847188093699514865875f,0.0592310009524226188660f,\ +0.5464080139063298702240f,0.5080275069922208786011f,0.6546461437828838825226f,\ +0.9597736010327935218811f,0.1577645908109843730927f,0.1818120293319225311279f,\ +0.4555030376650393009186f,0.1048952480778098106384f,0.7636235631071031093597f,\ +0.1893162522464990615845f,0.1596221593208611011505f,0.3115166993811726570129f,\ +0.2491372707299888134003f,0.0469047501683235168457f,0.0797643386758863925934f,\ +0.3945369226858019828796f,0.3254697113297879695892f,0.5811151321977376937866f,\ +0.1456566532142460346222f,0.4704219633713364601135f,0.8631705637089908123016f,\ +0.1648640967905521392822f,0.0801398889161646366119f,0.4932156866416335105896f,\ +0.4345335862599313259125f,0.1079503614455461502075f,0.2686753761954605579376f,\ +0.7417223947122693061829f,0.4086893904022872447968f,0.6706044673919677734375f,\ +0.4159612008370459079742f,0.4766113189980387687683f,0.4431825890205800533295f,\ +0.6688354592770338058472f,0.5834077899344265460968f,0.4861929873004555702209f,\ +0.715783319901674985886f,0.1403244398534297943115f} + +#define CRRESULT {0.5053397031743451783825f,0.7650083608446867078356f,0.3289296819323739295982f,\ +0.3563456766158749622342f,0.4948207655225617118688f,0.8169593462846268527855f,\ +0.7132198900639351579755f,0.5570137230416445373038f,0.7685376318852206178889f,\ +0.3559803193123551312560f,0.4189790595413633300659f,0.8813522345691391368661f,\ +0.5405451162482487470484f,0.1905551975849387180695f,0.6493731034151291048317f,\ +0.8578709195697519218626f,0.3922142862720902067863f,0.9642946930057294530059f,\ +0.5389615746319644795648f,0.9186094888728127960675f,0.5890418064066422765279f,\ +0.1113977102429560134267f,0.7345860770241963155769f,0.3799876579856086289411f,\ +0.1619970506356118999935f,0.51382943864194075001f,0.9605702232101991366875f,\ +0.2552214504374311077051f,0.5588288246069162967800f,0.8545155572742579863643f,\ +0.0482073009402987154304f,0.8701819105023789191478f,0.9267094766915666692597f,\ +0.3583874762657675017152f,0.5394241582016752190043f,1.0267057888096897677599f,\ +0.3962322220487046187110f,0.8200372580795054489045f,0.5035682683774097556650f,\ +0.1218215489911998739014f,0.1217295472085216101465f,0.5645974853924803360528f,\ +0.6787204142960019392916f,0.4641409785094591788912f,0.8320374579652175528466f,\ +0.5202648072575078996849f,0.5635084163999081185992f,0.4608376215542885900867f,\ +0.6521335567127740651117f,0.3901559225476997627702f,0.7433295520896158192770f,\ +0.3414853587252406064145f,0.7876437052847802267053f,0.0156079448330699189357f,\ +0.0195753850507095344957f,0.0445351746116087257588f,0.5619901990592348628439f,\ +0.7563216032216260042986f,0.8953230010983072029163f,0.5250759023565449989945f,\ +0.1262270783291525866332f,0.8463340938014771719367f,0.6903512283163251161966f,\ +0.3002023271844543317322f,0.1665929038330317135674f,0.8881085995755062523216f,\ +0.3450945758035259824936f,0.5168125326109850314893f,0.0400767031552608649081f,\ +0.4881659313644853837033f,0.8717577944100705078512f,0.3559191435167290418207f,\ +0.0423384874325624382951f,0.8962569818869624560520f,0.0792669980362326609402f,\ +0.2149514867261388406661f,0.3084002596083564862184f,0.1457610223920582370738f,\ +0.5638322964331675679617f,0.6681928703809085767773f,0.7715309042125101379739f,\ +0.3644939000586688848671f,0.7241095709372292743566f,0.5109856481565466790329f,\ +0.7492592023075983487246f,0.0935322123614654998836f,0.6873609600399674945947f,\ +0.4653574362777189166174f,0.2834338708350941926639f,0.1139584955905696417311f,\ +0.6886187601911135658384f,0.8966624572124947123442f,0.8901159605244814976288f,\ +0.6621780758434868685569f,0.5739364819547106977282f,0.7967040377802739881119f,\ +0.7702556784014074064970f,0.2963495189276508789966f,0.729639913718978516677f,\ +0.1199467917211827494572f,0.8369585267706058928638f,0.7130151705637984838049f,\ +0.9564173315765011063050f,0.2362741844905166255231f,0.3829952297292640861492f,\ +0.3854654409071321952140f,0.9956878617898979877410f,0.2388852521695121466916f,\ +0.0357548125472270175718f,0.8344528446849692748799f,0.4908081134490644426016f,\ +0.1072298401775326898155f,0.7292248632489435333781f,0.1444440063075330404896f,\ +0.7618560442692507983509f,0.3014073074948313002430f,0.8338433864005018181231f,\ +1.013809216729007589564f,0.4488437286282063176657f,0.9028988520348978363828f,\ +0.7342748763980897486192f,0.5492704923146081164020f,0.0619250478958671968233f,\ +0.1747947745500638971894f,0.7643392221916658346714f,0.2869233753851287982428f,\ +0.1186438529044472750540f,0.7261517086175122148717f,0.1110167797262640587697f,\ +0.1156665104854840142590f,0.1677179018762894047168f,0.9049771869312485117476f,\ +0.8140692858573190804350f,0.1865250841653489921601f,0.8328626043313867022277f,\ +0.4511026850510220786994f,0.5511713324178673101272f,1.0040394102716723168101f,\ +0.1134432764930088655131f,0.7136163206069113806862f,0.2389915016256592694699f,\ +0.5061510239067475991348f,0.1938531425179492451161f,0.267912781705172242663f,\ +0.594520593176991907214f,0.4421595740617755287971f,0.3838580911610497414799f,\ +0.6265966551277006857390f,0.4892019455111443759776f,0.5371648663643865395656f,\ +0.2336644699290637006150f,0.8580649693764487162539f,0.7447932141471096390006f,\ +0.30664577808112553070f,0.1126796888171682081703f,0.0673404850217956818526f,\ +0.3780061914448271664924f,0.3135468248495265064513f,0.8141814149801622768621f,\ +0.8656800272972641208113f,1.0330415543607425199468f,0.1517147576472806791426f,\ +0.6107832692276639052764f,0.5555300503019462432519f,0.6621194316643849164805f,\ +0.9359383537376269046604f,0.1578266511911156633197f,0.3288869400610432980336f,\ +0.4688911283964798393242f,0.1093517544178844447256f,0.7390278072154514710235f,\ +0.3915656081630794482784f,0.1803516698292359499156f,0.3140185989593758941751f,\ +0.2570435038916802361619f,0.0651252572213311814453f,0.1812803236410877871787f,\ +0.3918987512324060840108f,0.3907169202420177067658f,0.5847178774812699098007f,\ +0.1522469534945809221949f,0.4726351219523636792985f,0.8890284419930043480207f,\ +0.3043305148205690535690f,0.1282404489119809976039f,0.6689999411776240689775f,\ +0.4220981761434796641907f,0.2107039270298768085521f,0.3089304668962193911597f,\ +0.8825265124364938262858f,0.4570764804119011315287f,0.6317437032300170507426f,\ +0.6289949625530589782940f,0.4716158816756069738219f,0.4417016096894970100806f,\ +0.6297964082740089564183f,0.7506329678118981441060f,0.6853639001045995771122f,\ +0.6844909750084481325771f,0.3028385676048351293765f} + +#define CIRESULT {1.4391441245686327210507f,1.130955515640670316913f,1.1164484564631134144719f,\ +0.5343429881094952094145f,1.5313159234681512632648f,0.9218282568507811802760f,\ +1.1368031918334591257036f,1.309961324172885133166f,1.1768313149474189938104f,\ +1.1581725732800560724201f,1.198068547194847122128f,1.0167778558643913999759f,\ +0.8107284978807606234952f,0.9747572654361357225028f,1.2226962809307837520834f,\ +1.356863284326968122073f,1.4708283871101888173882f,1.0424189614104724110888f,\ +0.6175483783889722522176f,1.012434899444895508580f,1.4941377955828787360559f,\ +1.081247186686038253001f,1.189977918876721885155f,0.9361970185325101390106f,\ +1.0473314366303878575337f,0.6478815708564551467674f,1.103880390282215628872f,\ +1.208902068619972958174f,0.9405460211534443226711f,1.2708555309086870810376f,\ +1.2048457921815343141247f,1.0386992340805454304586f,0.9940470159552662332558f,\ +0.4129471251607437776165f,1.0483368304459323994138f,0.9626808065085141752348f,\ +0.9866797451792658213421f,1.2893127532844186333705f,0.6333368050416610106623f,\ +1.3849939050391590900091f,0.8412033774271403530065f,1.3484185557182311043789f,\ +0.6561721869869621137639f,0.8152667302376208624537f,0.8942162872449925803409f,\ +0.7354476761871528989190f,1.2302184692777484720239f,1.1419032200306009627866f,\ +0.8136425490751511002685f,1.0585917357001826122342f,1.5562281161680697749716f,\ +1.3215709464122720184776f,1.0936282246933759498830f,1.562690430228121041267f,\ +1.5431569076078051061529f,1.5549621593607869662890f,0.7985043985204253180754f,\ +1.3827954341839958640747f,1.3338048203354757603734f,1.1992311317991326546917f,\ +0.9398015526727905299964f,0.8526323846859752420002f,0.6516084904889641871151f,\ +0.9312161189612270240090f,1.4928235928235611407189f,1.1434135639085114544145f,\ +1.3304436504678796016066f,1.0279557218905930326969f,1.5707583700301124274290f,\ +1.18264027414866035315f,1.049240570305455033662f,1.1438977350867394200407f,\ +0.8645410048697405036577f,1.272544314036070156604f,1.2965854453389789036066f,\ +1.5441276936419627840991f,0.8474785980812834518261f,1.4222542688372477037717f,\ +1.1067340541491283989473f,0.6658230283826037654293f,0.7440600810961385258580f,\ +1.509454955782236762474f,0.7139904083352976993382f,1.3343109319103572119047f,\ +0.8754276015708571945240f,1.4375430902494801266300f,0.8182153660902479197503f,\ +0.6279916190243797213810f,1.3777792247900606525945f,1.5570776874524723254467f,\ +1.3896877170114805277734f,1.292290381577097857502f,0.9513544490495031702437f,\ +1.146595322853661613749f,1.0663673649265974496814f,0.9066444651210990857138f,\ +0.7936124351430207113367f,1.1025133400691302654195f,0.7646931356316959416120f,\ +1.3570006423237950254901f,1.0127507430242304042878f,0.6984070724030820853656f,\ +0.9777377069899801931285f,0.6381815285628557044006f,1.4447151619316793702552f,\ +0.7381184252357657626931f,0.9463444174447509515957f,1.3036540993301888313738f,\ +0.3993509460349408124458f,1.4425649666003559357108f,1.2703537792660923866350f,\ +0.3366052452908819825339f,0.9799364183556658058905f,0.6519110571169279833015f,\ +1.288935099739083156578f,0.766834829952783847418f,1.3765235555687964641436f,\ +0.9026821267000586512808f,0.7532458865053713870097f,1.1915253215495016370085f,\ +1.4398661339551832583084f,0.5960292480319858698934f,0.8683763627836410536887f,\ +1.307183356265154250409f,1.1437419441048803925298f,1.0721920855425228769064f,\ +1.5518517938677236500666f,1.2329687641584510249260f,0.5874976025749066854686f,\ +1.1457409989520814797004f,1.2187173974473419768572f,1.2272326680013900812583f,\ +1.3202499364548996307889f,1.3364966855772182352524f,1.5028659601895917319325f,\ +1.5039244799556488185743f,1.199080874147727016066f,0.8850027352965960103504f,\ +0.5797999065603636204003f,0.9935513093218836244702f,1.3250345117052622079257f,\ +0.7510747251416685088543f,1.3856864393507652977178f,1.0646397833458374204696f,\ +0.7161423103150551527918f,0.6220745390646167383153f,1.4237426982899421545881f,\ +1.4349026977530163762253f,1.0862935323189089054097f,0.7475103036060971595234f,\ +0.9640755596017442918821f,1.4756182374730877349123f,0.8992686396344509169865f,\ +1.0456992348735927311765f,1.316872193719026640224f,1.0937098269572853581622f,\ +0.3787889502350130777053f,1.1777575502770252224849f,1.466927792635024818679f,\ +1.198998549247170863907f,0.9317214709279717510526f,0.3994553068013038665818f,\ +0.9996993047110468433303f,1.0533682169916682713762f,1.1680862767422879322510f,\ +1.0968093743281353003027f,1.475564759332087749755f,0.5739680940616843640711f,\ +1.2132055498728515630091f,1.277641763762892734846f,1.2372616699165408515881f,\ +0.4908185034943345348424f,1.0764535824324550361553f,1.3508749145869605179371f,\ +1.282220574891209663448f,0.8033914160655766245611f,0.4529330910646225394345f,\ +1.3777085436870080137339f,0.9478851551815749010288f,1.2208388985822435923723f,\ +1.263077873207383738929f,1.284175149159334061721f,1.023436357706823729430f,\ +0.5626793926847969418148f,0.6728398111486185717567f,0.7545922256887819257187f,\ +1.5396608871785673056110f,0.5335122401588628937574f,1.0275094129340511805992f,\ +0.8338356239168208672297f,1.0426578447465559840168f,1.4617456602888381222982f,\ +0.6682797094798482717692f,1.3426136823908161321839f,1.3312882615539098907220f,\ +1.4697575902556172522395f,0.7877417380659905710161f,0.7165102522491650915981f,\ +1.3183788402186256139004f,0.4738958779540429211430f} + + +void sacoshsTest(void) { + float In[]=IN; + float Res[]=RESULT; + float out; + int i = 0; + + for (i=0;i<200;i++){ + if (In[i]<1) assert(1); + else { + out = sacoshs(In[i]); + assert ( ( fabs(out-Res[i]) / fabs(out) ) <1e-6); + } + } +} + +void cacoshsTest(void) { + float InR[]=CRIN; + float InI[]=CIIN; + float ResR[]=CRRESULT; + float ResI[]=CIRESULT; + int i=0; + floatComplex in,out; + + for (i=0;i<200;i++){ + in=FloatComplex(InR[i],InI[i]); + out=cacoshs(in); + assert( ( fabs(creals(out)-ResR[i]) / fabs(creals(out)) ) <1e-6); + assert( ( fabs(cimags(out)-ResI[i]) / fabs(cimags(out)) ) <1e-6); + } +} + +void sacoshaTest(void) { + float In[]=IN; + float Res[]=RESULT; + float out[200],in[200]; + int i = 0; + + for (i=0;i<200;i++){ + in[i]=In[i]; + } + + sacosha(in,200,out); + for (i=0;i<200;i++){ + if (isnan(out[i])) assert(1); + else{ + assert ( ( fabs(out[i]-Res[i]) / fabs(out[i]) ) <1e-6); + } + } +} + +void cacoshaTest(void) { + float InR[]=CRIN; + float InI[]=CIIN; + float ResR[]=CRRESULT; + float ResI[]=CIRESULT; + int i=0; + floatComplex in[200],out[200]; + + for (i=0;i<200;i++){ + in[i]=FloatComplex(InR[i],InI[i]); + } + cacosha(in,200,out); + for (i=0;i<200;i++){ + assert( ( fabs(creals(out[i])-ResR[i]) / fabs(creals(out[i])) ) <1e-6); + assert( ( fabs(cimags(out[i])-ResI[i]) / fabs(cimags(out[i])) ) <1e-6); + } +} + +int testAcosh(void) { + printf("\n>>>> Float Hyperbolic ArcCosine Tests\n"); + sacoshsTest(); + cacoshsTest(); + sacoshaTest(); + cacoshaTest(); + return 0; +} + +int main(void) { + assert(testAcosh() == 0); + return 0; +} diff --git a/src/c/elementaryFunctions/asin/casins.c b/src/c/elementaryFunctions/asin/casins.c index 35a4a8d8..caed038e 100644 --- a/src/c/elementaryFunctions/asin/casins.c +++ b/src/c/elementaryFunctions/asin/casins.c @@ -1,146 +1,146 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -/* - * REFERENCE - * This is a Fortran-77 translation of an algorithm by - * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which - * appears in their article : - * "Implementing the Complex Arcsine and Arccosine - * Functions Using Exception Handling", ACM, TOMS, - * Vol 23, No. 3, Sept 1997, p. 299-335 - * Thanks to Tom Fairgrieve - */ - -#include "lapack.h" -#include "asin.h" -#include "atan.h" -#include "sqrt.h" -#include "abs.h" -#include "log.h" -#include "log1p.h" -#include "min.h" -#include "max.h" - -floatComplex casins(floatComplex z) { - static float sdblPi_2 = 1.5707963267948966192313216f; - static float sdblLn2 = 0.6931471805599453094172321f; - static float sdblAcross = 1.5f; - static float sdblBcross = 0.6417f; - - float dblLsup = ssqrts((float) getOverflowThreshold())/ 8.0f; - float dblLinf = 4.0f * ssqrts((float) getUnderflowThreshold()); - float dblEpsm = ssqrts((float) getRelativeMachinePrecision()); - - float _dblReal = creals(z); - float _dblImg = cimags(z); - - float dblAbsReal = sabss(_dblReal); - float dblAbsImg = sabss(_dblImg); - float iSignReal = _dblReal < 0 ? -1.0f : 1.0f; - float iSignImg = _dblImg < 0 ? -1.0f : 1.0f; - - float dblR = 0, dblS = 0, dblA = 0, dblB = 0; - - float dblTemp = 0; - - float _pdblReal = 0; - float _pdblImg = 0; - - if( min(dblAbsReal, dblAbsImg) > dblLinf && max(dblAbsReal, dblAbsImg) <= dblLsup) - { - /* we are in the safe region */ - dblR = ssqrts( (dblAbsReal + 1) * (dblAbsReal + 1) + dblAbsImg * dblAbsImg); - dblS = ssqrts( (dblAbsReal - 1) * (dblAbsReal - 1) + dblAbsImg * dblAbsImg); - dblA = (float) 0.5 * ( dblR + dblS ); - dblB = dblAbsReal / dblA; - - - /* compute the real part */ - if(dblB <= sdblBcross) - _pdblReal = sasins(dblB); - else if( dblAbsReal <= 1) - _pdblReal = satans(dblAbsReal / ssqrts( 0.5f * (dblA + dblAbsReal) * ( (dblAbsImg * dblAbsImg) / (dblR + (dblAbsReal + 1)) + (dblS + (1 - dblAbsReal))))); - else - _pdblReal = satans(dblAbsReal / (dblAbsImg * ssqrts( 0.5f * ((dblA + dblAbsReal) / (dblR + (dblAbsReal + 1)) + (dblA + dblAbsReal) / (dblS + (dblAbsReal-1)))))); - - /* compute the imaginary part */ - if(dblA <= sdblAcross) - { - float dblImg1 = 0; - - if(dblAbsReal < 1) - /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */ - dblImg1 = 0.5f * (dblAbsImg * dblAbsImg / (dblR + (dblAbsReal + 1)) + dblAbsImg * dblAbsImg / (dblS + (1 - dblAbsReal))); - else - /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */ - dblImg1 = 0.5f * (dblAbsImg * dblAbsImg / (dblR + (dblAbsReal + 1)) + (dblS + (dblAbsReal - 1))); - /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */ - dblTemp = dblImg1 + ssqrts(dblImg1 * (dblA + 1)); - _pdblImg = slog1ps(dblTemp); - } - else - /* ai = log(A + sqrt(A**2 - 1.d0)) */ - _pdblImg = slogs(dblA + ssqrts(dblA * dblA - (float) 1.0)); - } - else - { - /* evaluation in the special regions ... */ - if(dblAbsImg <= dblEpsm * dabss(dblAbsReal - 1)) - { - if(dblAbsReal < 1) - { - _pdblReal = sasins(dblAbsReal); - _pdblImg = dblAbsImg / ssqrts((1 + dblAbsReal) * (1 - dblAbsReal)); - } - else - { - _pdblReal = sdblPi_2; - if(dblAbsReal <= dblLsup) - { - dblTemp = (dblAbsReal - 1) + ssqrts((dblAbsReal - 1) * (dblAbsReal + 1)); - _pdblImg = slog1ps(dblTemp); - } - else - _pdblImg = sdblLn2 + slogs(dblAbsReal); - } - } - else if(dblAbsImg < dblLinf) - { - _pdblReal = sdblPi_2 - ssqrts(dblAbsImg); - _pdblImg = ssqrts(dblAbsImg); - } - else if((dblEpsm * dblAbsImg - 1 >= dblAbsReal)) - { - _pdblReal = dblAbsReal * dblAbsImg; - _pdblImg = sdblLn2 + slogs(dblAbsReal); - } - else if(dblAbsReal > 1) - { - _pdblReal = satans(dblAbsReal / dblAbsImg); - dblTemp = (dblAbsReal / dblAbsImg) * (dblAbsReal / dblAbsImg); - _pdblImg = sdblLn2 + slogs(dblAbsReal) + 0.5f * slog1ps(dblTemp); - } - else - { - float dblTemp2 = ssqrts(1 + dblAbsImg * dblAbsImg); - _pdblReal = dblAbsReal / dblTemp2; - dblTemp = 2.0f * dblAbsImg * (dblAbsImg + dblTemp2); - _pdblImg = 0.5f * slog1ps(dblTemp); - } - } - _pdblReal *= iSignReal; - _pdblImg *= iSignImg; - - return (FloatComplex(_pdblReal, _pdblImg)); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +/* + * REFERENCE + * This is a Fortran-77 translation of an algorithm by + * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which + * appears in their article : + * "Implementing the Complex Arcsine and Arccosine + * Functions Using Exception Handling", ACM, TOMS, + * Vol 23, No. 3, Sept 1997, p. 299-335 + * Thanks to Tom Fairgrieve + */ + +#include "lapack.h" +#include "asin.h" +#include "atan.h" +#include "sqrt.h" +#include "abs.h" +#include "log.h" +#include "log1p.h" +#include "min.h" +#include "max.h" + +floatComplex casins(floatComplex z) { + static float sdblPi_2 = 1.5707963267948966192313216f; + static float sdblLn2 = 0.6931471805599453094172321f; + static float sdblAcross = 1.5f; + static float sdblBcross = 0.6417f; + + float dblLsup = ssqrts((float) getOverflowThreshold())/ 8.0f; + float dblLinf = 4.0f * ssqrts((float) getUnderflowThreshold()); + float dblEpsm = ssqrts((float) getRelativeMachinePrecision()); + + float _dblReal = creals(z); + float _dblImg = cimags(z); + + float dblAbsReal = sabss(_dblReal); + float dblAbsImg = sabss(_dblImg); + float iSignReal = _dblReal < 0 ? -1.0f : 1.0f; + float iSignImg = _dblImg < 0 ? -1.0f : 1.0f; + + float dblR = 0, dblS = 0, dblA = 0, dblB = 0; + + float dblTemp = 0; + + float _pdblReal = 0; + float _pdblImg = 0; + + if( min(dblAbsReal, dblAbsImg) > dblLinf && max(dblAbsReal, dblAbsImg) <= dblLsup) + { + /* we are in the safe region */ + dblR = ssqrts( (dblAbsReal + 1) * (dblAbsReal + 1) + dblAbsImg * dblAbsImg); + dblS = ssqrts( (dblAbsReal - 1) * (dblAbsReal - 1) + dblAbsImg * dblAbsImg); + dblA = (float) 0.5 * ( dblR + dblS ); + dblB = dblAbsReal / dblA; + + + /* compute the real part */ + if(dblB <= sdblBcross) + _pdblReal = sasins(dblB); + else if( dblAbsReal <= 1) + _pdblReal = satans(dblAbsReal / ssqrts( 0.5f * (dblA + dblAbsReal) * ( (dblAbsImg * dblAbsImg) / (dblR + (dblAbsReal + 1)) + (dblS + (1 - dblAbsReal))))); + else + _pdblReal = satans(dblAbsReal / (dblAbsImg * ssqrts( 0.5f * ((dblA + dblAbsReal) / (dblR + (dblAbsReal + 1)) + (dblA + dblAbsReal) / (dblS + (dblAbsReal-1)))))); + + /* compute the imaginary part */ + if(dblA <= sdblAcross) + { + float dblImg1 = 0; + + if(dblAbsReal < 1) + /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */ + dblImg1 = 0.5f * (dblAbsImg * dblAbsImg / (dblR + (dblAbsReal + 1)) + dblAbsImg * dblAbsImg / (dblS + (1 - dblAbsReal))); + else + /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */ + dblImg1 = 0.5f * (dblAbsImg * dblAbsImg / (dblR + (dblAbsReal + 1)) + (dblS + (dblAbsReal - 1))); + /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */ + dblTemp = dblImg1 + ssqrts(dblImg1 * (dblA + 1)); + _pdblImg = slog1ps(dblTemp); + } + else + /* ai = log(A + sqrt(A**2 - 1.d0)) */ + _pdblImg = slogs(dblA + ssqrts(dblA * dblA - (float) 1.0)); + } + else + { + /* evaluation in the special regions ... */ + if(dblAbsImg <= dblEpsm * dabss(dblAbsReal - 1)) + { + if(dblAbsReal < 1) + { + _pdblReal = sasins(dblAbsReal); + _pdblImg = dblAbsImg / ssqrts((1 + dblAbsReal) * (1 - dblAbsReal)); + } + else + { + _pdblReal = sdblPi_2; + if(dblAbsReal <= dblLsup) + { + dblTemp = (dblAbsReal - 1) + ssqrts((dblAbsReal - 1) * (dblAbsReal + 1)); + _pdblImg = slog1ps(dblTemp); + } + else + _pdblImg = sdblLn2 + slogs(dblAbsReal); + } + } + else if(dblAbsImg < dblLinf) + { + _pdblReal = sdblPi_2 - ssqrts(dblAbsImg); + _pdblImg = ssqrts(dblAbsImg); + } + else if((dblEpsm * dblAbsImg - 1 >= dblAbsReal)) + { + _pdblReal = dblAbsReal * dblAbsImg; + _pdblImg = sdblLn2 + slogs(dblAbsReal); + } + else if(dblAbsReal > 1) + { + _pdblReal = satans(dblAbsReal / dblAbsImg); + dblTemp = (dblAbsReal / dblAbsImg) * (dblAbsReal / dblAbsImg); + _pdblImg = sdblLn2 + slogs(dblAbsReal) + 0.5f * slog1ps(dblTemp); + } + else + { + float dblTemp2 = ssqrts(1 + dblAbsImg * dblAbsImg); + _pdblReal = dblAbsReal / dblTemp2; + dblTemp = 2.0f * dblAbsImg * (dblAbsImg + dblTemp2); + _pdblImg = 0.5f * slog1ps(dblTemp); + } + } + _pdblReal *= iSignReal; + _pdblImg *= iSignImg; + + return (FloatComplex(_pdblReal, _pdblImg)); +} diff --git a/src/c/elementaryFunctions/asin/zasins.c b/src/c/elementaryFunctions/asin/zasins.c index 5bd586a8..a0042e15 100644 --- a/src/c/elementaryFunctions/asin/zasins.c +++ b/src/c/elementaryFunctions/asin/zasins.c @@ -1,146 +1,146 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -/* - * REFERENCE - * This is a Fortran-77 translation of an algorithm by - * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which - * appears in their article : - * "Implementing the Complex Arcsine and Arccosine - * Functions Using Exception Handling", ACM, TOMS, - * Vol 23, No. 3, Sept 1997, p. 299-335 - * Thanks to Tom Fairgrieve - */ - -#include "lapack.h" -#include "asin.h" -#include "atan.h" -#include "sqrt.h" -#include "abs.h" -#include "log.h" -#include "log1p.h" -#include "min.h" -#include "max.h" - -doubleComplex zasins(doubleComplex z) { - static double sdblPi_2 = 1.5707963267948966192313216; - static double sdblLn2 = 0.6931471805599453094172321; - static double sdblAcross = 1.5; - static double sdblBcross = 0.6417; - - double dblLsup = dsqrts(getOverflowThreshold())/8.0; - double dblLinf = 4 * dsqrts(getUnderflowThreshold()); - double dblEpsm = dsqrts(getRelativeMachinePrecision()); - - double _dblReal = zreals(z); - double _dblImg = zimags(z); - - double dblAbsReal = dabss(_dblReal); - double dblAbsImg = dabss(_dblImg); - int iSignReal = _dblReal < 0 ? -1 : 1; - int iSignImg = _dblImg < 0 ? -1 : 1; - - double dblR = 0, dblS = 0, dblA = 0, dblB = 0; - - double dblTemp = 0; - - double _pdblReal = 0; - double _pdblImg = 0; - - if( min(dblAbsReal, dblAbsImg) > dblLinf && max(dblAbsReal, dblAbsImg) <= dblLsup) - { - /* we are in the safe region */ - dblR = dsqrts( (dblAbsReal + 1) * (dblAbsReal + 1) + dblAbsImg * dblAbsImg); - dblS = dsqrts( (dblAbsReal - 1) * (dblAbsReal - 1) + dblAbsImg * dblAbsImg); - dblA = 0.5 * ( dblR + dblS ); - dblB = dblAbsReal / dblA; - - - /* compute the real part */ - if(dblB <= sdblBcross) - _pdblReal = dasins(dblB); - else if( dblAbsReal <= 1) - _pdblReal = datans(dblAbsReal / dsqrts( 0.5 * (dblA + dblAbsReal) * ( (dblAbsImg * dblAbsImg) / (dblR + (dblAbsReal + 1)) + (dblS + (1 - dblAbsReal))))); - else - _pdblReal = datans(dblAbsReal / (dblAbsImg * dsqrts(0.5 * ((dblA + dblAbsReal) / (dblR + (dblAbsReal + 1)) + (dblA + dblAbsReal) / (dblS + (dblAbsReal-1)))))); - - /* compute the imaginary part */ - if(dblA <= sdblAcross) - { - double dblImg1 = 0; - - if(dblAbsReal < 1) - /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */ - dblImg1 = 0.5 * (dblAbsImg * dblAbsImg / (dblR + (dblAbsReal + 1)) + dblAbsImg * dblAbsImg / (dblS + (1 - dblAbsReal))); - else - /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */ - dblImg1 = 0.5 * (dblAbsImg * dblAbsImg / (dblR + (dblAbsReal + 1)) + (dblS + (dblAbsReal - 1))); - /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */ - dblTemp = dblImg1 + dsqrts(dblImg1 * (dblA + 1)); - _pdblImg = dlog1ps(dblTemp); - } - else - /* ai = log(A + sqrt(A**2 - 1.d0)) */ - _pdblImg = dlogs(dblA + dsqrts(dblA * dblA - 1)); - } - else - { - /* evaluation in the special regions ... */ - if(dblAbsImg <= dblEpsm * dabss(dblAbsReal - 1)) - { - if(dblAbsReal < 1) - { - _pdblReal = dasins(dblAbsReal); - _pdblImg = dblAbsImg / dsqrts((1 + dblAbsReal) * (1 - dblAbsReal)); - } - else - { - _pdblReal = sdblPi_2; - if(dblAbsReal <= dblLsup) - { - dblTemp = (dblAbsReal - 1) + dsqrts((dblAbsReal - 1) * (dblAbsReal + 1)); - _pdblImg = dlog1ps(dblTemp); - } - else - _pdblImg = sdblLn2 + dlogs(dblAbsReal); - } - } - else if(dblAbsImg < dblLinf) - { - _pdblReal = sdblPi_2 - dsqrts(dblAbsImg); - _pdblImg = dsqrts(dblAbsImg); - } - else if((dblEpsm * dblAbsImg - 1 >= dblAbsReal)) - { - _pdblReal = dblAbsReal * dblAbsImg; - _pdblImg = sdblLn2 + dlogs(dblAbsReal); - } - else if(dblAbsReal > 1) - { - _pdblReal = datans(dblAbsReal / dblAbsImg); - dblTemp = (dblAbsReal / dblAbsImg) * (dblAbsReal / dblAbsImg); - _pdblImg = sdblLn2 + dlogs(dblAbsReal) + 0.5 * dlog1ps(dblTemp); - } - else - { - double dblTemp2 = dsqrts(1 + dblAbsImg * dblAbsImg); - _pdblReal = dblAbsReal / dblTemp2; - dblTemp = 2 * dblAbsImg * (dblAbsImg + dblTemp2); - _pdblImg = 0.5 * dlog1ps(dblTemp); - } - } - _pdblReal *= iSignReal; - _pdblImg *= iSignImg; - - return (DoubleComplex(_pdblReal, _pdblImg)); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +/* + * REFERENCE + * This is a Fortran-77 translation of an algorithm by + * T.E. Hull, T. F. Fairgrieve and P.T.P. Tang which + * appears in their article : + * "Implementing the Complex Arcsine and Arccosine + * Functions Using Exception Handling", ACM, TOMS, + * Vol 23, No. 3, Sept 1997, p. 299-335 + * Thanks to Tom Fairgrieve + */ + +#include "lapack.h" +#include "asin.h" +#include "atan.h" +#include "sqrt.h" +#include "abs.h" +#include "log.h" +#include "log1p.h" +#include "min.h" +#include "max.h" + +doubleComplex zasins(doubleComplex z) { + static double sdblPi_2 = 1.5707963267948966192313216; + static double sdblLn2 = 0.6931471805599453094172321; + static double sdblAcross = 1.5; + static double sdblBcross = 0.6417; + + double dblLsup = dsqrts(getOverflowThreshold())/8.0; + double dblLinf = 4 * dsqrts(getUnderflowThreshold()); + double dblEpsm = dsqrts(getRelativeMachinePrecision()); + + double _dblReal = zreals(z); + double _dblImg = zimags(z); + + double dblAbsReal = dabss(_dblReal); + double dblAbsImg = dabss(_dblImg); + int iSignReal = _dblReal < 0 ? -1 : 1; + int iSignImg = _dblImg < 0 ? -1 : 1; + + double dblR = 0, dblS = 0, dblA = 0, dblB = 0; + + double dblTemp = 0; + + double _pdblReal = 0; + double _pdblImg = 0; + + if( min(dblAbsReal, dblAbsImg) > dblLinf && max(dblAbsReal, dblAbsImg) <= dblLsup) + { + /* we are in the safe region */ + dblR = dsqrts( (dblAbsReal + 1) * (dblAbsReal + 1) + dblAbsImg * dblAbsImg); + dblS = dsqrts( (dblAbsReal - 1) * (dblAbsReal - 1) + dblAbsImg * dblAbsImg); + dblA = 0.5 * ( dblR + dblS ); + dblB = dblAbsReal / dblA; + + + /* compute the real part */ + if(dblB <= sdblBcross) + _pdblReal = dasins(dblB); + else if( dblAbsReal <= 1) + _pdblReal = datans(dblAbsReal / dsqrts( 0.5 * (dblA + dblAbsReal) * ( (dblAbsImg * dblAbsImg) / (dblR + (dblAbsReal + 1)) + (dblS + (1 - dblAbsReal))))); + else + _pdblReal = datans(dblAbsReal / (dblAbsImg * dsqrts(0.5 * ((dblA + dblAbsReal) / (dblR + (dblAbsReal + 1)) + (dblA + dblAbsReal) / (dblS + (dblAbsReal-1)))))); + + /* compute the imaginary part */ + if(dblA <= sdblAcross) + { + double dblImg1 = 0; + + if(dblAbsReal < 1) + /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(y**2)/(S+(1.d0-x))) */ + dblImg1 = 0.5 * (dblAbsImg * dblAbsImg / (dblR + (dblAbsReal + 1)) + dblAbsImg * dblAbsImg / (dblS + (1 - dblAbsReal))); + else + /* Am1 = 0.5d0*((y**2)/(R+(x+1.d0))+(S+(x-1.d0))) */ + dblImg1 = 0.5 * (dblAbsImg * dblAbsImg / (dblR + (dblAbsReal + 1)) + (dblS + (dblAbsReal - 1))); + /* ai = logp1(Am1 + sqrt(Am1*(A+1.d0))) */ + dblTemp = dblImg1 + dsqrts(dblImg1 * (dblA + 1)); + _pdblImg = dlog1ps(dblTemp); + } + else + /* ai = log(A + sqrt(A**2 - 1.d0)) */ + _pdblImg = dlogs(dblA + dsqrts(dblA * dblA - 1)); + } + else + { + /* evaluation in the special regions ... */ + if(dblAbsImg <= dblEpsm * dabss(dblAbsReal - 1)) + { + if(dblAbsReal < 1) + { + _pdblReal = dasins(dblAbsReal); + _pdblImg = dblAbsImg / dsqrts((1 + dblAbsReal) * (1 - dblAbsReal)); + } + else + { + _pdblReal = sdblPi_2; + if(dblAbsReal <= dblLsup) + { + dblTemp = (dblAbsReal - 1) + dsqrts((dblAbsReal - 1) * (dblAbsReal + 1)); + _pdblImg = dlog1ps(dblTemp); + } + else + _pdblImg = sdblLn2 + dlogs(dblAbsReal); + } + } + else if(dblAbsImg < dblLinf) + { + _pdblReal = sdblPi_2 - dsqrts(dblAbsImg); + _pdblImg = dsqrts(dblAbsImg); + } + else if((dblEpsm * dblAbsImg - 1 >= dblAbsReal)) + { + _pdblReal = dblAbsReal * dblAbsImg; + _pdblImg = sdblLn2 + dlogs(dblAbsReal); + } + else if(dblAbsReal > 1) + { + _pdblReal = datans(dblAbsReal / dblAbsImg); + dblTemp = (dblAbsReal / dblAbsImg) * (dblAbsReal / dblAbsImg); + _pdblImg = sdblLn2 + dlogs(dblAbsReal) + 0.5 * dlog1ps(dblTemp); + } + else + { + double dblTemp2 = dsqrts(1 + dblAbsImg * dblAbsImg); + _pdblReal = dblAbsReal / dblTemp2; + dblTemp = 2 * dblAbsImg * (dblAbsImg + dblTemp2); + _pdblImg = 0.5 * dlog1ps(dblTemp); + } + } + _pdblReal *= iSignReal; + _pdblImg *= iSignImg; + + return (DoubleComplex(_pdblReal, _pdblImg)); +} diff --git a/src/c/elementaryFunctions/atan/catans.c b/src/c/elementaryFunctions/atan/catans.c index d2081181..50694c45 100644 --- a/src/c/elementaryFunctions/atan/catans.c +++ b/src/c/elementaryFunctions/atan/catans.c @@ -1,249 +1,249 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -/* - PURPOSE - watan compute the arctangent of a complex number - y = yr + i yi = atan(x), x = xr + i xi - - CALLING LIST / PARAMETERS - subroutine watan(xr,xi,yr,yi) - double precision xr,xi,yr,yi - - xr,xi: real and imaginary parts of the complex number - yr,yi: real and imaginary parts of the result - yr,yi may have the same memory cases than xr et xi - - COPYRIGHT (C) 2001 Bruno Pincon and Lydia van Dijk - Written by Bruno Pincon so - as to get more precision. Also to fix the - behavior at the singular points and at the branch cuts. - Polished by Lydia van Dijk - - - CHANGES : - (Bruno on 2001 May 22) for ysptrk use a - minimax polynome to enlarge the special - evaluation zone |s| < SLIM. Also rename - this function as lnp1m1. - - (Bruno on 2001 June 7) better handling - of spurious over/underflow ; remove - the call to pythag ; better accuracy - in the real part for z near +-i - - EXTERNALS FUNCTIONS - dlamch - lnp1m1 (at the end of this file) - - ALGORITHM : noting z = a + i*b, we have: - Z = yr + yi*b = arctan(z) = (i/2) * log( (i+z)/(i-z) ) - - This function has two branch points at +i and -i and the - chosen branch cuts are the two half-straight lines - D1 = [i, i*oo) and D2 = (-i*oo, i]. The function is then - analytic in C \ (D1 U D2)). - - From the definition it follows that: - - yr = 0.5 Arg ( (i+z)/(i-z) ) (1) - yi = 0.5 log (|(i+z)/(i-z)|) (2) - - so lim (z -> +- i) yr = undefined (and Nan is logical) - lim (z -> +i) yi = +oo - lim (z -> -i) yi = -oo - - The real part of arctan(z) is discontinuous across D1 and D2 - and we impose the following definitions: - if imag(z) > 1 then - Arg(arctan(z)) = pi/2 (=lim real(z) -> 0+) - if imag(z) < 1 then - Arg(arctan(z)) = -pi/2 (=lim real(z) -> 0-) - - - Basic evaluation: if we write (i+z)/(i-z) using - z = a + i*b, we get: - - i+z 1-(a**2+b**2) + i*(2a) - --- = ---------------------- - i-z a**2 + (1-b)**2 - - then, with r2 = |z|^2 = a**2 + b**2 : - - yr = 0.5 * Arg(1-r2 + (2*a)*i) - = 0.5 * atan2(2a, (1-r2)) (3) - - This formula is changed when r2 > RMAX (max pos float) - and also when |1-r2| and |a| are near 0 (see comments - in the code). - - After some math: - - yi = 0.25 * log( (a**2 + (b + 1)**2) / - (a**2 + (b - 1)**2) ) (4) - - Evaluation for "big" |z| - ------------------------ - - If |z| is "big", the direct evaluation of yi by (4) may - suffer of innaccuracies and of spurious overflow. Noting - that s = 2 b / (1 + |z|**2), we have: - - yi = 0.25 log ( (1 + s)/(1 - s) ) (5) - - 3 5 - yi = 0.25*( 2 * ( s + 1/3 s + 1/5 s + ... )) - - yi = 0.25 * lnp1m1(s) if |s| < SLIM - - So if |s| is less than SLIM we switch to a special - evaluation done by the function lnp1m1. The - threshold value SLIM is choosen by experiment - (with the Pari-gp software). For |s| - "very small" we used a truncated taylor dvp, - else a minimax polynome (see lnp1m1). - - To avoid spurious overflows (which result in spurious - underflows for s) in computing s with s= 2 b / (1 + |z|**2) - when |z|^2 > RMAX (max positive float) we use : - - s = 2d0 / ( (a/b)*a + b ) - - but if |b| = Inf this formula leads to NaN when - |a| is also Inf. As we have : - - |s| <= 2 / |b| - - we impose simply : s = 0 when |b| = Inf - - Evaluation for z very near to i or -i: - -------------------------------------- - Floating point numbers of the form a+i or a-i with 0 < - a**2 < tiny (approximately 1d-308) may lead to underflow - (i.e., a**2 = 0) and the logarithm will break formula (4). - So we switch to the following formulas: - - If b = +-1 and |a| < sqrt(tiny) approximately 1d-150 (say) - then (by using that a**2 + 4 = 4 in machine for such a): - - yi = 0.5 * log( 2/|a| ) for b=1 - - yi = 0.5 * log( |a|/2 ) for b=-1 - - finally: yi = 0.5 * sign(b) * log( 2/|a| ) - yi = 0.5 * sign(b) * (log(2) - log(|a|)) (6) - - The last trick is to avoid overflow for |a|=tiny! In fact - this formula may be used until a**2 + 4 = 4 so that the - threshold value may be larger. -*/ - -#include -#include "atan.h" -#include "abs.h" -#include "lnp1m1.h" -#include "lapack.h" - -#define _sign(a, b) b >=0 ? a : -a - -floatComplex catans(floatComplex z) { - static float sSlim = 0.2f; - /* . - ** / \ WARNING : this algorithm was based on double precision - ** / ! \ using float truncate the value to 0. - ** `----' - ** - ** static float sAlim = 1E-150f; - */ - static float sAlim = 0.0f; - static float sTol = 0.3f; - static float sLn2 = 0.6931471805599453094172321f; - - float RMax = (float) getOverflowThreshold(); - float Pi_2 = 2.0f * satans(1); - - float _inReal = creals(z); - float _inImg = cimags(z); - float _outReal = 0; - float _outImg = 0; - - /* Temporary variables */ - float R2 = 0; - float S = 0; - - - if(_inImg == 0) - { - _outReal = satans(_inReal); - _outImg = 0; - } - else - { - R2 = _inReal * _inReal + _inImg * _inImg; /* Oo */ - if(R2 > RMax) - { - if( dabss(_inImg) > RMax) - S = 0; - else - S = 1.0f / (((0.5f * _inReal) / _inImg) * _inReal + 0.5f * _inImg ); - } - else - S = (2 * _inImg) / (1+R2); - - if(dabss(S) < sSlim) - { - /* - s is small: |s| < SLIM <=> |z| outside the following disks: - D+ = D(center = [0; 1/slim], radius = sqrt(1/slim**2 - 1)) if b > 0 - D- = D(center = [0; -1/slim], radius = sqrt(1/slim**2 - 1)) if b < 0 - use the special evaluation of log((1+s)/(1-s)) (5) - */ - _outImg = slnp1m1s(S) * 0.25f; - } - else - { - if(sabss(S) == 1 && sabss(_inReal) <= sAlim) - { - /* |s| >= SLIM => |z| is inside D+ or D- */ - _outImg = _sign(0.5f,_inImg) * ( sLn2 - logf(sabss(_inReal))); - } - else - { - _outImg = 0.25f * logf((powf(_inReal,2) + powf((_inImg + 1.0f),2)) / (powf(_inReal,2) + powf((_inImg - 1.0f),2))); - } - } - if(_inReal == 0) - {/* z is purely imaginary */ - if( dabss(_inImg) > 1) - {/* got sign(b) * pi/2 */ - _outReal = _sign(1, _inImg) * Pi_2; - } - else if( dabss(_inImg) == 1) - {/* got a Nan with 0/0 */ - _outReal = (_inReal - _inReal) / (_inReal - _inReal); /* Oo */ - } - else - _outReal = 0; - } - else if(R2 > RMax) - {/* _outImg is necessarily very near sign(a)* pi/2 */ - _outReal = _sign(1, _inReal) * Pi_2; - } - else if(sabss(1 - R2) + sabss(_inReal) <= sTol) - {/* |b| is very near 1 (and a is near 0) some cancellation occur in the (next) generic formula */ - _outReal = 0.5f * atan2f(2.0f * _inReal, (1.0f - _inImg) * (1.0f + _inImg) - powf(_inReal,2.0f)); - } - else - _outReal = 0.5f * atan2f(2.0f * _inReal, 1.0f - R2); - } - - return FloatComplex(_outReal, _outImg); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +/* + PURPOSE + watan compute the arctangent of a complex number + y = yr + i yi = atan(x), x = xr + i xi + + CALLING LIST / PARAMETERS + subroutine watan(xr,xi,yr,yi) + double precision xr,xi,yr,yi + + xr,xi: real and imaginary parts of the complex number + yr,yi: real and imaginary parts of the result + yr,yi may have the same memory cases than xr et xi + + COPYRIGHT (C) 2001 Bruno Pincon and Lydia van Dijk + Written by Bruno Pincon so + as to get more precision. Also to fix the + behavior at the singular points and at the branch cuts. + Polished by Lydia van Dijk + + + CHANGES : - (Bruno on 2001 May 22) for ysptrk use a + minimax polynome to enlarge the special + evaluation zone |s| < SLIM. Also rename + this function as lnp1m1. + - (Bruno on 2001 June 7) better handling + of spurious over/underflow ; remove + the call to pythag ; better accuracy + in the real part for z near +-i + + EXTERNALS FUNCTIONS + dlamch + lnp1m1 (at the end of this file) + + ALGORITHM : noting z = a + i*b, we have: + Z = yr + yi*b = arctan(z) = (i/2) * log( (i+z)/(i-z) ) + + This function has two branch points at +i and -i and the + chosen branch cuts are the two half-straight lines + D1 = [i, i*oo) and D2 = (-i*oo, i]. The function is then + analytic in C \ (D1 U D2)). + + From the definition it follows that: + + yr = 0.5 Arg ( (i+z)/(i-z) ) (1) + yi = 0.5 log (|(i+z)/(i-z)|) (2) + + so lim (z -> +- i) yr = undefined (and Nan is logical) + lim (z -> +i) yi = +oo + lim (z -> -i) yi = -oo + + The real part of arctan(z) is discontinuous across D1 and D2 + and we impose the following definitions: + if imag(z) > 1 then + Arg(arctan(z)) = pi/2 (=lim real(z) -> 0+) + if imag(z) < 1 then + Arg(arctan(z)) = -pi/2 (=lim real(z) -> 0-) + + + Basic evaluation: if we write (i+z)/(i-z) using + z = a + i*b, we get: + + i+z 1-(a**2+b**2) + i*(2a) + --- = ---------------------- + i-z a**2 + (1-b)**2 + + then, with r2 = |z|^2 = a**2 + b**2 : + + yr = 0.5 * Arg(1-r2 + (2*a)*i) + = 0.5 * atan2(2a, (1-r2)) (3) + + This formula is changed when r2 > RMAX (max pos float) + and also when |1-r2| and |a| are near 0 (see comments + in the code). + + After some math: + + yi = 0.25 * log( (a**2 + (b + 1)**2) / + (a**2 + (b - 1)**2) ) (4) + + Evaluation for "big" |z| + ------------------------ + + If |z| is "big", the direct evaluation of yi by (4) may + suffer of innaccuracies and of spurious overflow. Noting + that s = 2 b / (1 + |z|**2), we have: + + yi = 0.25 log ( (1 + s)/(1 - s) ) (5) + + 3 5 + yi = 0.25*( 2 * ( s + 1/3 s + 1/5 s + ... )) + + yi = 0.25 * lnp1m1(s) if |s| < SLIM + + So if |s| is less than SLIM we switch to a special + evaluation done by the function lnp1m1. The + threshold value SLIM is choosen by experiment + (with the Pari-gp software). For |s| + "very small" we used a truncated taylor dvp, + else a minimax polynome (see lnp1m1). + + To avoid spurious overflows (which result in spurious + underflows for s) in computing s with s= 2 b / (1 + |z|**2) + when |z|^2 > RMAX (max positive float) we use : + + s = 2d0 / ( (a/b)*a + b ) + + but if |b| = Inf this formula leads to NaN when + |a| is also Inf. As we have : + + |s| <= 2 / |b| + + we impose simply : s = 0 when |b| = Inf + + Evaluation for z very near to i or -i: + -------------------------------------- + Floating point numbers of the form a+i or a-i with 0 < + a**2 < tiny (approximately 1d-308) may lead to underflow + (i.e., a**2 = 0) and the logarithm will break formula (4). + So we switch to the following formulas: + + If b = +-1 and |a| < sqrt(tiny) approximately 1d-150 (say) + then (by using that a**2 + 4 = 4 in machine for such a): + + yi = 0.5 * log( 2/|a| ) for b=1 + + yi = 0.5 * log( |a|/2 ) for b=-1 + + finally: yi = 0.5 * sign(b) * log( 2/|a| ) + yi = 0.5 * sign(b) * (log(2) - log(|a|)) (6) + + The last trick is to avoid overflow for |a|=tiny! In fact + this formula may be used until a**2 + 4 = 4 so that the + threshold value may be larger. +*/ + +#include +#include "atan.h" +#include "abs.h" +#include "lnp1m1.h" +#include "lapack.h" + +#define _sign(a, b) b >=0 ? a : -a + +floatComplex catans(floatComplex z) { + static float sSlim = 0.2f; + /* . + ** / \ WARNING : this algorithm was based on double precision + ** / ! \ using float truncate the value to 0. + ** `----' + ** + ** static float sAlim = 1E-150f; + */ + static float sAlim = 0.0f; + static float sTol = 0.3f; + static float sLn2 = 0.6931471805599453094172321f; + + float RMax = (float) getOverflowThreshold(); + float Pi_2 = 2.0f * satans(1); + + float _inReal = creals(z); + float _inImg = cimags(z); + float _outReal = 0; + float _outImg = 0; + + /* Temporary variables */ + float R2 = 0; + float S = 0; + + + if(_inImg == 0) + { + _outReal = satans(_inReal); + _outImg = 0; + } + else + { + R2 = _inReal * _inReal + _inImg * _inImg; /* Oo */ + if(R2 > RMax) + { + if( dabss(_inImg) > RMax) + S = 0; + else + S = 1.0f / (((0.5f * _inReal) / _inImg) * _inReal + 0.5f * _inImg ); + } + else + S = (2 * _inImg) / (1+R2); + + if(dabss(S) < sSlim) + { + /* + s is small: |s| < SLIM <=> |z| outside the following disks: + D+ = D(center = [0; 1/slim], radius = sqrt(1/slim**2 - 1)) if b > 0 + D- = D(center = [0; -1/slim], radius = sqrt(1/slim**2 - 1)) if b < 0 + use the special evaluation of log((1+s)/(1-s)) (5) + */ + _outImg = slnp1m1s(S) * 0.25f; + } + else + { + if(sabss(S) == 1 && sabss(_inReal) <= sAlim) + { + /* |s| >= SLIM => |z| is inside D+ or D- */ + _outImg = _sign(0.5f,_inImg) * ( sLn2 - logf(sabss(_inReal))); + } + else + { + _outImg = 0.25f * logf((powf(_inReal,2) + powf((_inImg + 1.0f),2)) / (powf(_inReal,2) + powf((_inImg - 1.0f),2))); + } + } + if(_inReal == 0) + {/* z is purely imaginary */ + if( dabss(_inImg) > 1) + {/* got sign(b) * pi/2 */ + _outReal = _sign(1, _inImg) * Pi_2; + } + else if( dabss(_inImg) == 1) + {/* got a Nan with 0/0 */ + _outReal = (_inReal - _inReal) / (_inReal - _inReal); /* Oo */ + } + else + _outReal = 0; + } + else if(R2 > RMax) + {/* _outImg is necessarily very near sign(a)* pi/2 */ + _outReal = _sign(1, _inReal) * Pi_2; + } + else if(sabss(1 - R2) + sabss(_inReal) <= sTol) + {/* |b| is very near 1 (and a is near 0) some cancellation occur in the (next) generic formula */ + _outReal = 0.5f * atan2f(2.0f * _inReal, (1.0f - _inImg) * (1.0f + _inImg) - powf(_inReal,2.0f)); + } + else + _outReal = 0.5f * atan2f(2.0f * _inReal, 1.0f - R2); + } + + return FloatComplex(_outReal, _outImg); +} diff --git a/src/c/elementaryFunctions/atan/zatans.c b/src/c/elementaryFunctions/atan/zatans.c index 4b8e9640..ab1354f7 100644 --- a/src/c/elementaryFunctions/atan/zatans.c +++ b/src/c/elementaryFunctions/atan/zatans.c @@ -1,242 +1,242 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -/* - PURPOSE - watan compute the arctangent of a complex number - y = yr + i yi = atan(x), x = xr + i xi - - CALLING LIST / PARAMETERS - subroutine watan(xr,xi,yr,yi) - double precision xr,xi,yr,yi - - xr,xi: real and imaginary parts of the complex number - yr,yi: real and imaginary parts of the result - yr,yi may have the same memory cases than xr et xi - - COPYRIGHT (C) 2001 Bruno Pincon and Lydia van Dijk - Written by Bruno Pincon so - as to get more precision. Also to fix the - behavior at the singular points and at the branch cuts. - Polished by Lydia van Dijk - - - CHANGES : - (Bruno on 2001 May 22) for ysptrk use a - minimax polynome to enlarge the special - evaluation zone |s| < SLIM. Also rename - this function as lnp1m1. - - (Bruno on 2001 June 7) better handling - of spurious over/underflow ; remove - the call to pythag ; better accuracy - in the real part for z near +-i - - EXTERNALS FUNCTIONS - dlamch - lnp1m1 (at the end of this file) - - ALGORITHM : noting z = a + i*b, we have: - Z = yr + yi*b = arctan(z) = (i/2) * log( (i+z)/(i-z) ) - - This function has two branch points at +i and -i and the - chosen branch cuts are the two half-straight lines - D1 = [i, i*oo) and D2 = (-i*oo, i]. The function is then - analytic in C \ (D1 U D2)). - - From the definition it follows that: - - yr = 0.5 Arg ( (i+z)/(i-z) ) (1) - yi = 0.5 log (|(i+z)/(i-z)|) (2) - - so lim (z -> +- i) yr = undefined (and Nan is logical) - lim (z -> +i) yi = +oo - lim (z -> -i) yi = -oo - - The real part of arctan(z) is discontinuous across D1 and D2 - and we impose the following definitions: - if imag(z) > 1 then - Arg(arctan(z)) = pi/2 (=lim real(z) -> 0+) - if imag(z) < 1 then - Arg(arctan(z)) = -pi/2 (=lim real(z) -> 0-) - - - Basic evaluation: if we write (i+z)/(i-z) using - z = a + i*b, we get: - - i+z 1-(a**2+b**2) + i*(2a) - --- = ---------------------- - i-z a**2 + (1-b)**2 - - then, with r2 = |z|^2 = a**2 + b**2 : - - yr = 0.5 * Arg(1-r2 + (2*a)*i) - = 0.5 * atan2(2a, (1-r2)) (3) - - This formula is changed when r2 > RMAX (max pos float) - and also when |1-r2| and |a| are near 0 (see comments - in the code). - - After some math: - - yi = 0.25 * log( (a**2 + (b + 1)**2) / - (a**2 + (b - 1)**2) ) (4) - - Evaluation for "big" |z| - ------------------------ - - If |z| is "big", the direct evaluation of yi by (4) may - suffer of innaccuracies and of spurious overflow. Noting - that s = 2 b / (1 + |z|**2), we have: - - yi = 0.25 log ( (1 + s)/(1 - s) ) (5) - - 3 5 - yi = 0.25*( 2 * ( s + 1/3 s + 1/5 s + ... )) - - yi = 0.25 * lnp1m1(s) if |s| < SLIM - - So if |s| is less than SLIM we switch to a special - evaluation done by the function lnp1m1. The - threshold value SLIM is choosen by experiment - (with the Pari-gp software). For |s| - "very small" we used a truncated taylor dvp, - else a minimax polynome (see lnp1m1). - - To avoid spurious overflows (which result in spurious - underflows for s) in computing s with s= 2 b / (1 + |z|**2) - when |z|^2 > RMAX (max positive float) we use : - - s = 2d0 / ( (a/b)*a + b ) - - but if |b| = Inf this formula leads to NaN when - |a| is also Inf. As we have : - - |s| <= 2 / |b| - - we impose simply : s = 0 when |b| = Inf - - Evaluation for z very near to i or -i: - -------------------------------------- - Floating point numbers of the form a+i or a-i with 0 < - a**2 < tiny (approximately 1d-308) may lead to underflow - (i.e., a**2 = 0) and the logarithm will break formula (4). - So we switch to the following formulas: - - If b = +-1 and |a| < sqrt(tiny) approximately 1d-150 (say) - then (by using that a**2 + 4 = 4 in machine for such a): - - yi = 0.5 * log( 2/|a| ) for b=1 - - yi = 0.5 * log( |a|/2 ) for b=-1 - - finally: yi = 0.5 * sign(b) * log( 2/|a| ) - yi = 0.5 * sign(b) * (log(2) - log(|a|)) (6) - - The last trick is to avoid overflow for |a|=tiny! In fact - this formula may be used until a**2 + 4 = 4 so that the - threshold value may be larger. -*/ - -#include -#include "lapack.h" -#include "atan.h" -#include "abs.h" -#include "lnp1m1.h" - -#define _sign(a, b) b >=0 ? a : -a - -doubleComplex zatans(doubleComplex z) { - static double sSlim = 0.2; - static double sAlim = 1E-150; - static double sTol = 0.3; - static double sLn2 = 0.6931471805599453094172321; - - double RMax = getOverflowThreshold(); - double Pi_2 = 2.0 * datans(1); - - double _inReal = zreals(z); - double _inImg = zimags(z); - double _outReal = 0; - double _outImg = 0; - - /* Temporary variables */ - double R2 = 0; - double S = 0; - - - if(_inImg == 0) - { - _outReal = datans(_inReal); - _outImg = 0; - } - else - { - R2 = _inReal * _inReal + _inImg * _inImg; /* Oo */ - if(R2 > RMax) - { - if( dabss(_inImg) > RMax) - S = 0; - else - S = 1 / (((0.5 * _inReal) / _inImg) * _inReal + 0.5 * _inImg ); - } - else - S = (2 * _inImg) / (1+R2); - - if(dabss(S) < sSlim) - { - /* - s is small: |s| < SLIM <=> |z| outside the following disks: - D+ = D(center = [0; 1/slim], radius = sqrt(1/slim**2 - 1)) if b > 0 - D- = D(center = [0; -1/slim], radius = sqrt(1/slim**2 - 1)) if b < 0 - use the special evaluation of log((1+s)/(1-s)) (5) - */ - _outImg = dlnp1m1s(S) * 0.25; - } - else - { - if(dabss(S) == 1 && dabss(_inReal) <= sAlim) - { - /* |s| >= SLIM => |z| is inside D+ or D- */ - _outImg = _sign(0.5,_inImg) * ( sLn2 - log(dabss(_inReal))); - } - else - { - _outImg = 0.25 * log((pow(_inReal,2) + pow((_inImg + 1),2)) / (pow(_inReal,2) + pow((_inImg - 1),2))); - } - } - if(_inReal == 0) - {/* z is purely imaginary */ - if( dabss(_inImg) > 1) - {/* got sign(b) * pi/2 */ - _outReal = _sign(1, _inImg) * Pi_2; - } - else if( dabss(_inImg) == 1) - {/* got a Nan with 0/0 */ - _outReal = (_inReal - _inReal) / (_inReal - _inReal); /* Oo */ - } - else - _outReal = 0; - } - else if(R2 > RMax) - {/* _outImg is necessarily very near sign(a)* pi/2 */ - _outReal = _sign(1, _inReal) * Pi_2; - } - else if(dabss(1 - R2) + dabss(_inReal) <= sTol) - {/* |b| is very near 1 (and a is near 0) some cancellation occur in the (next) generic formula */ - _outReal = 0.5 * atan2(2 * _inReal, (1-_inImg) * (1 + _inImg) - pow(_inReal,2)); - } - else - _outReal = 0.5 * atan2(2 * _inReal, 1 - R2); - } - - return DoubleComplex(_outReal, _outImg); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +/* + PURPOSE + watan compute the arctangent of a complex number + y = yr + i yi = atan(x), x = xr + i xi + + CALLING LIST / PARAMETERS + subroutine watan(xr,xi,yr,yi) + double precision xr,xi,yr,yi + + xr,xi: real and imaginary parts of the complex number + yr,yi: real and imaginary parts of the result + yr,yi may have the same memory cases than xr et xi + + COPYRIGHT (C) 2001 Bruno Pincon and Lydia van Dijk + Written by Bruno Pincon so + as to get more precision. Also to fix the + behavior at the singular points and at the branch cuts. + Polished by Lydia van Dijk + + + CHANGES : - (Bruno on 2001 May 22) for ysptrk use a + minimax polynome to enlarge the special + evaluation zone |s| < SLIM. Also rename + this function as lnp1m1. + - (Bruno on 2001 June 7) better handling + of spurious over/underflow ; remove + the call to pythag ; better accuracy + in the real part for z near +-i + + EXTERNALS FUNCTIONS + dlamch + lnp1m1 (at the end of this file) + + ALGORITHM : noting z = a + i*b, we have: + Z = yr + yi*b = arctan(z) = (i/2) * log( (i+z)/(i-z) ) + + This function has two branch points at +i and -i and the + chosen branch cuts are the two half-straight lines + D1 = [i, i*oo) and D2 = (-i*oo, i]. The function is then + analytic in C \ (D1 U D2)). + + From the definition it follows that: + + yr = 0.5 Arg ( (i+z)/(i-z) ) (1) + yi = 0.5 log (|(i+z)/(i-z)|) (2) + + so lim (z -> +- i) yr = undefined (and Nan is logical) + lim (z -> +i) yi = +oo + lim (z -> -i) yi = -oo + + The real part of arctan(z) is discontinuous across D1 and D2 + and we impose the following definitions: + if imag(z) > 1 then + Arg(arctan(z)) = pi/2 (=lim real(z) -> 0+) + if imag(z) < 1 then + Arg(arctan(z)) = -pi/2 (=lim real(z) -> 0-) + + + Basic evaluation: if we write (i+z)/(i-z) using + z = a + i*b, we get: + + i+z 1-(a**2+b**2) + i*(2a) + --- = ---------------------- + i-z a**2 + (1-b)**2 + + then, with r2 = |z|^2 = a**2 + b**2 : + + yr = 0.5 * Arg(1-r2 + (2*a)*i) + = 0.5 * atan2(2a, (1-r2)) (3) + + This formula is changed when r2 > RMAX (max pos float) + and also when |1-r2| and |a| are near 0 (see comments + in the code). + + After some math: + + yi = 0.25 * log( (a**2 + (b + 1)**2) / + (a**2 + (b - 1)**2) ) (4) + + Evaluation for "big" |z| + ------------------------ + + If |z| is "big", the direct evaluation of yi by (4) may + suffer of innaccuracies and of spurious overflow. Noting + that s = 2 b / (1 + |z|**2), we have: + + yi = 0.25 log ( (1 + s)/(1 - s) ) (5) + + 3 5 + yi = 0.25*( 2 * ( s + 1/3 s + 1/5 s + ... )) + + yi = 0.25 * lnp1m1(s) if |s| < SLIM + + So if |s| is less than SLIM we switch to a special + evaluation done by the function lnp1m1. The + threshold value SLIM is choosen by experiment + (with the Pari-gp software). For |s| + "very small" we used a truncated taylor dvp, + else a minimax polynome (see lnp1m1). + + To avoid spurious overflows (which result in spurious + underflows for s) in computing s with s= 2 b / (1 + |z|**2) + when |z|^2 > RMAX (max positive float) we use : + + s = 2d0 / ( (a/b)*a + b ) + + but if |b| = Inf this formula leads to NaN when + |a| is also Inf. As we have : + + |s| <= 2 / |b| + + we impose simply : s = 0 when |b| = Inf + + Evaluation for z very near to i or -i: + -------------------------------------- + Floating point numbers of the form a+i or a-i with 0 < + a**2 < tiny (approximately 1d-308) may lead to underflow + (i.e., a**2 = 0) and the logarithm will break formula (4). + So we switch to the following formulas: + + If b = +-1 and |a| < sqrt(tiny) approximately 1d-150 (say) + then (by using that a**2 + 4 = 4 in machine for such a): + + yi = 0.5 * log( 2/|a| ) for b=1 + + yi = 0.5 * log( |a|/2 ) for b=-1 + + finally: yi = 0.5 * sign(b) * log( 2/|a| ) + yi = 0.5 * sign(b) * (log(2) - log(|a|)) (6) + + The last trick is to avoid overflow for |a|=tiny! In fact + this formula may be used until a**2 + 4 = 4 so that the + threshold value may be larger. +*/ + +#include +#include "lapack.h" +#include "atan.h" +#include "abs.h" +#include "lnp1m1.h" + +#define _sign(a, b) b >=0 ? a : -a + +doubleComplex zatans(doubleComplex z) { + static double sSlim = 0.2; + static double sAlim = 1E-150; + static double sTol = 0.3; + static double sLn2 = 0.6931471805599453094172321; + + double RMax = getOverflowThreshold(); + double Pi_2 = 2.0 * datans(1); + + double _inReal = zreals(z); + double _inImg = zimags(z); + double _outReal = 0; + double _outImg = 0; + + /* Temporary variables */ + double R2 = 0; + double S = 0; + + + if(_inImg == 0) + { + _outReal = datans(_inReal); + _outImg = 0; + } + else + { + R2 = _inReal * _inReal + _inImg * _inImg; /* Oo */ + if(R2 > RMax) + { + if( dabss(_inImg) > RMax) + S = 0; + else + S = 1 / (((0.5 * _inReal) / _inImg) * _inReal + 0.5 * _inImg ); + } + else + S = (2 * _inImg) / (1+R2); + + if(dabss(S) < sSlim) + { + /* + s is small: |s| < SLIM <=> |z| outside the following disks: + D+ = D(center = [0; 1/slim], radius = sqrt(1/slim**2 - 1)) if b > 0 + D- = D(center = [0; -1/slim], radius = sqrt(1/slim**2 - 1)) if b < 0 + use the special evaluation of log((1+s)/(1-s)) (5) + */ + _outImg = dlnp1m1s(S) * 0.25; + } + else + { + if(dabss(S) == 1 && dabss(_inReal) <= sAlim) + { + /* |s| >= SLIM => |z| is inside D+ or D- */ + _outImg = _sign(0.5,_inImg) * ( sLn2 - log(dabss(_inReal))); + } + else + { + _outImg = 0.25 * log((pow(_inReal,2) + pow((_inImg + 1),2)) / (pow(_inReal,2) + pow((_inImg - 1),2))); + } + } + if(_inReal == 0) + {/* z is purely imaginary */ + if( dabss(_inImg) > 1) + {/* got sign(b) * pi/2 */ + _outReal = _sign(1, _inImg) * Pi_2; + } + else if( dabss(_inImg) == 1) + {/* got a Nan with 0/0 */ + _outReal = (_inReal - _inReal) / (_inReal - _inReal); /* Oo */ + } + else + _outReal = 0; + } + else if(R2 > RMax) + {/* _outImg is necessarily very near sign(a)* pi/2 */ + _outReal = _sign(1, _inReal) * Pi_2; + } + else if(dabss(1 - R2) + dabss(_inReal) <= sTol) + {/* |b| is very near 1 (and a is near 0) some cancellation occur in the (next) generic formula */ + _outReal = 0.5 * atan2(2 * _inReal, (1-_inImg) * (1 + _inImg) - pow(_inReal,2)); + } + else + _outReal = 0.5 * atan2(2 * _inReal, 1 - R2); + } + + return DoubleComplex(_outReal, _outImg); +} diff --git a/src/c/elementaryFunctions/includes/dynlib_elementaryfunctions.h b/src/c/elementaryFunctions/includes/dynlib_elementaryfunctions.h index 5037696f..f3fed2c3 100644 --- a/src/c/elementaryFunctions/includes/dynlib_elementaryfunctions.h +++ b/src/c/elementaryFunctions/includes/dynlib_elementaryfunctions.h @@ -1,26 +1,26 @@ -/* -* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -* Copyright (C) 2009 - DIGITEO - Allan CORNET -* -* 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 -* -*/ - -#ifndef __DYNLIB_ELEMENTARYFUNCTIONS_H__ -#define __DYNLIB_ELEMENTARYFUNCTIONS_H__ - -#if defined(_MSC_VER) && defined(_USRDLL) - #if ELEMENTARYFUNCTIONS_EXPORTS - #define EXTERN_ELEMFUNCT __declspec (dllexport) - #else - #define EXTERN_ELEMFUNCT __declspec (dllimport) - #endif -#else - #define EXTERN_ELEMFUNCT -#endif - -#endif /* __DYNLIB_ELEMENTARYFUNCTIONS_H__ */ +/* +* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +* Copyright (C) 2009 - DIGITEO - Allan CORNET +* +* 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 +* +*/ + +#ifndef __DYNLIB_ELEMENTARYFUNCTIONS_H__ +#define __DYNLIB_ELEMENTARYFUNCTIONS_H__ + +#if defined(_MSC_VER) && defined(_USRDLL) + #if ELEMENTARYFUNCTIONS_EXPORTS + #define EXTERN_ELEMFUNCT __declspec (dllexport) + #else + #define EXTERN_ELEMFUNCT __declspec (dllimport) + #endif +#else + #define EXTERN_ELEMFUNCT +#endif + +#endif /* __DYNLIB_ELEMENTARYFUNCTIONS_H__ */ diff --git a/src/c/elementaryFunctions/lnp1m1/dlnp1m1s.c b/src/c/elementaryFunctions/lnp1m1/dlnp1m1s.c index 7e1759be..af7ba9d5 100644 --- a/src/c/elementaryFunctions/lnp1m1/dlnp1m1s.c +++ b/src/c/elementaryFunctions/lnp1m1/dlnp1m1s.c @@ -1,77 +1,77 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -#include "lnp1m1.h" -#include "abs.h" - -/* - PURPOSE : Compute v = log ( (1 + s)/(1 - s) ) - for small s, this is for |s| < SLIM = 0.20 - - ALGORITHM : - 1/ if |s| is "very small" we use a truncated - taylor dvp (by keeping 3 terms) from : - 2 4 6 - t = 2 * s * ( 1 + 1/3 s + 1/5 s + [ 1/7 s + ....] ) - 2 4 - t = 2 * s * ( 1 + 1/3 s + 1/5 s + er) - - The limit E until we use this formula may be simply - gotten so that the negliged part er is such that : - 2 4 - (#) er <= epsm * ( 1 + 1/3 s + 1/5 s ) for all |s|<= E - - As er = 1/7 s^6 + 1/9 s^8 + ... - er <= 1/7 * s^6 ( 1 + s^2 + s^4 + ...) = 1/7 s^6/(1-s^2) - - the inequality (#) is forced if : - - 1/7 s^6 / (1-s^2) <= epsm * ( 1 + 1/3 s^2 + 1/5 s^4 ) - - s^6 <= 7 epsm * (1 - 2/3 s^2 - 3/15 s^4 - 1/5 s^6) - - So that E is very near (7 epsm)^(1/6) (approximately 3.032d-3): - - 2/ For larger |s| we used a minimax polynome : - - yi = s * (2 + d3 s^3 + d5 s^5 .... + d13 s^13 + d15 s^15) - - This polynome was computed (by some remes algorithm) following - (*) the sin(x) example (p 39) of the book : - - "ELEMENTARY FUNCTIONS" - "Algorithms and implementation" - J.M. Muller (Birkhauser) - - (*) without the additionnal raffinement to get the first coefs - very near floating point numbers) -*/ -double dlnp1m1s(double Var) -{ - static double D3 = 0.66666666666672679472; - static double D5 = 0.39999999996176889299; - static double D7 = 0.28571429392829380980; - static double D9 = 0.22222138684562683797; - static double D11 = 0.18186349187499222459; - static double D13 = 0.15250315884469364710; - static double D15 = 0.15367270224757008114; - static double E = 3.032E-3; - static double C3 = 2.0/3.0; - static double C5 = 2.0/5.0; - - double S2 = Var * Var; - if( dabss(Var) <= E) - return Var * (2 + S2 * (C3 + C5 * S2)); - else - return Var * (2 + S2 * (D3 + S2 * (D5 + S2 * (D7 + S2 * (D9 + S2 * (D11 + S2 * (D13 + S2 * D15))))))); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +#include "lnp1m1.h" +#include "abs.h" + +/* + PURPOSE : Compute v = log ( (1 + s)/(1 - s) ) + for small s, this is for |s| < SLIM = 0.20 + + ALGORITHM : + 1/ if |s| is "very small" we use a truncated + taylor dvp (by keeping 3 terms) from : + 2 4 6 + t = 2 * s * ( 1 + 1/3 s + 1/5 s + [ 1/7 s + ....] ) + 2 4 + t = 2 * s * ( 1 + 1/3 s + 1/5 s + er) + + The limit E until we use this formula may be simply + gotten so that the negliged part er is such that : + 2 4 + (#) er <= epsm * ( 1 + 1/3 s + 1/5 s ) for all |s|<= E + + As er = 1/7 s^6 + 1/9 s^8 + ... + er <= 1/7 * s^6 ( 1 + s^2 + s^4 + ...) = 1/7 s^6/(1-s^2) + + the inequality (#) is forced if : + + 1/7 s^6 / (1-s^2) <= epsm * ( 1 + 1/3 s^2 + 1/5 s^4 ) + + s^6 <= 7 epsm * (1 - 2/3 s^2 - 3/15 s^4 - 1/5 s^6) + + So that E is very near (7 epsm)^(1/6) (approximately 3.032d-3): + + 2/ For larger |s| we used a minimax polynome : + + yi = s * (2 + d3 s^3 + d5 s^5 .... + d13 s^13 + d15 s^15) + + This polynome was computed (by some remes algorithm) following + (*) the sin(x) example (p 39) of the book : + + "ELEMENTARY FUNCTIONS" + "Algorithms and implementation" + J.M. Muller (Birkhauser) + + (*) without the additionnal raffinement to get the first coefs + very near floating point numbers) +*/ +double dlnp1m1s(double Var) +{ + static double D3 = 0.66666666666672679472; + static double D5 = 0.39999999996176889299; + static double D7 = 0.28571429392829380980; + static double D9 = 0.22222138684562683797; + static double D11 = 0.18186349187499222459; + static double D13 = 0.15250315884469364710; + static double D15 = 0.15367270224757008114; + static double E = 3.032E-3; + static double C3 = 2.0/3.0; + static double C5 = 2.0/5.0; + + double S2 = Var * Var; + if( dabss(Var) <= E) + return Var * (2 + S2 * (C3 + C5 * S2)); + else + return Var * (2 + S2 * (D3 + S2 * (D5 + S2 * (D7 + S2 * (D9 + S2 * (D11 + S2 * (D13 + S2 * D15))))))); +} diff --git a/src/c/elementaryFunctions/lnp1m1/slnp1m1s.c b/src/c/elementaryFunctions/lnp1m1/slnp1m1s.c index 9940810c..d03badcd 100644 --- a/src/c/elementaryFunctions/lnp1m1/slnp1m1s.c +++ b/src/c/elementaryFunctions/lnp1m1/slnp1m1s.c @@ -1,77 +1,77 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -#include "lnp1m1.h" -#include "abs.h" - -/* - PURPOSE : Compute v = log ( (1 + s)/(1 - s) ) - for small s, this is for |s| < SLIM = 0.20 - - ALGORITHM : - 1/ if |s| is "very small" we use a truncated - taylor dvp (by keeping 3 terms) from : - 2 4 6 - t = 2 * s * ( 1 + 1/3 s + 1/5 s + [ 1/7 s + ....] ) - 2 4 - t = 2 * s * ( 1 + 1/3 s + 1/5 s + er) - - The limit E until we use this formula may be simply - gotten so that the negliged part er is such that : - 2 4 - (#) er <= epsm * ( 1 + 1/3 s + 1/5 s ) for all |s|<= E - - As er = 1/7 s^6 + 1/9 s^8 + ... - er <= 1/7 * s^6 ( 1 + s^2 + s^4 + ...) = 1/7 s^6/(1-s^2) - - the inequality (#) is forced if : - - 1/7 s^6 / (1-s^2) <= epsm * ( 1 + 1/3 s^2 + 1/5 s^4 ) - - s^6 <= 7 epsm * (1 - 2/3 s^2 - 3/15 s^4 - 1/5 s^6) - - So that E is very near (7 epsm)^(1/6) (approximately 3.032d-3): - - 2/ For larger |s| we used a minimax polynome : - - yi = s * (2 + d3 s^3 + d5 s^5 .... + d13 s^13 + d15 s^15) - - This polynome was computed (by some remes algorithm) following - (*) the sin(x) example (p 39) of the book : - - "ELEMENTARY FUNCTIONS" - "Algorithms and implementation" - J.M. Muller (Birkhauser) - - (*) without the additionnal raffinement to get the first coefs - very near floating point numbers) -*/ -float slnp1m1s(float Var) -{ - static float D3 = 0.66666666666672679472f; - static float D5 = 0.39999999996176889299f; - static float D7 = 0.28571429392829380980f; - static float D9 = 0.22222138684562683797f; - static float D11 = 0.18186349187499222459f; - static float D13 = 0.15250315884469364710f; - static float D15 = 0.15367270224757008114f; - static float E = 3.032E-3f; - static float C3 = 2.0f/3.0f; - static float C5 = 2.0f/5.0f; - - float S2 = Var * Var; - if( sabss(Var) <= E) - return Var * (2 + S2 * (C3 + C5 * S2)); - else - return Var * (2 + S2 * (D3 + S2 * (D5 + S2 * (D7 + S2 * (D9 + S2 * (D11 + S2 * (D13 + S2 * D15))))))); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +#include "lnp1m1.h" +#include "abs.h" + +/* + PURPOSE : Compute v = log ( (1 + s)/(1 - s) ) + for small s, this is for |s| < SLIM = 0.20 + + ALGORITHM : + 1/ if |s| is "very small" we use a truncated + taylor dvp (by keeping 3 terms) from : + 2 4 6 + t = 2 * s * ( 1 + 1/3 s + 1/5 s + [ 1/7 s + ....] ) + 2 4 + t = 2 * s * ( 1 + 1/3 s + 1/5 s + er) + + The limit E until we use this formula may be simply + gotten so that the negliged part er is such that : + 2 4 + (#) er <= epsm * ( 1 + 1/3 s + 1/5 s ) for all |s|<= E + + As er = 1/7 s^6 + 1/9 s^8 + ... + er <= 1/7 * s^6 ( 1 + s^2 + s^4 + ...) = 1/7 s^6/(1-s^2) + + the inequality (#) is forced if : + + 1/7 s^6 / (1-s^2) <= epsm * ( 1 + 1/3 s^2 + 1/5 s^4 ) + + s^6 <= 7 epsm * (1 - 2/3 s^2 - 3/15 s^4 - 1/5 s^6) + + So that E is very near (7 epsm)^(1/6) (approximately 3.032d-3): + + 2/ For larger |s| we used a minimax polynome : + + yi = s * (2 + d3 s^3 + d5 s^5 .... + d13 s^13 + d15 s^15) + + This polynome was computed (by some remes algorithm) following + (*) the sin(x) example (p 39) of the book : + + "ELEMENTARY FUNCTIONS" + "Algorithms and implementation" + J.M. Muller (Birkhauser) + + (*) without the additionnal raffinement to get the first coefs + very near floating point numbers) +*/ +float slnp1m1s(float Var) +{ + static float D3 = 0.66666666666672679472f; + static float D5 = 0.39999999996176889299f; + static float D7 = 0.28571429392829380980f; + static float D9 = 0.22222138684562683797f; + static float D11 = 0.18186349187499222459f; + static float D13 = 0.15250315884469364710f; + static float D15 = 0.15367270224757008114f; + static float E = 3.032E-3f; + static float C3 = 2.0f/3.0f; + static float C5 = 2.0f/5.0f; + + float S2 = Var * Var; + if( sabss(Var) <= E) + return Var * (2 + S2 * (C3 + C5 * S2)); + else + return Var * (2 + S2 * (D3 + S2 * (D5 + S2 * (D7 + S2 * (D9 + S2 * (D11 + S2 * (D13 + S2 * D15))))))); +} diff --git a/src/c/elementaryFunctions/log/clogs.c b/src/c/elementaryFunctions/log/clogs.c index 3b9f6911..c351cf3c 100644 --- a/src/c/elementaryFunctions/log/clogs.c +++ b/src/c/elementaryFunctions/log/clogs.c @@ -1,65 +1,65 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -#include -#include "log.h" -#include "lapack.h" -#include "log1p.h" -#include "pythag.h" - -floatComplex clogs(floatComplex in) { - static float sR2 = 1.41421356237309504f; - - float _RealIn = creals(in); - float _ImgIn = cimags(in); - - float _RealOut = 0; - float _ImgOut = 0; - - float RMax = (float) getOverflowThreshold(); - float LInf = sqrtf((float) getUnderflowThreshold()); - float LSup = sqrtf(0.5f * RMax); - - float AbsReal = fabsf(_RealIn); - float AbsImg = fabsf(_ImgIn); - - _ImgOut = atan2f(_ImgIn, _RealIn); - - if(_ImgIn > _RealIn) - {/* switch Real part and Imaginary part */ - float Temp = AbsReal; - AbsReal = AbsImg; - AbsImg = Temp; - } - - if((0.5 <= AbsReal) && (AbsReal <= sR2)) - _RealOut = 0.5f * slog1ps((AbsReal - 1.0f) * (AbsReal + 1.0f) + AbsImg * AbsImg); - else if(LInf < AbsImg && AbsReal < LSup) - _RealOut = 0.5f * slogs(AbsReal * AbsReal + AbsImg * AbsImg); - else if(AbsReal > RMax) - _RealOut = AbsReal; - else - { - float Temp = spythags(AbsReal, AbsImg); - if(Temp <= RMax) - { - _RealOut = slogs(Temp); - } - else /* handle rare spurious overflow with : */ - { - float Temp2 = AbsImg/AbsReal; - _RealOut = slogs(AbsReal) + 0.5f * slog1ps(Temp2 * Temp2); - } - } - return FloatComplex(_RealOut, _ImgOut); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +#include +#include "log.h" +#include "lapack.h" +#include "log1p.h" +#include "pythag.h" + +floatComplex clogs(floatComplex in) { + static float sR2 = 1.41421356237309504f; + + float _RealIn = creals(in); + float _ImgIn = cimags(in); + + float _RealOut = 0; + float _ImgOut = 0; + + float RMax = (float) getOverflowThreshold(); + float LInf = sqrtf((float) getUnderflowThreshold()); + float LSup = sqrtf(0.5f * RMax); + + float AbsReal = fabsf(_RealIn); + float AbsImg = fabsf(_ImgIn); + + _ImgOut = atan2f(_ImgIn, _RealIn); + + if(_ImgIn > _RealIn) + {/* switch Real part and Imaginary part */ + float Temp = AbsReal; + AbsReal = AbsImg; + AbsImg = Temp; + } + + if((0.5 <= AbsReal) && (AbsReal <= sR2)) + _RealOut = 0.5f * slog1ps((AbsReal - 1.0f) * (AbsReal + 1.0f) + AbsImg * AbsImg); + else if(LInf < AbsImg && AbsReal < LSup) + _RealOut = 0.5f * slogs(AbsReal * AbsReal + AbsImg * AbsImg); + else if(AbsReal > RMax) + _RealOut = AbsReal; + else + { + float Temp = spythags(AbsReal, AbsImg); + if(Temp <= RMax) + { + _RealOut = slogs(Temp); + } + else /* handle rare spurious overflow with : */ + { + float Temp2 = AbsImg/AbsReal; + _RealOut = slogs(AbsReal) + 0.5f * slog1ps(Temp2 * Temp2); + } + } + return FloatComplex(_RealOut, _ImgOut); +} diff --git a/src/c/elementaryFunctions/log/zlogs.c b/src/c/elementaryFunctions/log/zlogs.c index e5e9ded1..de947bf4 100644 --- a/src/c/elementaryFunctions/log/zlogs.c +++ b/src/c/elementaryFunctions/log/zlogs.c @@ -1,65 +1,65 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -#include -#include "log.h" -#include "lapack.h" -#include "log1p.h" -#include "pythag.h" - -doubleComplex zlogs(doubleComplex in) { - static double sR2 = 1.41421356237309504; - - double _RealIn = zreals(in); - double _ImgIn = zimags(in); - - double _RealOut = 0; - double _ImgOut = 0; - - double RMax = getOverflowThreshold(); - double LInf = sqrt(getUnderflowThreshold()); - double LSup = sqrt(0.5 * RMax); - - double AbsReal = fabs(_RealIn); - double AbsImg = fabs(_ImgIn); - - _ImgOut = atan2(_ImgIn, _RealIn); - - if(_ImgIn > _RealIn) - {/* switch Real part and Imaginary part */ - double Temp = AbsReal; - AbsReal = AbsImg; - AbsImg = Temp; - } - - if((0.5 <= AbsReal) && (AbsReal <= sR2)) - _RealOut = 0.5 * dlog1ps((AbsReal - 1) * (AbsReal + 1) + AbsImg * AbsImg); - else if(LInf < AbsImg && AbsReal < LSup) - _RealOut = 0.5 * dlogs(AbsReal * AbsReal + AbsImg * AbsImg); - else if(AbsReal > RMax) - _RealOut = AbsReal; - else - { - double Temp = dpythags(AbsReal, AbsImg); - if(Temp <= RMax) - { - _RealOut = dlogs(Temp); - } - else /* handle rare spurious overflow with : */ - { - double Temp2 = AbsImg/AbsReal; - _RealOut = dlogs(AbsReal) + 0.5 * dlog1ps(Temp2 * Temp2); - } - } - return DoubleComplex(_RealOut, _ImgOut); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +#include +#include "log.h" +#include "lapack.h" +#include "log1p.h" +#include "pythag.h" + +doubleComplex zlogs(doubleComplex in) { + static double sR2 = 1.41421356237309504; + + double _RealIn = zreals(in); + double _ImgIn = zimags(in); + + double _RealOut = 0; + double _ImgOut = 0; + + double RMax = getOverflowThreshold(); + double LInf = sqrt(getUnderflowThreshold()); + double LSup = sqrt(0.5 * RMax); + + double AbsReal = fabs(_RealIn); + double AbsImg = fabs(_ImgIn); + + _ImgOut = atan2(_ImgIn, _RealIn); + + if(_ImgIn > _RealIn) + {/* switch Real part and Imaginary part */ + double Temp = AbsReal; + AbsReal = AbsImg; + AbsImg = Temp; + } + + if((0.5 <= AbsReal) && (AbsReal <= sR2)) + _RealOut = 0.5 * dlog1ps((AbsReal - 1) * (AbsReal + 1) + AbsImg * AbsImg); + else if(LInf < AbsImg && AbsReal < LSup) + _RealOut = 0.5 * dlogs(AbsReal * AbsReal + AbsImg * AbsImg); + else if(AbsReal > RMax) + _RealOut = AbsReal; + else + { + double Temp = dpythags(AbsReal, AbsImg); + if(Temp <= RMax) + { + _RealOut = dlogs(Temp); + } + else /* handle rare spurious overflow with : */ + { + double Temp2 = AbsImg/AbsReal; + _RealOut = dlogs(AbsReal) + 0.5 * dlog1ps(Temp2 * Temp2); + } + } + return DoubleComplex(_RealOut, _ImgOut); +} diff --git a/src/c/elementaryFunctions/log1p/dlog1ps.c b/src/c/elementaryFunctions/log1p/dlog1ps.c index e75a05fd..20d75004 100644 --- a/src/c/elementaryFunctions/log1p/dlog1ps.c +++ b/src/c/elementaryFunctions/log1p/dlog1ps.c @@ -1,34 +1,34 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -#include "log1p.h" -#include "log.h" -#include "lnp1m1.h" - -double dlog1ps(double in) { - static double A = -1.0/3.0; - static double B = 0.5; - - if(in < -1) - {/* got NaN */ - return (in - in) / (in - in); /* NaN */ - } - else if(A <= in && in <= B) - {/* use the function log((1+g)/(1-g)) with g = x/(x + 2) */ - return dlnp1m1s(in / (in + 2)); - } - else - {/* use the standard formula */ - return dlogs(in + 1); - } -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +#include "log1p.h" +#include "log.h" +#include "lnp1m1.h" + +double dlog1ps(double in) { + static double A = -1.0/3.0; + static double B = 0.5; + + if(in < -1) + {/* got NaN */ + return (in - in) / (in - in); /* NaN */ + } + else if(A <= in && in <= B) + {/* use the function log((1+g)/(1-g)) with g = x/(x + 2) */ + return dlnp1m1s(in / (in + 2)); + } + else + {/* use the standard formula */ + return dlogs(in + 1); + } +} diff --git a/src/c/elementaryFunctions/log1p/slog1ps.c b/src/c/elementaryFunctions/log1p/slog1ps.c index 04786524..93ab4e73 100644 --- a/src/c/elementaryFunctions/log1p/slog1ps.c +++ b/src/c/elementaryFunctions/log1p/slog1ps.c @@ -1,35 +1,35 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - - * - * 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 - * - */ - -#include "log1p.h" -#include "log.h" -#include "lnp1m1.h" - -float slog1ps(float in) { - static double A = -1.0/3.0; - static double B = 0.5; - - if(in < -1) - {/* got NaN */ - return (in - in) / (in - in); /* NaN */ - } - else if(A <= in && in <= B) - {/* use the function log((1+g)/(1-g)) with g = x/(x + 2) */ - return slnp1m1s(in / (in + 2)); - } - else - {/* use the standard formula */ - return slogs(in + 1); - } -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + + * + * 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 + * + */ + +#include "log1p.h" +#include "log.h" +#include "lnp1m1.h" + +float slog1ps(float in) { + static double A = -1.0/3.0; + static double B = 0.5; + + if(in < -1) + {/* got NaN */ + return (in - in) / (in - in); /* NaN */ + } + else if(A <= in && in <= B) + {/* use the function log((1+g)/(1-g)) with g = x/(x + 2) */ + return slnp1m1s(in / (in + 2)); + } + else + {/* use the standard formula */ + return slogs(in + 1); + } +} diff --git a/src/c/elementaryFunctions/sqrt/csqrts.c b/src/c/elementaryFunctions/sqrt/csqrts.c index a24f9558..07ef3bb0 100644 --- a/src/c/elementaryFunctions/sqrt/csqrts.c +++ b/src/c/elementaryFunctions/sqrt/csqrts.c @@ -1,111 +1,111 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -#include -#include "sqrt.h" -#include "lapack.h" -#include "abs.h" -#include "sign.h" -#include "pythag.h" - -#ifdef _MSC_VER -#include -#define isnan(x) _isnan((double)x) -#endif - -#define _sign(a, b) b >=0 ? a : -a - -floatComplex csqrts(floatComplex in) { - float RMax = (float) getOverflowThreshold(); - float BRMin = 2.0f * (float) getUnderflowThreshold(); - - float RealIn = creals(in); - float ImgIn = cimags(in); - - float RealOut = 0; - float ImgOut = 0; - - if(RealIn == 0) - {/* pure imaginary case */ - if(dabss(ImgIn >= BRMin)) - RealOut = ssqrts(0.5f * sabss(ImgIn)); - else - RealOut = ssqrts(sabss(ImgIn)) * ssqrts(0.5); - - ImgOut = _sign(1, ImgIn) * RealOut; - } - else if( sabss(RealIn) <= RMax && sabss(ImgIn) <= RMax) - {/* standard case : a (not zero) and b are finite */ - float Temp = ssqrts(2.0f * (sabss(RealIn) + spythags(RealIn, ImgIn))); - /* overflow test */ - if(Temp > RMax) - {/* handle (spurious) overflow by scaling a and b */ - float RealTemp = RealIn / 16.0f; - float ImgTemp = ImgIn / 16.0f; - Temp = ssqrts(2.0f * (sabss(RealIn) + spythags(RealIn, ImgTemp))); - if(RealTemp >= 0) - { - RealOut = 2 * Temp; - ImgOut = 4 * ImgTemp / Temp; - } - else - { - RealOut = 4 * sabss(ImgIn) / Temp; - ImgOut = _sign(2, ImgIn) * Temp; - } - } - else if(RealIn >= 0) /* classic switch to get the stable formulas */ - { - RealOut = 0.5f * Temp; - ImgOut = ImgIn / Temp; - } - else - { - RealOut = sabss(ImgIn) / Temp; - ImgOut = (_sign(0.5f, ImgIn)) * Temp; - } - } - else - { - /* - //Here we treat the special cases where a and b are +- 00 or NaN. - //The following is the treatment recommended by the C99 standard - //with the simplification of returning NaN + i NaN if the - //the real part or the imaginary part is NaN (C99 recommends - //something more complicated) - */ - - if(isnan(RealIn) == 1 || isnan(ImgIn) == 1) - {/* got NaN + i NaN */ - RealOut = RealIn + ImgIn; - ImgOut = RealOut; - } - else if( dabss(ImgIn) > RMax) - {/* case a +- i oo -> result must be +oo +- i oo for all a (finite or not) */ - RealOut = sabss(ImgIn); - ImgOut = ImgIn; - } - else if(RealIn < -RMax) - {/* here a is -Inf and b is finite */ - RealOut = 0; - ImgOut = _sign(1, ImgIn) * sabss(RealIn); - } - else - {/* here a is +Inf and b is finite */ - RealOut = RealIn; - ImgOut = 0; - } - } - - return FloatComplex(RealOut, ImgOut); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +#include +#include "sqrt.h" +#include "lapack.h" +#include "abs.h" +#include "sign.h" +#include "pythag.h" + +#ifdef _MSC_VER +#include +#define isnan(x) _isnan((double)x) +#endif + +#define _sign(a, b) b >=0 ? a : -a + +floatComplex csqrts(floatComplex in) { + float RMax = (float) getOverflowThreshold(); + float BRMin = 2.0f * (float) getUnderflowThreshold(); + + float RealIn = creals(in); + float ImgIn = cimags(in); + + float RealOut = 0; + float ImgOut = 0; + + if(RealIn == 0) + {/* pure imaginary case */ + if(dabss(ImgIn >= BRMin)) + RealOut = ssqrts(0.5f * sabss(ImgIn)); + else + RealOut = ssqrts(sabss(ImgIn)) * ssqrts(0.5); + + ImgOut = _sign(1, ImgIn) * RealOut; + } + else if( sabss(RealIn) <= RMax && sabss(ImgIn) <= RMax) + {/* standard case : a (not zero) and b are finite */ + float Temp = ssqrts(2.0f * (sabss(RealIn) + spythags(RealIn, ImgIn))); + /* overflow test */ + if(Temp > RMax) + {/* handle (spurious) overflow by scaling a and b */ + float RealTemp = RealIn / 16.0f; + float ImgTemp = ImgIn / 16.0f; + Temp = ssqrts(2.0f * (sabss(RealIn) + spythags(RealIn, ImgTemp))); + if(RealTemp >= 0) + { + RealOut = 2 * Temp; + ImgOut = 4 * ImgTemp / Temp; + } + else + { + RealOut = 4 * sabss(ImgIn) / Temp; + ImgOut = _sign(2, ImgIn) * Temp; + } + } + else if(RealIn >= 0) /* classic switch to get the stable formulas */ + { + RealOut = 0.5f * Temp; + ImgOut = ImgIn / Temp; + } + else + { + RealOut = sabss(ImgIn) / Temp; + ImgOut = (_sign(0.5f, ImgIn)) * Temp; + } + } + else + { + /* + //Here we treat the special cases where a and b are +- 00 or NaN. + //The following is the treatment recommended by the C99 standard + //with the simplification of returning NaN + i NaN if the + //the real part or the imaginary part is NaN (C99 recommends + //something more complicated) + */ + + if(isnan(RealIn) == 1 || isnan(ImgIn) == 1) + {/* got NaN + i NaN */ + RealOut = RealIn + ImgIn; + ImgOut = RealOut; + } + else if( dabss(ImgIn) > RMax) + {/* case a +- i oo -> result must be +oo +- i oo for all a (finite or not) */ + RealOut = sabss(ImgIn); + ImgOut = ImgIn; + } + else if(RealIn < -RMax) + {/* here a is -Inf and b is finite */ + RealOut = 0; + ImgOut = _sign(1, ImgIn) * sabss(RealIn); + } + else + {/* here a is +Inf and b is finite */ + RealOut = RealIn; + ImgOut = 0; + } + } + + return FloatComplex(RealOut, ImgOut); +} diff --git a/src/c/elementaryFunctions/sqrt/zsqrts.c b/src/c/elementaryFunctions/sqrt/zsqrts.c index 3637ddd6..f8aac152 100644 --- a/src/c/elementaryFunctions/sqrt/zsqrts.c +++ b/src/c/elementaryFunctions/sqrt/zsqrts.c @@ -1,111 +1,111 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ -#include -#include -#include "sqrt.h" -#include "lapack.h" -#include "abs.h" -#include "sign.h" -#include "pythag.h" - -#ifdef _MSC_VER -#include -#define isnan(x) _isnan((double)x) -#endif - -#define _sign(a, b) b >=0 ? a : -a - -doubleComplex zsqrts(doubleComplex in) { - double RMax = getOverflowThreshold(); - double BRMin = 2 * getUnderflowThreshold(); - - double RealIn = zreals(in); - double ImgIn = zimags(in); - - double RealOut = 0; - double ImgOut = 0; - - if(RealIn == 0) - {/* pure imaginary case */ - if(dabss(ImgIn >= BRMin)) - RealOut = dsqrts(0.5 * dabss(ImgIn)); - else - RealOut = dsqrts(dabss(ImgIn)) * dsqrts(0.5); - - ImgOut = _sign(1, ImgIn) * RealOut; - } - else if( dabss(RealIn) <= RMax && dabss(ImgIn) <= RMax) - {/* standard case : a (not zero) and b are finite */ - double Temp = dsqrts(2 * (dabss(RealIn) + dpythags(RealIn, ImgIn))); - /* overflow test */ - if(Temp > RMax) - {/* handle (spurious) overflow by scaling a and b */ - double RealTemp = RealIn / 16; - double ImgTemp = ImgIn / 16; - Temp = dsqrts(2 * (dabss(RealIn) + dpythags(RealIn, ImgTemp))); - if(RealTemp >= 0) - { - RealOut = 2 * Temp; - ImgOut = 4 * ImgTemp / Temp; - } - else - { - RealOut = 4 * dabss(ImgIn) / Temp; - ImgOut = _sign(2, ImgIn) * Temp; - } - } - else if(RealIn >= 0) /* classic switch to get the stable formulas */ - { - RealOut = 0.5 * Temp; - ImgOut = ImgIn / Temp; - } - else - { - RealOut = dabss(ImgIn) / Temp; - ImgOut = (_sign(0.5, ImgIn)) * Temp; - } - } - else - { - /* - //Here we treat the special cases where a and b are +- 00 or NaN. - //The following is the treatment recommended by the C99 standard - //with the simplification of returning NaN + i NaN if the - //the real part or the imaginary part is NaN (C99 recommends - //something more complicated) - */ - - if(isnan(RealIn) == 1 || isnan(ImgIn) == 1) - {/* got NaN + i NaN */ - RealOut = RealIn + ImgIn; - ImgOut = RealOut; - } - else if( dabss(ImgIn) > RMax) - {/* case a +- i oo -> result must be +oo +- i oo for all a (finite or not) */ - RealOut = dabss(ImgIn); - ImgOut = ImgIn; - } - else if(RealIn < -RMax) - {/* here a is -Inf and b is finite */ - RealOut = 0; - ImgOut = _sign(1, ImgIn) * dabss(RealIn); - } - else - {/* here a is +Inf and b is finite */ - RealOut = RealIn; - ImgOut = 0; - } - } - - return DoubleComplex(RealOut, ImgOut); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ +#include +#include +#include "sqrt.h" +#include "lapack.h" +#include "abs.h" +#include "sign.h" +#include "pythag.h" + +#ifdef _MSC_VER +#include +#define isnan(x) _isnan((double)x) +#endif + +#define _sign(a, b) b >=0 ? a : -a + +doubleComplex zsqrts(doubleComplex in) { + double RMax = getOverflowThreshold(); + double BRMin = 2 * getUnderflowThreshold(); + + double RealIn = zreals(in); + double ImgIn = zimags(in); + + double RealOut = 0; + double ImgOut = 0; + + if(RealIn == 0) + {/* pure imaginary case */ + if(dabss(ImgIn >= BRMin)) + RealOut = dsqrts(0.5 * dabss(ImgIn)); + else + RealOut = dsqrts(dabss(ImgIn)) * dsqrts(0.5); + + ImgOut = _sign(1, ImgIn) * RealOut; + } + else if( dabss(RealIn) <= RMax && dabss(ImgIn) <= RMax) + {/* standard case : a (not zero) and b are finite */ + double Temp = dsqrts(2 * (dabss(RealIn) + dpythags(RealIn, ImgIn))); + /* overflow test */ + if(Temp > RMax) + {/* handle (spurious) overflow by scaling a and b */ + double RealTemp = RealIn / 16; + double ImgTemp = ImgIn / 16; + Temp = dsqrts(2 * (dabss(RealIn) + dpythags(RealIn, ImgTemp))); + if(RealTemp >= 0) + { + RealOut = 2 * Temp; + ImgOut = 4 * ImgTemp / Temp; + } + else + { + RealOut = 4 * dabss(ImgIn) / Temp; + ImgOut = _sign(2, ImgIn) * Temp; + } + } + else if(RealIn >= 0) /* classic switch to get the stable formulas */ + { + RealOut = 0.5 * Temp; + ImgOut = ImgIn / Temp; + } + else + { + RealOut = dabss(ImgIn) / Temp; + ImgOut = (_sign(0.5, ImgIn)) * Temp; + } + } + else + { + /* + //Here we treat the special cases where a and b are +- 00 or NaN. + //The following is the treatment recommended by the C99 standard + //with the simplification of returning NaN + i NaN if the + //the real part or the imaginary part is NaN (C99 recommends + //something more complicated) + */ + + if(isnan(RealIn) == 1 || isnan(ImgIn) == 1) + {/* got NaN + i NaN */ + RealOut = RealIn + ImgIn; + ImgOut = RealOut; + } + else if( dabss(ImgIn) > RMax) + {/* case a +- i oo -> result must be +oo +- i oo for all a (finite or not) */ + RealOut = dabss(ImgIn); + ImgOut = ImgIn; + } + else if(RealIn < -RMax) + {/* here a is -Inf and b is finite */ + RealOut = 0; + ImgOut = _sign(1, ImgIn) * dabss(RealIn); + } + else + {/* here a is +Inf and b is finite */ + RealOut = RealIn; + ImgOut = 0; + } + } + + return DoubleComplex(RealOut, ImgOut); +} diff --git a/src/c/elementaryFunctions/tan/ztans.c b/src/c/elementaryFunctions/tan/ztans.c index 761da36b..66e74cec 100644 --- a/src/c/elementaryFunctions/tan/ztans.c +++ b/src/c/elementaryFunctions/tan/ztans.c @@ -1,104 +1,104 @@ -/* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab - * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET - * Copyright (C) Bruno Pincon - * - * 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 - * - */ - -/* - ALGORITHM - based on the formula : - - 0.5 sin(2 xr) + i 0.5 sinh(2 xi) - tan(xr + i xi) = --------------------------------- - cos(xr)^2 + sinh(xi)^2 - - noting d = cos(xr)^2 + sinh(xi)^2, we have : - - yr = 0.5 * sin(2 * xr) / d (1) - - yi = 0.5 * sinh(2 * xi) / d (2) - - to avoid spurious overflows in computing yi with - formula (2) (which results in NaN for yi) - we use also the following formula : - - yi = sign(xi) when |xi| > LIM (3) - - Explanations for (3) : - - we have d = sinh(xi)^2 ( 1 + (cos(xr)/sinh(xi))^2 ), - so when : - - (cos(xr)/sinh(xi))^2 < epsm ( epsm = max relative error - for coding a real in a f.p. - number set F(b,p,emin,emax) - epsm = 0.5 b^(1-p) ) - which is forced when : - - 1/sinh(xi)^2 < epsm (4) - <=> |xi| > asinh(1/sqrt(epsm)) (= 19.06... in ieee 754 double) - - sinh(xi)^2 is a good approximation for d (relative to the f.p. - arithmetic used) and then yr may be approximate with : - - yr = cosh(xi)/sinh(xi) - = sign(xi) (1 + exp(-2 |xi|))/(1 - exp(-2|xi|)) - = sign(xi) (1 + 2 u + 2 u^2 + 2 u^3 + ...) - - with u = exp(-2 |xi|)). Now when : - - 2 exp(-2|xi|) < epsm (2) - <=> |xi| > 0.5 * log(2/epsm) (= 18.71... in ieee 754 double) - - sign(xi) is a good approximation for yr. - - Constraint (1) is stronger than (2) and we take finaly - - LIM = 1 + log(2/sqrt(epsm)) - - (log(2/sqrt(epsm)) being very near asinh(1/sqrt(epsm)) - -AUTHOR - Bruno Pincon -*/ - -#include -#include "lapack.h" -#include "tan.h" -#include "sqrt.h" -#include "cos.h" -#include "sinh.h" -#include "sin.h" -#include "log.h" -#include "abs.h" - -#define localSign(x) x >= 0 ? 1.0 : -1.0 - -doubleComplex ztans(doubleComplex z) { - double Temp = 0; - double Lim = 1 + dlogs(2.0 / dsqrts( getRelativeMachinePrecision())); - double RealIn = zreals(z); - double ImagIn = zimags(z); - double RealOut = 0; - double ImagOut = 0; - - Temp = pow(dcoss(RealIn), 2) + pow(dsinhs(ImagIn), 2); - RealOut = 0.5 * dsins(2 * RealIn) / Temp; - if(dabss(ImagIn) < Lim) - { - ImagOut = 0.5 * dsinhs(2 * ImagIn) / Temp; - } - else - { - ImagOut = localSign(ImagIn); - } - - return DoubleComplex(RealOut, ImagOut); -} +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET + * Copyright (C) Bruno Pincon + * + * 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 + * + */ + +/* + ALGORITHM + based on the formula : + + 0.5 sin(2 xr) + i 0.5 sinh(2 xi) + tan(xr + i xi) = --------------------------------- + cos(xr)^2 + sinh(xi)^2 + + noting d = cos(xr)^2 + sinh(xi)^2, we have : + + yr = 0.5 * sin(2 * xr) / d (1) + + yi = 0.5 * sinh(2 * xi) / d (2) + + to avoid spurious overflows in computing yi with + formula (2) (which results in NaN for yi) + we use also the following formula : + + yi = sign(xi) when |xi| > LIM (3) + + Explanations for (3) : + + we have d = sinh(xi)^2 ( 1 + (cos(xr)/sinh(xi))^2 ), + so when : + + (cos(xr)/sinh(xi))^2 < epsm ( epsm = max relative error + for coding a real in a f.p. + number set F(b,p,emin,emax) + epsm = 0.5 b^(1-p) ) + which is forced when : + + 1/sinh(xi)^2 < epsm (4) + <=> |xi| > asinh(1/sqrt(epsm)) (= 19.06... in ieee 754 double) + + sinh(xi)^2 is a good approximation for d (relative to the f.p. + arithmetic used) and then yr may be approximate with : + + yr = cosh(xi)/sinh(xi) + = sign(xi) (1 + exp(-2 |xi|))/(1 - exp(-2|xi|)) + = sign(xi) (1 + 2 u + 2 u^2 + 2 u^3 + ...) + + with u = exp(-2 |xi|)). Now when : + + 2 exp(-2|xi|) < epsm (2) + <=> |xi| > 0.5 * log(2/epsm) (= 18.71... in ieee 754 double) + + sign(xi) is a good approximation for yr. + + Constraint (1) is stronger than (2) and we take finaly + + LIM = 1 + log(2/sqrt(epsm)) + + (log(2/sqrt(epsm)) being very near asinh(1/sqrt(epsm)) + +AUTHOR + Bruno Pincon +*/ + +#include +#include "lapack.h" +#include "tan.h" +#include "sqrt.h" +#include "cos.h" +#include "sinh.h" +#include "sin.h" +#include "log.h" +#include "abs.h" + +#define localSign(x) x >= 0 ? 1.0 : -1.0 + +doubleComplex ztans(doubleComplex z) { + double Temp = 0; + double Lim = 1 + dlogs(2.0 / dsqrts( getRelativeMachinePrecision())); + double RealIn = zreals(z); + double ImagIn = zimags(z); + double RealOut = 0; + double ImagOut = 0; + + Temp = pow(dcoss(RealIn), 2) + pow(dsinhs(ImagIn), 2); + RealOut = 0.5 * dsins(2 * RealIn) / Temp; + if(dabss(ImagIn) < Lim) + { + ImagOut = 0.5 * dsinhs(2 * ImagIn) / Temp; + } + else + { + ImagOut = localSign(ImagIn); + } + + return DoubleComplex(RealOut, ImagOut); +} diff --git a/src/c/implicitList/dynlib_implicitlist.h b/src/c/implicitList/dynlib_implicitlist.h index 297c64b3..9fe60525 100644 --- a/src/c/implicitList/dynlib_implicitlist.h +++ b/src/c/implicitList/dynlib_implicitlist.h @@ -1,26 +1,26 @@ -/* -* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -* Copyright (C) 2009 - DIGITEO - Allan CORNET -* -* 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 -* -*/ - -#ifndef __DYNLIB_IMPLICITLIST_H__ -#define __DYNLIB_IMPLICITLIST_H__ - -#if defined(_MSC_VER) && defined(_USRDLL) - #if IMPLICITLIST_EXPORTS - #define EXTERN_IMPLIST __declspec (dllexport) - #else - #define EXTERN_IMPLIST __declspec (dllimport) - #endif -#else - #define EXTERN_IMPLIST -#endif - -#endif /* __DYNLIB_IMPLICITLIST_H__ */ +/* +* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +* Copyright (C) 2009 - DIGITEO - Allan CORNET +* +* 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 +* +*/ + +#ifndef __DYNLIB_IMPLICITLIST_H__ +#define __DYNLIB_IMPLICITLIST_H__ + +#if defined(_MSC_VER) && defined(_USRDLL) + #if IMPLICITLIST_EXPORTS + #define EXTERN_IMPLIST __declspec (dllexport) + #else + #define EXTERN_IMPLIST __declspec (dllimport) + #endif +#else + #define EXTERN_IMPLIST +#endif + +#endif /* __DYNLIB_IMPLICITLIST_H__ */ diff --git a/src/c/matrixOperations/includes/dynlib_matrixoperations.h b/src/c/matrixOperations/includes/dynlib_matrixoperations.h index a0597a59..c357d981 100644 --- a/src/c/matrixOperations/includes/dynlib_matrixoperations.h +++ b/src/c/matrixOperations/includes/dynlib_matrixoperations.h @@ -1,26 +1,26 @@ -/* -* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -* Copyright (C) 2009 - DIGITEO - Allan CORNET -* -* 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 -* -*/ - -#ifndef __DYNLIB_MATRIXOPERATIONS_H__ -#define __DYNLIB_MATRIXOPERATIONS_H__ - -#if defined(_MSC_VER) && defined(_USRDLL) - #if MATRIXOPERATIONS_EXPORTS - #define EXTERN_MATOPS __declspec (dllexport) - #else - #define EXTERN_MATOPS __declspec (dllimport) - #endif -#else - #define EXTERN_MATOPS -#endif - -#endif /* __DYNLIB_MATRIXOPERATIONS_H__ */ +/* +* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +* Copyright (C) 2009 - DIGITEO - Allan CORNET +* +* 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 +* +*/ + +#ifndef __DYNLIB_MATRIXOPERATIONS_H__ +#define __DYNLIB_MATRIXOPERATIONS_H__ + +#if defined(_MSC_VER) && defined(_USRDLL) + #if MATRIXOPERATIONS_EXPORTS + #define EXTERN_MATOPS __declspec (dllexport) + #else + #define EXTERN_MATOPS __declspec (dllimport) + #endif +#else + #define EXTERN_MATOPS +#endif + +#endif /* __DYNLIB_MATRIXOPERATIONS_H__ */ diff --git a/src/c/operations/includes/dynlib_operations.h b/src/c/operations/includes/dynlib_operations.h index e91f6322..f4a26e76 100644 --- a/src/c/operations/includes/dynlib_operations.h +++ b/src/c/operations/includes/dynlib_operations.h @@ -1,26 +1,26 @@ -/* -* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -* Copyright (C) 2009 - DIGITEO - Allan CORNET -* -* 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 -* -*/ - -#ifndef __DYNLIB_OPERATIONS_H__ -#define __DYNLIB_OPERATIONS_H__ - -#if defined(_MSC_VER) && defined(_USRDLL) - #if OPERATIONS_EXPORTS - #define EXTERN_OPERATIONS __declspec (dllexport) - #else - #define EXTERN_OPERATIONS __declspec (dllimport) - #endif -#else - #define EXTERN_OPERATIONS -#endif - -#endif /* __DYNLIB_OPERATIONS_H__ */ +/* +* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +* Copyright (C) 2009 - DIGITEO - Allan CORNET +* +* 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 +* +*/ + +#ifndef __DYNLIB_OPERATIONS_H__ +#define __DYNLIB_OPERATIONS_H__ + +#if defined(_MSC_VER) && defined(_USRDLL) + #if OPERATIONS_EXPORTS + #define EXTERN_OPERATIONS __declspec (dllexport) + #else + #define EXTERN_OPERATIONS __declspec (dllimport) + #endif +#else + #define EXTERN_OPERATIONS +#endif + +#endif /* __DYNLIB_OPERATIONS_H__ */ diff --git a/src/c/signalProcessing/includes/dynlib_signalprocessing.h b/src/c/signalProcessing/includes/dynlib_signalprocessing.h index fcbe5800..478c1973 100644 --- a/src/c/signalProcessing/includes/dynlib_signalprocessing.h +++ b/src/c/signalProcessing/includes/dynlib_signalprocessing.h @@ -1,26 +1,26 @@ -/* -* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -* Copyright (C) 2009 - DIGITEO - Allan CORNET -* -* 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 -* -*/ - -#ifndef __DYNLIB_SIGNALPROCESSING_H__ -#define __DYNLIB_SIGNALPROCESSING_H__ - -#if defined(_MSC_VER) && defined(_USRDLL) - #if SIGNALPROCESSING_EXPORTS - #define EXTERN_SIGPROC __declspec (dllexport) - #else - #define EXTERN_SIGPROC __declspec (dllimport) - #endif -#else - #define EXTERN_SIGPROC -#endif - -#endif /* __DYNLIB_SIGNALPROCESSING_H__ */ +/* +* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +* Copyright (C) 2009 - DIGITEO - Allan CORNET +* +* 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 +* +*/ + +#ifndef __DYNLIB_SIGNALPROCESSING_H__ +#define __DYNLIB_SIGNALPROCESSING_H__ + +#if defined(_MSC_VER) && defined(_USRDLL) + #if SIGNALPROCESSING_EXPORTS + #define EXTERN_SIGPROC __declspec (dllexport) + #else + #define EXTERN_SIGPROC __declspec (dllimport) + #endif +#else + #define EXTERN_SIGPROC +#endif + +#endif /* __DYNLIB_SIGNALPROCESSING_H__ */ diff --git a/src/c/statisticsFunctions/includes/dynlib_statisticsfunctions.h b/src/c/statisticsFunctions/includes/dynlib_statisticsfunctions.h index b6dab50f..fbfc0622 100644 --- a/src/c/statisticsFunctions/includes/dynlib_statisticsfunctions.h +++ b/src/c/statisticsFunctions/includes/dynlib_statisticsfunctions.h @@ -1,26 +1,26 @@ -/* -* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -* Copyright (C) 2009 - DIGITEO - Allan CORNET -* -* 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 -* -*/ - -#ifndef __DYNLIB_STATISTICSFUNCTIONS_H__ -#define __DYNLIB_STATISTICSFUNCTIONS_H__ - -#if defined(_MSC_VER) && defined(_USRDLL) - #if STATISTICSFUNCTIONS_EXPORTS - #define EXTERN_STATFUNC __declspec (dllexport) - #else - #define EXTERN_STATFUNC __declspec (dllimport) - #endif -#else - #define EXTERN_STATFUNC -#endif - -#endif /* __DYNLIB_STATISTICSFUNCTIONS_H__ */ +/* +* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +* Copyright (C) 2009 - DIGITEO - Allan CORNET +* +* 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 +* +*/ + +#ifndef __DYNLIB_STATISTICSFUNCTIONS_H__ +#define __DYNLIB_STATISTICSFUNCTIONS_H__ + +#if defined(_MSC_VER) && defined(_USRDLL) + #if STATISTICSFUNCTIONS_EXPORTS + #define EXTERN_STATFUNC __declspec (dllexport) + #else + #define EXTERN_STATFUNC __declspec (dllimport) + #endif +#else + #define EXTERN_STATFUNC +#endif + +#endif /* __DYNLIB_STATISTICSFUNCTIONS_H__ */ diff --git a/src/c/string/disp/sdisps.c b/src/c/string/disp/sdisps.c index 98b04a6f..ddec56c3 100644 --- a/src/c/string/disp/sdisps.c +++ b/src/c/string/disp/sdisps.c @@ -13,6 +13,6 @@ #include "disp.h" double sdisps (float in) { - printf(" %f \n",in); + printf(" %f \n",in); return 0; } diff --git a/src/c/string/includes/dynlib_string.h b/src/c/string/includes/dynlib_string.h index ca11ce10..b8d4248d 100644 --- a/src/c/string/includes/dynlib_string.h +++ b/src/c/string/includes/dynlib_string.h @@ -1,27 +1,27 @@ -/* -* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -* Copyright (C) 2009 - DIGITEO - Allan CORNET -* -* 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 -* -*/ - -#ifndef __DYNLIB_STRING_H__ -#define __DYNLIB_STRING_H__ - -#if defined(_MSC_VER) && defined(_USRDLL) - #if STRING_EXPORTS - #define EXTERN_STRING __declspec (dllexport) - #else - #define EXTERN_STRING __declspec (dllimport) - #endif -#else - #define EXTERN_STRING -#endif - -#endif /* __DYNLIB_STRING_H__ */ - +/* +* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +* Copyright (C) 2009 - DIGITEO - Allan CORNET +* +* 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 +* +*/ + +#ifndef __DYNLIB_STRING_H__ +#define __DYNLIB_STRING_H__ + +#if defined(_MSC_VER) && defined(_USRDLL) + #if STRING_EXPORTS + #define EXTERN_STRING __declspec (dllexport) + #else + #define EXTERN_STRING __declspec (dllimport) + #endif +#else + #define EXTERN_STRING +#endif + +#endif /* __DYNLIB_STRING_H__ */ + diff --git a/src/c/type/dynlib_type.h b/src/c/type/dynlib_type.h index 35ae247f..b3471b98 100644 --- a/src/c/type/dynlib_type.h +++ b/src/c/type/dynlib_type.h @@ -1,26 +1,26 @@ -/* -* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab -* Copyright (C) 2009 - DIGITEO - Allan CORNET -* -* 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 -* -*/ - -#ifndef __DYNLIB_TYPE_H__ -#define __DYNLIB_TYPE_H__ - -#if defined(_MSC_VER) && defined(_USRDLL) - #if TYPE_EXPORTS - #define EXTERN_TYPE __declspec (dllexport) - #else - #define EXTERN_TYPE __declspec (dllimport) - #endif -#else - #define EXTERN_TYPE -#endif - -#endif /* __DYNLIB_TYPE_H__ */ +/* +* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +* Copyright (C) 2009 - DIGITEO - Allan CORNET +* +* 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 +* +*/ + +#ifndef __DYNLIB_TYPE_H__ +#define __DYNLIB_TYPE_H__ + +#if defined(_MSC_VER) && defined(_USRDLL) + #if TYPE_EXPORTS + #define EXTERN_TYPE __declspec (dllexport) + #else + #define EXTERN_TYPE __declspec (dllimport) + #endif +#else + #define EXTERN_TYPE +#endif + +#endif /* __DYNLIB_TYPE_H__ */ diff --git a/tests/unit_tests/test000_TrigonIdentity/launchConversion.sci b/tests/unit_tests/test000_TrigonIdentity/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test000_TrigonIdentity/launchConversion.sci +++ b/tests/unit_tests/test000_TrigonIdentity/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test000_TrigonIdentity/scilabcode/mainfunction.sci b/tests/unit_tests/test000_TrigonIdentity/scilabcode/mainfunction.sci index b19fc009..ca25950b 100644 --- a/tests/unit_tests/test000_TrigonIdentity/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test000_TrigonIdentity/scilabcode/mainfunction.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() // ------------------------------ // --- Simple Scalar Addition --- diff --git a/tests/unit_tests/test001_LinearRegression/launchConversion.sci b/tests/unit_tests/test001_LinearRegression/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test001_LinearRegression/launchConversion.sci +++ b/tests/unit_tests/test001_LinearRegression/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test001_LinearRegression/scilabcode/mainfunction.sci b/tests/unit_tests/test001_LinearRegression/scilabcode/mainfunction.sci index c6e09a0c..e46f9c96 100644 --- a/tests/unit_tests/test001_LinearRegression/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test001_LinearRegression/scilabcode/mainfunction.sci @@ -1,56 +1,56 @@ -//SCI2C: DEFAULT_PRECISION= FLOAT - -function mainfunction() - -// Knowing that -// (1) P * (V^gamma) = C -// Where -// P = Pressure -// V = Volume -// gamma,C = constants depending on the particular gas used. -// (2) log10(P) = log10(C) - gamma*log10(V) -// (3) x = log10(V) -// (4) y = log10(P) -// than (2) becomes: -// y = a + b*x; -// Where -// a = log10(C) -// b = -gamma -// Then thanks to this transformation it is possible to perform -// a linear regression to estimate gamma and C! - -Volume = [54.3 61.8 72.4 88.7 118.6 194.0]; -Pressure = [61.2 49.5 37.6 28.4 19.2 10.1]; -x = log10(Volume); -y = log10(Pressure); - -a = (sum(y)*sum(x.^2)-sum(x)*sum(x.*y))./(length(x)*sum(x.^2)-sum(x).*sum(x)); -b = (length(x)*sum(x.*y)-sum(x)*sum(y))./(length(x)*sum(x.^2)-sum(x).*sum(x)); - -// Other way to compute a and b -beq = sum((x-mean(x)).*(y-mean(y)))./sum((x-mean(x)).^2); -aeq = mean(y)-mean(x)*beq; - -C = 10 .^a; -gamma = -b; - -disp('C') -disp(C) - -disp('gamma'); -disp(gamma); - -disp('a'); -disp(a) -disp('aeq'); -disp(aeq) - -disp('b'); -disp(b) -disp('beq'); -disp(beq) - - //plot(Volume,Pressure); - //plot(Volume,(C ./(Volume.^gamma)),'r') -endfunction - +//SCI2C: DEFAULT_PRECISION= FLOAT + +function mainfunction() + +// Knowing that +// (1) P * (V^gamma) = C +// Where +// P = Pressure +// V = Volume +// gamma,C = constants depending on the particular gas used. +// (2) log10(P) = log10(C) - gamma*log10(V) +// (3) x = log10(V) +// (4) y = log10(P) +// than (2) becomes: +// y = a + b*x; +// Where +// a = log10(C) +// b = -gamma +// Then thanks to this transformation it is possible to perform +// a linear regression to estimate gamma and C! + +Volume = [54.3 61.8 72.4 88.7 118.6 194.0]; +Pressure = [61.2 49.5 37.6 28.4 19.2 10.1]; +x = log10(Volume); +y = log10(Pressure); + +a = (sum(y)*sum(x.^2)-sum(x)*sum(x.*y))./(length(x)*sum(x.^2)-sum(x).*sum(x)); +b = (length(x)*sum(x.*y)-sum(x)*sum(y))./(length(x)*sum(x.^2)-sum(x).*sum(x)); + +// Other way to compute a and b +beq = sum((x-mean(x)).*(y-mean(y)))./sum((x-mean(x)).^2); +aeq = mean(y)-mean(x)*beq; + +C = 10 .^a; +gamma = -b; + +disp('C') +disp(C) + +disp('gamma'); +disp(gamma); + +disp('a'); +disp(a) +disp('aeq'); +disp(aeq) + +disp('b'); +disp(b) +disp('beq'); +disp(beq) + + //plot(Volume,Pressure); + //plot(Volume,(C ./(Volume.^gamma)),'r') +endfunction + diff --git a/tests/unit_tests/test002_Symbols/launchConversion.sci b/tests/unit_tests/test002_Symbols/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test002_Symbols/launchConversion.sci +++ b/tests/unit_tests/test002_Symbols/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test002_Symbols/scilabcode/mainfunction.sci b/tests/unit_tests/test002_Symbols/scilabcode/mainfunction.sci index f5d40b0d..193c1d6a 100644 --- a/tests/unit_tests/test002_Symbols/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test002_Symbols/scilabcode/mainfunction.sci @@ -1,21 +1,21 @@ -function mainfunction() - -// --------------------------------------- -// --- Initialization of the operands. --- -// --------------------------------------- - -v1 = %inf; -v2 = %nan; -v3 = %T; -v4 = %F; -v5 = %pi; - -disp(-v1) -disp(v1+v2) -disp(v2) -disp(v3) -disp(v4) -disp(v5) - -endfunction - +function mainfunction() + +// --------------------------------------- +// --- Initialization of the operands. --- +// --------------------------------------- + +v1 = %inf; +v2 = %nan; +v3 = %T; +v4 = %F; +v5 = %pi; + +disp(-v1) +disp(v1+v2) +disp(v2) +disp(v3) +disp(v4) +disp(v5) + +endfunction + diff --git a/tests/unit_tests/test003_VerySimple/launchConversion.sci b/tests/unit_tests/test003_VerySimple/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test003_VerySimple/launchConversion.sci +++ b/tests/unit_tests/test003_VerySimple/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test003_VerySimple/scilabcode/mainfunction.sci b/tests/unit_tests/test003_VerySimple/scilabcode/mainfunction.sci index 12cc8944..3e757eef 100644 --- a/tests/unit_tests/test003_VerySimple/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test003_VerySimple/scilabcode/mainfunction.sci @@ -1,10 +1,10 @@ -function mainfunction() - -// --------------------------------------- -// --- Initialization of the operands. --- -// --------------------------------------- -powerfactor = 3; -disp(powerfactor) - -endfunction - +function mainfunction() + +// --------------------------------------- +// --- Initialization of the operands. --- +// --------------------------------------- +powerfactor = 3; +disp(powerfactor) + +endfunction + diff --git a/tests/unit_tests/test004_Filter/scilabcode/high_pass.sci b/tests/unit_tests/test004_Filter/scilabcode/high_pass.sci index 04eea9d7..a4e5e45d 100644 --- a/tests/unit_tests/test004_Filter/scilabcode/high_pass.sci +++ b/tests/unit_tests/test004_Filter/scilabcode/high_pass.sci @@ -1,16 +1,16 @@ -// Return RC high-pass filter output_signal samples, -// given input_signal samples, -// time interval dt, -// R and C -//SCI2C: NIN= 4 -//SCI2C: NOUT= 1 -//SCI2C: OUT(1).TP= IN(1).TP -//SCI2C: OUT(1).SZ(1)= IN(1).SZ(1) -//SCI2C: OUT(1).SZ(2)= IN(1).SZ(2) -function output_signal = high_pass(input_signal, dt, R, C) - alpha = R * C / (R * C + dt) - output_signal(1) = input_signal(1) - for i = 2 : size(input_signal, 2) - output_signal(i) = alpha * output_signal(i-1) + alpha * (input_signal(i) - input_signal(i-1)) - end -endfunction \ No newline at end of file +// Return RC high-pass filter output_signal samples, +// given input_signal samples, +// time interval dt, +// R and C +//SCI2C: NIN= 4 +//SCI2C: NOUT= 1 +//SCI2C: OUT(1).TP= IN(1).TP +//SCI2C: OUT(1).SZ(1)= IN(1).SZ(1) +//SCI2C: OUT(1).SZ(2)= IN(1).SZ(2) +function output_signal = high_pass(input_signal, dt, R, C) + alpha = R * C / (R * C + dt) + output_signal(1) = input_signal(1) + for i = 2 : size(input_signal, 2) + output_signal(i) = alpha * output_signal(i-1) + alpha * (input_signal(i) - input_signal(i-1)) + end +endfunction diff --git a/tests/unit_tests/test004_LinearCombination/launchConversion.sci b/tests/unit_tests/test004_LinearCombination/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test004_LinearCombination/launchConversion.sci +++ b/tests/unit_tests/test004_LinearCombination/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test004_LinearCombination/scilabcode/mainfunction.sci b/tests/unit_tests/test004_LinearCombination/scilabcode/mainfunction.sci index d02cdc22..8f8121ba 100644 --- a/tests/unit_tests/test004_LinearCombination/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test004_LinearCombination/scilabcode/mainfunction.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() s1 = 2; s2 = 3; diff --git a/tests/unit_tests/test005_LinearCombinationNoTempVars/launchConversion.sci b/tests/unit_tests/test005_LinearCombinationNoTempVars/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test005_LinearCombinationNoTempVars/launchConversion.sci +++ b/tests/unit_tests/test005_LinearCombinationNoTempVars/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test005_LinearCombinationNoTempVars/scilabcode/LinComb.sci b/tests/unit_tests/test005_LinearCombinationNoTempVars/scilabcode/LinComb.sci index 9f74b454..7d166140 100644 --- a/tests/unit_tests/test005_LinearCombinationNoTempVars/scilabcode/LinComb.sci +++ b/tests/unit_tests/test005_LinearCombinationNoTempVars/scilabcode/LinComb.sci @@ -1,6 +1,6 @@ //SCI2C: NIN= 6 //SCI2C: NOUT= 1 -//SCI2C: OUT(1).TP= IN(1).TP +//SCI2C: OUT(1).TP= IN(1).TP //SCI2C: OUT(1).SZ(1)= IN(2).SZ(1) //SCI2C: OUT(1).SZ(2)= IN(2).SZ(2) diff --git a/tests/unit_tests/test005_LinearCombinationNoTempVars/scilabcode/mainfunction.sci b/tests/unit_tests/test005_LinearCombinationNoTempVars/scilabcode/mainfunction.sci index 35d5456d..4df034fa 100644 --- a/tests/unit_tests/test005_LinearCombinationNoTempVars/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test005_LinearCombinationNoTempVars/scilabcode/mainfunction.sci @@ -1,6 +1,6 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() s1 = 2; s2 = 3; diff --git a/tests/unit_tests/test011_InsExtfunctions/launchConversion.sci b/tests/unit_tests/test011_InsExtfunctions/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test011_InsExtfunctions/launchConversion.sci +++ b/tests/unit_tests/test011_InsExtfunctions/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test011_InsExtfunctions/scilabcode/mainfunction.sci b/tests/unit_tests/test011_InsExtfunctions/scilabcode/mainfunction.sci index d50ed6bb..4c497ab8 100644 --- a/tests/unit_tests/test011_InsExtfunctions/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test011_InsExtfunctions/scilabcode/mainfunction.sci @@ -1,24 +1,24 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE - -function mainfunction() - -M1 = 22.3*ones(3,4); -M2 = 44.5*ones(M1); -v1 = 1:4; -s1 = 3; - -//[M1(1,1),M1(1,2)] = twooutputs(1); - -M1(3,3) = M2(1,3); - -M1(5) = 4; -M1(2,2) = M2(6); - -M2(3,2) = s1; - -M2(1:4)=11.3*(1:4); -M2(4:7)=M1(3:6); - -disp(M1) -disp(M2) -endfunction +//SCI2C: DEFAULT_PRECISION= DOUBLE + +function mainfunction() + +M1 = 22.3*ones(3,4); +M2 = 44.5*ones(M1); +v1 = 1:4; +s1 = 3; + +//[M1(1,1),M1(1,2)] = twooutputs(1); + +M1(3,3) = M2(1,3); + +M1(5) = 4; +M1(2,2) = M2(6); + +M2(3,2) = s1; + +M2(1:4)=11.3*(1:4); +M2(4:7)=M1(3:6); + +disp(M1) +disp(M2) +endfunction diff --git a/tests/unit_tests/test012_OpMinus/launchConversion.sci b/tests/unit_tests/test012_OpMinus/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test012_OpMinus/launchConversion.sci +++ b/tests/unit_tests/test012_OpMinus/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test012_OpMinus/scilabcode/mainfunction.sci b/tests/unit_tests/test012_OpMinus/scilabcode/mainfunction.sci index 555ee296..25212110 100644 --- a/tests/unit_tests/test012_OpMinus/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test012_OpMinus/scilabcode/mainfunction.sci @@ -1,10 +1,10 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() -s1 = -3; -a = s1*ones(3,4); -disp(a) -b = -a; -disp(b) -endfunction +s1 = -3; +a = s1*ones(3,4); +disp(a) +b = -a; +disp(b) +endfunction diff --git a/tests/unit_tests/test013_TestOpRcCC/launchConversion.sci b/tests/unit_tests/test013_TestOpRcCC/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test013_TestOpRcCC/launchConversion.sci +++ b/tests/unit_tests/test013_TestOpRcCC/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test013_TestOpRcCC/scilabcode/mainfunction.sci b/tests/unit_tests/test013_TestOpRcCC/scilabcode/mainfunction.sci index eda20c46..7b5b2295 100644 --- a/tests/unit_tests/test013_TestOpRcCC/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test013_TestOpRcCC/scilabcode/mainfunction.sci @@ -1,15 +1,15 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE - -function mainfunction() - -vr1 = [1 2]; -vr2 = [3 4]; -vc1 = [11;12] -vc2 = [13;14] -M1 = [vr1 vr2;vr2 vr1]; -M2 = [vc1 vc2]; - -disp(M1); -disp(M2); - -endfunction +//SCI2C: DEFAULT_PRECISION= DOUBLE + +function mainfunction() + +vr1 = [1 2]; +vr2 = [3 4]; +vc1 = [11;12] +vc2 = [13;14] +M1 = [vr1 vr2;vr2 vr1]; +M2 = [vc1 vc2]; + +disp(M1); +disp(M2); + +endfunction diff --git a/tests/unit_tests/test018_NestedWhile/launchConversion.sci b/tests/unit_tests/test018_NestedWhile/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test018_NestedWhile/launchConversion.sci +++ b/tests/unit_tests/test018_NestedWhile/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test018_NestedWhile/scilabcode/mainfunction.sci b/tests/unit_tests/test018_NestedWhile/scilabcode/mainfunction.sci index 8142e6ff..8b9c07d3 100644 --- a/tests/unit_tests/test018_NestedWhile/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test018_NestedWhile/scilabcode/mainfunction.sci @@ -1,19 +1,19 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() + +a = 0; +b = 5; +while (a+b < 36) + disp('a'); + disp(a); + a = a + b; + while (b < 9) + disp('b'); + disp(b); + b = b + 1; + a = a + 1; + end +end +endfunction -a = 0; -b = 5; -while (a+b < 36) - disp('a'); - disp(a); - a = a + b; - while (b < 9) - disp('b'); - disp(b); - b = b + 1; - a = a + 1; - end -end -endfunction - diff --git a/tests/unit_tests/test024_test_if_pi/launchConversion.sci b/tests/unit_tests/test024_test_if_pi/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test024_test_if_pi/launchConversion.sci +++ b/tests/unit_tests/test024_test_if_pi/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test024_test_if_pi/scilabcode/mainfunction.sci b/tests/unit_tests/test024_test_if_pi/scilabcode/mainfunction.sci index 6b1652fd..25528d16 100644 --- a/tests/unit_tests/test024_test_if_pi/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test024_test_if_pi/scilabcode/mainfunction.sci @@ -1,24 +1,24 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE +//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +function mainfunction() a=%pi*70; b=1; -c=0; +c=0; M = (1:3)'*(1:5) if a<=1 c=b; - disp(c) + disp(c) else if b==10 c=5; disp(c) else c=2; - disp(c) - S = c.^M; - disp(S); + disp(c) + S = c.^M; + disp(S); disp(a) end end -endfunction +endfunction diff --git a/tests/unit_tests/test038_FindI2O1Float/launchConversion.sci b/tests/unit_tests/test038_FindI2O1Float/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test038_FindI2O1Float/launchConversion.sci +++ b/tests/unit_tests/test038_FindI2O1Float/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test038_FindI2O1Float/scilabcode/mainfunction.sci b/tests/unit_tests/test038_FindI2O1Float/scilabcode/mainfunction.sci index 789f3b73..7c4f61b0 100644 --- a/tests/unit_tests/test038_FindI2O1Float/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test038_FindI2O1Float/scilabcode/mainfunction.sci @@ -1,57 +1,57 @@ -//SCI2C: DEFAULT_PRECISION= FLOAT - -function mainfunction() - -s1 = -5.4; -disp('s1'); -disp(s1); - -s2 = 2.2; -disp('s2'); -disp(s2); - -A = ((1.2:0.99:4.9)')*(-2.3:1.1:3.9) -disp('A = ((1.2:0.99:4.9)'')*(-2.3:1.1:3.9)'); -disp(A); - -disp('o1 = -s1 + s2;'); -o1 = -s1 + s2; -disp(o1); - -disp('o1 = -3.4 + 4.5;'); -o1 = -3.4 + 4.5; -disp(o1); - -disp('o2 = -3.4 + A;'); -o2 = -3.4 + A; -disp(o2); - -disp('o3 = A + (-3.4);'); -o3 = A + (-3.4); -disp(o3); - -disp('o4 = A + A;'); -o4 = A + A; -disp(o4); - -disp('o5 = +A;'); -o5 = +A; -disp(o5); - -st0 = '#'; -disp('st0') -disp(st0) - -st1 = 'ciao'; -disp('st1') -disp(st1) - -st2 = 'bye'; -disp('st2') -disp(st2) - -st3 = st0+st1+st2; -disp('st3 = st0+st1+st2;') -disp(st3) -endfunction - +//SCI2C: DEFAULT_PRECISION= FLOAT + +function mainfunction() + +s1 = -5.4; +disp('s1'); +disp(s1); + +s2 = 2.2; +disp('s2'); +disp(s2); + +A = ((1.2:0.99:4.9)')*(-2.3:1.1:3.9) +disp('A = ((1.2:0.99:4.9)'')*(-2.3:1.1:3.9)'); +disp(A); + +disp('o1 = -s1 + s2;'); +o1 = -s1 + s2; +disp(o1); + +disp('o1 = -3.4 + 4.5;'); +o1 = -3.4 + 4.5; +disp(o1); + +disp('o2 = -3.4 + A;'); +o2 = -3.4 + A; +disp(o2); + +disp('o3 = A + (-3.4);'); +o3 = A + (-3.4); +disp(o3); + +disp('o4 = A + A;'); +o4 = A + A; +disp(o4); + +disp('o5 = +A;'); +o5 = +A; +disp(o5); + +st0 = '#'; +disp('st0') +disp(st0) + +st1 = 'ciao'; +disp('st1') +disp(st1) + +st2 = 'bye'; +disp('st2') +disp(st2) + +st3 = st0+st1+st2; +disp('st3 = st0+st1+st2;') +disp(st3) +endfunction + diff --git a/tests/unit_tests/test061_SumShortTest/launchConversion.sci b/tests/unit_tests/test061_SumShortTest/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test061_SumShortTest/launchConversion.sci +++ b/tests/unit_tests/test061_SumShortTest/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test061_SumShortTest/scilabcode/mainfunction.sci b/tests/unit_tests/test061_SumShortTest/scilabcode/mainfunction.sci index 78895afa..2d03ccd8 100644 --- a/tests/unit_tests/test061_SumShortTest/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test061_SumShortTest/scilabcode/mainfunction.sci @@ -1,22 +1,22 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE - -function mainfunction() - -s1 = (1:4)' * (1:3); -disp('s1'); -disp(s1); - -s2 = sum(s1); -disp('s2 = sum(s1);'); -disp(s2); - -s3 = sum(s1,1); -disp('s3 = sum(s1,1);'); -disp(s3); - -s4 = sum(s1,2); -disp('s4 = sum(s1,2);'); -disp(s4); - -endfunction - +//SCI2C: DEFAULT_PRECISION= DOUBLE + +function mainfunction() + +s1 = (1:4)' * (1:3); +disp('s1'); +disp(s1); + +s2 = sum(s1); +disp('s2 = sum(s1);'); +disp(s2); + +s3 = sum(s1,1); +disp('s3 = sum(s1,1);'); +disp(s3); + +s4 = sum(s1,2); +disp('s4 = sum(s1,2);'); +disp(s4); + +endfunction + diff --git a/tests/unit_tests/test064_OpMinusFloatComplex/launchConversion.sci b/tests/unit_tests/test064_OpMinusFloatComplex/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test064_OpMinusFloatComplex/launchConversion.sci +++ b/tests/unit_tests/test064_OpMinusFloatComplex/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test064_OpMinusFloatComplex/scilabcode/mainfunction.sci b/tests/unit_tests/test064_OpMinusFloatComplex/scilabcode/mainfunction.sci index a1e0d8c6..60322322 100644 --- a/tests/unit_tests/test064_OpMinusFloatComplex/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test064_OpMinusFloatComplex/scilabcode/mainfunction.sci @@ -1,43 +1,43 @@ -//SCI2C: DEFAULT_PRECISION= FLOAT - -function mainfunction() - -s1 = -5.4; -disp('s1'); -disp(s1); - -s2 = -2.2-4*%i; -disp('s2'); -disp(s2); - -A = ((1.2:0.99:4.9)')*(-2.3:1.1:3.9) -disp('A = ((1.2:0.99:4.9)'')*(-2.3:1.1:3.9)'); -disp(A); - -B = -2.11*A-%i*A; -disp('B'); - -disp('o1 = -s1 - s2;'); -o1 = -s1 - s2; -disp(o1); - -disp('o1 = -3.4 - 4.5;'); -o1 = (-3.4-%i) - (4.5-%i); -disp(o1); - -disp('o2 = -3.4 - B - A;'); -o2 = -3.4 - B - A; -disp(o2); - -disp('o3 = A - (-3.4);'); -o3 = A - (-3.4); -disp(o3); - -disp('o4 = A - A;'); -o4 = A - B; -disp(o4); - -disp('o5 = -A;'); -o5 = -B; -disp(o5); -endfunction +//SCI2C: DEFAULT_PRECISION= FLOAT + +function mainfunction() + +s1 = -5.4; +disp('s1'); +disp(s1); + +s2 = -2.2-4*%i; +disp('s2'); +disp(s2); + +A = ((1.2:0.99:4.9)')*(-2.3:1.1:3.9) +disp('A = ((1.2:0.99:4.9)'')*(-2.3:1.1:3.9)'); +disp(A); + +B = -2.11*A-%i*A; +disp('B'); + +disp('o1 = -s1 - s2;'); +o1 = -s1 - s2; +disp(o1); + +disp('o1 = -3.4 - 4.5;'); +o1 = (-3.4-%i) - (4.5-%i); +disp(o1); + +disp('o2 = -3.4 - B - A;'); +o2 = -3.4 - B - A; +disp(o2); + +disp('o3 = A - (-3.4);'); +o3 = A - (-3.4); +disp(o3); + +disp('o4 = A - A;'); +o4 = A - B; +disp(o4); + +disp('o5 = -A;'); +o5 = -B; +disp(o5); +endfunction diff --git a/tests/unit_tests/test081_twoFunctions/scilabcode/fun1.sci b/tests/unit_tests/test081_twoFunctions/scilabcode/fun1.sci index 3584aa28..fd157fca 100644 --- a/tests/unit_tests/test081_twoFunctions/scilabcode/fun1.sci +++ b/tests/unit_tests/test081_twoFunctions/scilabcode/fun1.sci @@ -1,10 +1,10 @@ //SCI2C: NIN= 1 //SCI2C: NOUT= 1 -//SCI2C: OUT(1).TP= IN(1).TP +//SCI2C: OUT(1).TP= IN(1).TP //SCI2C: OUT(1).SZ(1)= IN(1).SZ(1) //SCI2C: OUT(1).SZ(2)= IN(1).SZ(2) //SCI2C: DEFAULT_PRECISION= DOUBLE -function out = fun1(in1) -out = -in1; -endfunction +function out = fun1(in1) +out = -in1; +endfunction diff --git a/tests/unit_tests/test081_twoFunctions/scilabcode/fun2.sci b/tests/unit_tests/test081_twoFunctions/scilabcode/fun2.sci index 56a2f162..893a7c70 100644 --- a/tests/unit_tests/test081_twoFunctions/scilabcode/fun2.sci +++ b/tests/unit_tests/test081_twoFunctions/scilabcode/fun2.sci @@ -1,14 +1,14 @@ //SCI2C: NIN= 1 //SCI2C: NOUT= 1 -//SCI2C: OUT(1).TP= IN(1).TP +//SCI2C: OUT(1).TP= IN(1).TP //SCI2C: OUT(1).SZ(1)= '1' //SCI2C: OUT(1).SZ(2)= '1' //SCI2C: DEFAULT_PRECISION= DOUBLE -function out = fun2(in1) -a = 999; -disp("a"); -disp(a); -b = fun1(1); -out = 99; -endfunction +function out = fun2(in1) +a = 999; +disp("a"); +disp(a); +b = fun1(1); +out = 99; +endfunction diff --git a/tests/unit_tests/test081_twoFunctions/scilabcode/mainfunction.sci b/tests/unit_tests/test081_twoFunctions/scilabcode/mainfunction.sci index 728b3c3e..ee97c648 100644 --- a/tests/unit_tests/test081_twoFunctions/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test081_twoFunctions/scilabcode/mainfunction.sci @@ -1,12 +1,12 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE - -function mainfunction() - -b = fun2(2); -disp("b") -disp(b) -a=1; -b = fun1(1); -disp("b") -disp(b) -endfunction +//SCI2C: DEFAULT_PRECISION= DOUBLE + +function mainfunction() + +b = fun2(2); +disp("b") +disp(b) +a=1; +b = fun1(1); +disp("b") +disp(b) +endfunction diff --git a/tests/unit_tests/test088_SimpleFor/launchConversion.sci b/tests/unit_tests/test088_SimpleFor/launchConversion.sci index fc3f6fd4..dbe32308 100644 --- a/tests/unit_tests/test088_SimpleFor/launchConversion.sci +++ b/tests/unit_tests/test088_SimpleFor/launchConversion.sci @@ -1,4 +1,4 @@ -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test088_SimpleFor/scilabcode/mainfunction.sci b/tests/unit_tests/test088_SimpleFor/scilabcode/mainfunction.sci index df2c028c..47e1b4b4 100644 --- a/tests/unit_tests/test088_SimpleFor/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test088_SimpleFor/scilabcode/mainfunction.sci @@ -1,17 +1,17 @@ -function mainfunction() - -// --------------------------------------- -// --- Initialization of the operands. --- -// --------------------------------------- - -v1 = zeros(1,5); -disp('v1, before initialization.') -disp(v1) -for cnt = 1:5 - v1(cnt) = cnt; -end -disp('v1, after initialization.') -disp(v1) - -endfunction - +function mainfunction() + +// --------------------------------------- +// --- Initialization of the operands. --- +// --------------------------------------- + +v1 = zeros(1,5); +disp('v1, before initialization.') +disp(v1) +for cnt = 1:5 + v1(cnt) = cnt; +end +disp('v1, after initialization.') +disp(v1) + +endfunction + diff --git a/tests/unit_tests/test089_SimpleFor/launchConversion.sci b/tests/unit_tests/test089_SimpleFor/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test089_SimpleFor/launchConversion.sci +++ b/tests/unit_tests/test089_SimpleFor/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test089_SimpleFor/scilabcode/mainfunction.sci b/tests/unit_tests/test089_SimpleFor/scilabcode/mainfunction.sci index df2c028c..47e1b4b4 100644 --- a/tests/unit_tests/test089_SimpleFor/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test089_SimpleFor/scilabcode/mainfunction.sci @@ -1,17 +1,17 @@ -function mainfunction() - -// --------------------------------------- -// --- Initialization of the operands. --- -// --------------------------------------- - -v1 = zeros(1,5); -disp('v1, before initialization.') -disp(v1) -for cnt = 1:5 - v1(cnt) = cnt; -end -disp('v1, after initialization.') -disp(v1) - -endfunction - +function mainfunction() + +// --------------------------------------- +// --- Initialization of the operands. --- +// --------------------------------------- + +v1 = zeros(1,5); +disp('v1, before initialization.') +disp(v1) +for cnt = 1:5 + v1(cnt) = cnt; +end +disp('v1, after initialization.') +disp(v1) + +endfunction + diff --git a/tests/unit_tests/test100_recursivefunctions/launchConversion.sci b/tests/unit_tests/test100_recursivefunctions/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test100_recursivefunctions/launchConversion.sci +++ b/tests/unit_tests/test100_recursivefunctions/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test100_recursivefunctions/scilabcode/IterativePower.sci b/tests/unit_tests/test100_recursivefunctions/scilabcode/IterativePower.sci index d3ee3469..8d181395 100644 --- a/tests/unit_tests/test100_recursivefunctions/scilabcode/IterativePower.sci +++ b/tests/unit_tests/test100_recursivefunctions/scilabcode/IterativePower.sci @@ -2,16 +2,16 @@ //SCI2C: NOUT= 1 //SCI2C: OUT(1).TP= IN(1).TP //SCI2C: OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ) -//SCI2C: OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ) -//SCI2C: DEFAULT_PRECISION= FLOAT +//SCI2C: OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ) +//SCI2C: DEFAULT_PRECISION= FLOAT -function outiter = IterativePower(in,pwrfct) - -outiter = ones(in); - -for cnt = 1:pwrfct - mytmp = outiter .* in; - outiter = mytmp; -end - -endfunction +function outiter = IterativePower(in,pwrfct) + +outiter = ones(in); + +for cnt = 1:pwrfct + mytmp = outiter .* in; + outiter = mytmp; +end + +endfunction diff --git a/tests/unit_tests/test100_recursivefunctions/scilabcode/RecursivePower.sci b/tests/unit_tests/test100_recursivefunctions/scilabcode/RecursivePower.sci index 87430bba..ab3771d7 100644 --- a/tests/unit_tests/test100_recursivefunctions/scilabcode/RecursivePower.sci +++ b/tests/unit_tests/test100_recursivefunctions/scilabcode/RecursivePower.sci @@ -3,21 +3,21 @@ //SCI2C: OUT(1).TP= IN(1).TP //SCI2C: OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ) //SCI2C: OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ) -//SCI2C: DEFAULT_PRECISION= FLOAT - -function outrec = RecursivePower(in,pwrfct) - - -if (pwrfct == 0) - outrec = ones(in); -end - -if (pwrfct == 1) - outrec = in; -end - -if (pwrfct > 1) - outrec = in .* RecursivePower(in,pwrfct-1); -end - -endfunction +//SCI2C: DEFAULT_PRECISION= FLOAT + +function outrec = RecursivePower(in,pwrfct) + + +if (pwrfct == 0) + outrec = ones(in); +end + +if (pwrfct == 1) + outrec = in; +end + +if (pwrfct > 1) + outrec = in .* RecursivePower(in,pwrfct-1); +end + +endfunction diff --git a/tests/unit_tests/test100_recursivefunctions/scilabcode/mainfunction.sci b/tests/unit_tests/test100_recursivefunctions/scilabcode/mainfunction.sci index d1dd1dbd..12418bb2 100644 --- a/tests/unit_tests/test100_recursivefunctions/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test100_recursivefunctions/scilabcode/mainfunction.sci @@ -1,57 +1,57 @@ -//SCI2C: DEFAULT_PRECISION= FLOAT -function mainfunction() - -// --------------------------------------- -// --- Initialization of the operands. --- -// --------------------------------------- -powerfactor = 3; -disp('Power Factor: '); -disp(powerfactor) - -s1 = 2; -disp('Input Scalar Value'); -disp(s1) - -V1 = 1:3; -V2 = 1:2; -V1tr = V1'; - -M1 = V1tr * V2; -disp('Input Matrix Value'); -disp(M1) - -// ----------------------- -// --- Compute powers. --- -// ----------------------- -// --- Iterative/Scalar. --- -outs1It = IterativePower(s1,powerfactor); -disp('Output Scalar Value Iterative'); -disp(outs1It); - -// --- Iterative/Matrix. --- -outM1It = IterativePower(M1,powerfactor); -disp('Output Matrix Iterative'); -disp(outM1It); - -// --- Recursive/Scalar. --- -outs1Re = RecursivePower(s1,powerfactor); -disp('Output Scalar Value Recursive'); -disp(outs1Re); - -// --- Recursive/Matrix. --- -outM1Re = RecursivePower(M1,powerfactor); -disp('Output Matrix Recursive'); -disp(outM1Re); - -//~ // --- Solution/Scalar. --- -//~ outs1So = s1.^powerfactor; -//~ disp('Output Scalar Value Solution'); -//~ disp(outs1So); - -//~ // --- Solution/Matrix. --- -//~ outM1So = M1.^powerfactor; -//~ disp('Output Matrix Value Solution'); -//~ disp(outM1So); - -endfunction - +//SCI2C: DEFAULT_PRECISION= FLOAT +function mainfunction() + +// --------------------------------------- +// --- Initialization of the operands. --- +// --------------------------------------- +powerfactor = 3; +disp('Power Factor: '); +disp(powerfactor) + +s1 = 2; +disp('Input Scalar Value'); +disp(s1) + +V1 = 1:3; +V2 = 1:2; +V1tr = V1'; + +M1 = V1tr * V2; +disp('Input Matrix Value'); +disp(M1) + +// ----------------------- +// --- Compute powers. --- +// ----------------------- +// --- Iterative/Scalar. --- +outs1It = IterativePower(s1,powerfactor); +disp('Output Scalar Value Iterative'); +disp(outs1It); + +// --- Iterative/Matrix. --- +outM1It = IterativePower(M1,powerfactor); +disp('Output Matrix Iterative'); +disp(outM1It); + +// --- Recursive/Scalar. --- +outs1Re = RecursivePower(s1,powerfactor); +disp('Output Scalar Value Recursive'); +disp(outs1Re); + +// --- Recursive/Matrix. --- +outM1Re = RecursivePower(M1,powerfactor); +disp('Output Matrix Recursive'); +disp(outM1Re); + +//~ // --- Solution/Scalar. --- +//~ outs1So = s1.^powerfactor; +//~ disp('Output Scalar Value Solution'); +//~ disp(outs1So); + +//~ // --- Solution/Matrix. --- +//~ outM1So = M1.^powerfactor; +//~ disp('Output Matrix Value Solution'); +//~ disp(outM1So); + +endfunction + diff --git a/tests/unit_tests/test101_SimpleStringConcatenation/launchConversion.sci b/tests/unit_tests/test101_SimpleStringConcatenation/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test101_SimpleStringConcatenation/launchConversion.sci +++ b/tests/unit_tests/test101_SimpleStringConcatenation/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test101_SimpleStringConcatenation/scilabcode/mainfunction.sci b/tests/unit_tests/test101_SimpleStringConcatenation/scilabcode/mainfunction.sci index ec01e894..26e4229b 100644 --- a/tests/unit_tests/test101_SimpleStringConcatenation/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test101_SimpleStringConcatenation/scilabcode/mainfunction.sci @@ -1,18 +1,18 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE - -function mainfunction() - - -st0 = '#'; -disp('st0') -disp(st0) - -st1 = 'ciao'; -disp('st1') -disp(st1) - -st2 = st0+st1; -disp('st2 = st0+st1;') -disp(st2) -endfunction - +//SCI2C: DEFAULT_PRECISION= DOUBLE + +function mainfunction() + + +st0 = '#'; +disp('st0') +disp(st0) + +st1 = 'ciao'; +disp('st1') +disp(st1) + +st2 = st0+st1; +disp('st2 = st0+st1;') +disp(st2) +endfunction + diff --git a/tests/unit_tests/test104_ScalarProduct/launchConversion.sci b/tests/unit_tests/test104_ScalarProduct/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test104_ScalarProduct/launchConversion.sci +++ b/tests/unit_tests/test104_ScalarProduct/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test104_ScalarProduct/scilabcode/mainfunction.sci b/tests/unit_tests/test104_ScalarProduct/scilabcode/mainfunction.sci index 235b2e5f..abc39542 100644 --- a/tests/unit_tests/test104_ScalarProduct/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test104_ScalarProduct/scilabcode/mainfunction.sci @@ -1,10 +1,10 @@ -function mainfunction() - -a = 1:4; -b = a * a'; -disp('input array:') -disp(a) -disp('scalar product a * a'''); -disp(b) -endfunction - +function mainfunction() + +a = 1:4; +b = a * a'; +disp('input array:') +disp(a) +disp('scalar product a * a'''); +disp(b) +endfunction + diff --git a/tests/unit_tests/test200_malloc/launchConversion.sci b/tests/unit_tests/test200_malloc/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test200_malloc/launchConversion.sci +++ b/tests/unit_tests/test200_malloc/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test200_malloc/scilabcode/mainfunction.sci b/tests/unit_tests/test200_malloc/scilabcode/mainfunction.sci index c63992e4..40f918bd 100644 --- a/tests/unit_tests/test200_malloc/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test200_malloc/scilabcode/mainfunction.sci @@ -1,18 +1,18 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() - -N = 2; -B = myinit(N+4-2,2); -disp('B') -disp(B) - -N = 4; -C = myinit(N,3); -disp('C') -disp(C) - -D=B+2.*C; -disp('D') -disp(D) -endfunction - +//SCI2C: DEFAULT_PRECISION= DOUBLE +function mainfunction() + +N = 2; +B = myinit(N+4-2,2); +disp('B') +disp(B) + +N = 4; +C = myinit(N,3); +disp('C') +disp(C) + +D=B+2.*C; +disp('D') +disp(D) +endfunction + diff --git a/tests/unit_tests/test200_malloc/scilabcode/myinit.sci b/tests/unit_tests/test200_malloc/scilabcode/myinit.sci index af38cf5c..28ceae81 100644 --- a/tests/unit_tests/test200_malloc/scilabcode/myinit.sci +++ b/tests/unit_tests/test200_malloc/scilabcode/myinit.sci @@ -3,11 +3,11 @@ //SCI2C: OUT(1).TP= IN(1).TP //SCI2C: OUT(1).SZ(1)= IN(1).VAL //SCI2C: OUT(1).SZ(2)= IN(1).VAL -//SCI2C: DEFAULT_PRECISION= DOUBLE -function out = myinit(n,m) - +//SCI2C: DEFAULT_PRECISION= DOUBLE +function out = myinit(n,m) + out1 = m+ones(n,n); out = out1+2*ones(n,n); -endfunction +endfunction diff --git a/tests/unit_tests/test200_malloc/scilabcode/myzeros.sci b/tests/unit_tests/test200_malloc/scilabcode/myzeros.sci index a2cdc36b..b5330c4e 100644 --- a/tests/unit_tests/test200_malloc/scilabcode/myzeros.sci +++ b/tests/unit_tests/test200_malloc/scilabcode/myzeros.sci @@ -3,9 +3,9 @@ //SCI2C: OUT(1).TP= IN(1).TP //SCI2C: OUT(1).SZ(1)= IN(1).SZ(1) //SCI2C: OUT(1).SZ(2)= IN(1).SZ(2) -//SCI2C: DEFAULT_PRECISION= DOUBLE -function out = myzeros(in) - +//SCI2C: DEFAULT_PRECISION= DOUBLE +function out = myzeros(in) + out = 3+zeros(in); -endfunction +endfunction diff --git a/tests/unit_tests/test301_cchirp/launchConversion.sci b/tests/unit_tests/test301_cchirp/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test301_cchirp/launchConversion.sci +++ b/tests/unit_tests/test301_cchirp/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test301_cchirp/scilabcode/mainfunction.sci b/tests/unit_tests/test301_cchirp/scilabcode/mainfunction.sci index 5719fc08..42dcd997 100644 --- a/tests/unit_tests/test301_cchirp/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test301_cchirp/scilabcode/mainfunction.sci @@ -1,5 +1,5 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +//SCI2C: DEFAULT_PRECISION= DOUBLE +function mainfunction() //---> MOREA: commentare meglio lo scopo di questa funzione //---> NUTRICATO: annotare anche le funzioni di plot facendole puntare a funzioni dummy che non fanno nulla. //---> NUTRICATO: la convoluzione e' stata stostituita con una custom in quanto non ancora implementata da INRIA. diff --git a/tests/unit_tests/test301_cchirp/scilabcode/myconvol.sci b/tests/unit_tests/test301_cchirp/scilabcode/myconvol.sci index 6640c372..51bc7ff7 100644 --- a/tests/unit_tests/test301_cchirp/scilabcode/myconvol.sci +++ b/tests/unit_tests/test301_cchirp/scilabcode/myconvol.sci @@ -4,8 +4,8 @@ //SCI2C: OUT(1).SZ(1)= '1' //SCI2C: OUT(1).SZ(2)= FA_SUB(FA_ADD(IN(1).SZ(2),IN(2).SZ(2)),'1') //SCI2C: DEFAULT_PRECISION= DOUBLE - -function y = myconvol(h,x) + +function y = myconvol(h,x) hlen = length(h); xlen = length(x); //y = zeros(1,hlen+xlen-1); diff --git a/tests/unit_tests/test305_Moebius/Moebius.sci b/tests/unit_tests/test305_Moebius/Moebius.sci index cb598c0a..d8a537bb 100644 --- a/tests/unit_tests/test305_Moebius/Moebius.sci +++ b/tests/unit_tests/test305_Moebius/Moebius.sci @@ -1,66 +1,66 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE - -function Moebius() - -//the program construct moebius -// and klein bottle surface from -//http://www.metlin.org/mathematics/ -// topological-constructs/non-orientable-surfaces/ - - -// --------------------- -// --- Moebius strip --- -// --------------------- -num_points = 20; -R = 20; -a = -0.4; -b = 0.4; - -step=(b-a)./(num_points-1); -step1=(2*%pi)./num_points; -s=a:step:b; -t=0:step1:2*%pi; - -[S, T] = XYgrid(s, t); -x = [R + (S.*cos(T./2))].*cos(T); -y = [R + (S.*cos(T./2))].*sin(T); -z = S.*sin(T./2); - -disp('x(1:10)') -disp(x(1:10)) -disp('y(1:10)') -disp(y(1:10)) -disp('z(1:10)') -disp(z(1:10)) - -// ENABLE/DISABLE PLOT -// scf(0); surf(x, y, z); - -// ----------------------- -// --- Klein Bottle II --- -// ----------------------- -num_points = 50; - -//u = linspace (0, 2*(%pi), num_points); -//v = linspace (0, 2*(%pi), num_points); -step_u = (2*%pi)./num_points -u = 0:step_u:2*%pi; -v = u; - -[U,V] = XYgrid(u,v); - -x1 = cos(U).*(cos(U./2).*(sqrt(2)+cos(V))+(sin(U./2).*sin(V).*cos(V))); -y1 = sin(U).*(cos(U./2).*(sqrt(2)+cos(V))+(sin(U./2).*sin(V).*cos(V))); -z1 = -1.*sin(U./2).*(sqrt(2)+cos(V))+cos(U./2).*sin(V).*cos(V); - -disp('x1(1:10)'); -disp(x1(1:10)); -disp('y1(1:10)') -disp(y1(1:10)) -disp('z1(1:10)') -disp(z1(1:10)) -// ENABLE/DISABLE PLOT -// scf(1) ;surf(x1, y1, z1) - -endfunction - +//SCI2C: DEFAULT_PRECISION= DOUBLE + +function Moebius() + +//the program construct moebius +// and klein bottle surface from +//http://www.metlin.org/mathematics/ +// topological-constructs/non-orientable-surfaces/ + + +// --------------------- +// --- Moebius strip --- +// --------------------- +num_points = 20; +R = 20; +a = -0.4; +b = 0.4; + +step=(b-a)./(num_points-1); +step1=(2*%pi)./num_points; +s=a:step:b; +t=0:step1:2*%pi; + +[S, T] = XYgrid(s, t); +x = [R + (S.*cos(T./2))].*cos(T); +y = [R + (S.*cos(T./2))].*sin(T); +z = S.*sin(T./2); + +disp('x(1:10)') +disp(x(1:10)) +disp('y(1:10)') +disp(y(1:10)) +disp('z(1:10)') +disp(z(1:10)) + +// ENABLE/DISABLE PLOT +// scf(0); surf(x, y, z); + +// ----------------------- +// --- Klein Bottle II --- +// ----------------------- +num_points = 50; + +//u = linspace (0, 2*(%pi), num_points); +//v = linspace (0, 2*(%pi), num_points); +step_u = (2*%pi)./num_points +u = 0:step_u:2*%pi; +v = u; + +[U,V] = XYgrid(u,v); + +x1 = cos(U).*(cos(U./2).*(sqrt(2)+cos(V))+(sin(U./2).*sin(V).*cos(V))); +y1 = sin(U).*(cos(U./2).*(sqrt(2)+cos(V))+(sin(U./2).*sin(V).*cos(V))); +z1 = -1.*sin(U./2).*(sqrt(2)+cos(V))+cos(U./2).*sin(V).*cos(V); + +disp('x1(1:10)'); +disp(x1(1:10)); +disp('y1(1:10)') +disp(y1(1:10)) +disp('z1(1:10)') +disp(z1(1:10)) +// ENABLE/DISABLE PLOT +// scf(1) ;surf(x1, y1, z1) + +endfunction + diff --git a/tests/unit_tests/test305_Moebius/XYgrid.sci b/tests/unit_tests/test305_Moebius/XYgrid.sci index 0957237d..95557f05 100644 --- a/tests/unit_tests/test305_Moebius/XYgrid.sci +++ b/tests/unit_tests/test305_Moebius/XYgrid.sci @@ -1,6 +1,6 @@ //SCI2C: NIN= 2 //SCI2C: NOUT= 2 -//SCI2C: OUT(1).TP= IN(1).TP +//SCI2C: OUT(1).TP= IN(1).TP //SCI2C: OUT(1).SZ(1)= IN(2).SZ(2) //SCI2C: OUT(1).SZ(2)= IN(1).SZ(2) //SCI2C: OUT(2).TP= IN(1).TP diff --git a/tests/unit_tests/test600_SimpleFindDouble/launchConversion.sci b/tests/unit_tests/test600_SimpleFindDouble/launchConversion.sci index 41be0f04..7ac71a7c 100644 --- a/tests/unit_tests/test600_SimpleFindDouble/launchConversion.sci +++ b/tests/unit_tests/test600_SimpleFindDouble/launchConversion.sci @@ -1,5 +1,5 @@ -lines(0) -clear all -tmpPWD = pwd; - -scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); +lines(0) +clear all +tmpPWD = pwd; + +scilab2c(pwd()+"/scilabcode/mainfunction.sci", pwd(), pwd()+"/scilabcode/"); diff --git a/tests/unit_tests/test600_SimpleFindDouble/scilabcode/mainfunction.sci b/tests/unit_tests/test600_SimpleFindDouble/scilabcode/mainfunction.sci index 8455ac70..74dbe763 100644 --- a/tests/unit_tests/test600_SimpleFindDouble/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test600_SimpleFindDouble/scilabcode/mainfunction.sci @@ -1,17 +1,17 @@ -//SCi0C: DEFAULT_PRECISION= DOUBLE - -function mainfunction() - -s1 = [1 -3.56 4 -50.20 -7 -8 9 -3 4]; -disp('s1'); -disp(s1); - -i0 = find(s1<0.5); -disp('i0'); -disp(i0); - -disp('s1(i0)'); -disp(s1(i0)); - -endfunction - +//SCi0C: DEFAULT_PRECISION= DOUBLE + +function mainfunction() + +s1 = [1 -3.56 4 -50.20 -7 -8 9 -3 4]; +disp('s1'); +disp(s1); + +i0 = find(s1<0.5); +disp('i0'); +disp(i0); + +disp('s1(i0)'); +disp(s1(i0)); + +endfunction + diff --git a/tests/unit_tests/test9999_WorkingDir/scilabcode/mainfunction.sci b/tests/unit_tests/test9999_WorkingDir/scilabcode/mainfunction.sci index 5719fc08..42dcd997 100644 --- a/tests/unit_tests/test9999_WorkingDir/scilabcode/mainfunction.sci +++ b/tests/unit_tests/test9999_WorkingDir/scilabcode/mainfunction.sci @@ -1,5 +1,5 @@ -//SCI2C: DEFAULT_PRECISION= DOUBLE -function mainfunction() +//SCI2C: DEFAULT_PRECISION= DOUBLE +function mainfunction() //---> MOREA: commentare meglio lo scopo di questa funzione //---> NUTRICATO: annotare anche le funzioni di plot facendole puntare a funzioni dummy che non fanno nulla. //---> NUTRICATO: la convoluzione e' stata stostituita con una custom in quanto non ancora implementata da INRIA. diff --git a/tests/unit_tests/testArduino/i2c_master.sci b/tests/unit_tests/testArduino/i2c_master.sci index 2636185a..a650f10a 100644 --- a/tests/unit_tests/testArduino/i2c_master.sci +++ b/tests/unit_tests/testArduino/i2c_master.sci @@ -1,9 +1,9 @@ -function i2c_master() - - dev1 = cmd_i2c_dev(1); - cmd_i2c_write(dev1,10); - sleep(1000); - cmd_i2c_write(dev1,9); - sleep(1000); - -endfunction +function i2c_master() + + dev1 = cmd_i2c_dev(1); + cmd_i2c_write(dev1,10); + sleep(1000); + cmd_i2c_write(dev1,9); + sleep(1000); + +endfunction -- cgit