Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/swig4.0/scilab/ |
Upload File : |
/* -------------------------------------------------------------------------- * * Arrays typemaps * * --------------------------------------------------------------------------*/ %{ #include <stdio.h> %} %define %scilab_asarray_withallocatecopy(TYPEMAPTYPE, FRAGMENTNAME, CTYPE, TEMPDATATYPE) %typemap(TYPEMAPTYPE, fragment="FRAGMENTNAME") CTYPE { size_t i = 0; int iRows = 0; int iCols = 0; TEMPDATATYPE *pTempData = NULL; if (FRAGMENTNAME(pvApiCtx, $input, &iRows, &iCols, &pTempData, fname)) { return SWIG_ERROR; } $1 = ($1_ltype)MALLOC(sizeof($*1_ltype) * iRows * iCols); for (i = 0; i < iRows * iCols; i++) { $1[i] = ($*1_ltype) pTempData[i]; } } %enddef %define %scilab_asarrayandsize_withcopy(TYPEMAPTYPE, FRAGMENTNAME, CTYPE, TEMPDATATYPE) %typemap(TYPEMAPTYPE, fragment="FRAGMENTNAME") CTYPE { int iRows = 0; int iCols = 0; TEMPDATATYPE *pTempData = NULL; if (FRAGMENTNAME(pvApiCtx, $input, &iRows, &iCols, &pTempData, fname)) { return SWIG_ERROR; } if (iRows*iCols <= $1_dim0) { size_t i; for (i = 0; i < $1_dim0; i++) { $1[i] = ($*1_ltype) pTempData[i]; } } else { char errmsg[100]; sprintf(errmsg, "Size of input data (%d) is too big (maximum is %d)", iRows*iCols, $1_dim0); SWIG_exception_fail(SWIG_OverflowError, errmsg); } } %enddef %define %scilab_fromarrayandsize(TYPEMAPTYPE, FRAGMENTNAME, CTYPE) %typemap(TYPEMAPTYPE, noblock=1, fragment="FRAGMENTNAME") CTYPE { %set_output(FRAGMENTNAME(pvApiCtx, $result, 1, $1_dim0, $1)); } %enddef %define %scilab_array_typemaps(CTYPE, ASARRAY_FRAGMENT, FROMARRAY_FRAGMENT, TEMPDATATYPE) %scilab_asarrayandsize_withcopy(varin, ASARRAY_FRAGMENT, CTYPE[ANY], TEMPDATATYPE); %scilab_asarray_withallocatecopy(in, ASARRAY_FRAGMENT, CTYPE[ANY], TEMPDATATYPE); %scilab_fromarrayandsize(varout, FROMARRAY_FRAGMENT, CTYPE[ANY]); %scilab_fromarrayandsize(out, FROMARRAY_FRAGMENT, CTYPE[ANY]); %apply SWIGTYPE[] { CTYPE[] }; %scilab_asarray_withallocatecopy(in, ASARRAY_FRAGMENT, CTYPE[], TEMPDATATYPE); %enddef // Double %scilab_array_typemaps(double, SWIG_SciDouble_AsDoubleArrayAndSize, SWIG_SciDouble_FromDoubleArrayAndSize, double); // Signed char %scilab_array_typemaps(signed char, SWIG_SciDoubleOrInt8_AsSignedCharArrayAndSize, SWIG_SciDouble_FromSignedCharArrayAndSize, signed char); // Unsigned char %scilab_array_typemaps(unsigned char, SWIG_SciDoubleOrUint8_AsUnsignedCharArrayAndSize, SWIG_SciDouble_FromUnsignedCharArrayAndSize, unsigned char); // Short %scilab_array_typemaps(short, SWIG_SciDoubleOrInt16_AsShortArrayAndSize, SWIG_SciDouble_FromShortArrayAndSize, short); // Unsigned short %scilab_array_typemaps(unsigned short, SWIG_SciDoubleOrUint16_AsUnsignedShortArrayAndSize, SWIG_SciDouble_FromUnsignedShortArrayAndSize, unsigned short); // Int %scilab_array_typemaps(int, SWIG_SciDoubleOrInt32_AsIntArrayAndSize, SWIG_SciDouble_FromIntArrayAndSize, int); // Unsigned int %scilab_array_typemaps(unsigned int, SWIG_SciDoubleOrUint32_AsUnsignedIntArrayAndSize, SWIG_SciDouble_FromUnsignedIntArrayAndSize, unsigned int); // Long %scilab_array_typemaps(long, SWIG_SciDoubleOrInt32_AsIntArrayAndSize, SWIG_SciDouble_FromLongArrayAndSize, int); // Unsigned long %scilab_array_typemaps(unsigned long, SWIG_SciDoubleOrUint32_AsUnsignedIntArrayAndSize, SWIG_SciDouble_FromUnsignedLongArrayAndSize, unsigned int); // Float %scilab_array_typemaps(float, SWIG_SciDouble_AsFloatArrayAndSize, SWIG_SciDouble_FromFloatArrayAndSize, float); // Bool %scilab_array_typemaps(bool, SWIG_SciBoolean_AsIntArrayAndSize, SWIG_SciBoolean_FromBoolArrayAndSize, int); // Char * %scilab_array_typemaps(char *, SWIG_SciString_AsCharPtrArrayAndSize, SWIG_SciString_FromCharPtrArrayAndSize, char *);