From 5a54dcb6874735aac86df4295d57cf5f9545287e Mon Sep 17 00:00:00 2001 From: rupak19 Date: Sat, 4 Apr 2020 16:04:24 +0530 Subject: first commit --- README.md | 5 + builder.sce | 51 +++ cleaner.sce | 64 ++++ etc/test_toolbox.quit | 37 ++ etc/test_toolbox.start | 65 ++++ etc/toolbox_skeleton_preferences.xml | 18 + etc/toolbox_skeleton_preferences.xsl | 39 +++ help/builder_help.sce | 12 + help/cleaner_help.sce | 21 ++ help/en_US/add.xml | 72 ++++ help/en_US/addchapter.sce | 5 + help/en_US/build_help.sce | 3 + help/en_US/master_help.xml | 25 ++ help/en_US/multiply.xml | 72 ++++ help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS | 1 + .../scilab_en_US_help/JavaHelpSearch/DOCS.TAB | 1 + .../en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS | 1 + .../scilab_en_US_help/JavaHelpSearch/POSITIONS | Bin 0 -> 340 bytes help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA | 2 + help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP | Bin 0 -> 2048 bytes help/en_US/scilab_en_US_help/ScilabCaution.png | Bin 0 -> 507 bytes help/en_US/scilab_en_US_help/ScilabEdit.png | Bin 0 -> 413 bytes help/en_US/scilab_en_US_help/ScilabExecute.png | Bin 0 -> 534 bytes help/en_US/scilab_en_US_help/ScilabImportant.png | Bin 0 -> 615 bytes help/en_US/scilab_en_US_help/ScilabNote.png | Bin 0 -> 664 bytes help/en_US/scilab_en_US_help/ScilabTip.png | Bin 0 -> 664 bytes help/en_US/scilab_en_US_help/ScilabWarning.png | Bin 0 -> 507 bytes help/en_US/scilab_en_US_help/add.html | 81 +++++ help/en_US/scilab_en_US_help/c_code.css | 54 +++ help/en_US/scilab_en_US_help/index.html | 61 ++++ help/en_US/scilab_en_US_help/jhelpidx.xml | 3 + help/en_US/scilab_en_US_help/jhelpmap.jhm | 8 + help/en_US/scilab_en_US_help/jhelpset.hs | 28 ++ help/en_US/scilab_en_US_help/jhelptoc.xml | 10 + help/en_US/scilab_en_US_help/multiply.html | 79 +++++ help/en_US/scilab_en_US_help/scilab_code.css | 96 +++++ .../section_a87337ed2df7b2c7d5e3b7fd9ccd5148.html | 61 ++++ help/en_US/scilab_en_US_help/style.css | 386 +++++++++++++++++++++ help/en_US/scilab_en_US_help/xml_code.css | 94 +++++ help/fr_FR/build_help.sce | 3 + help/fr_FR/c_multiplybypi.xml | 56 +++ help/fr_FR/c_sub.xml | 86 +++++ help/fr_FR/c_sum.xml | 62 ++++ help/fr_FR/fortran_sum.xml | 62 ++++ help/fr_FR/scilab_sum.xml | 63 ++++ jar/org.scilab.contrib.toolboxskeleton.jar | Bin 0 -> 563 bytes jar/scilab_en_US_help.jar | Bin 0 -> 15496 bytes loader.sce | 20 ++ locales/en_US.po | 35 ++ locales/en_US/LC_MESSAGES/scilab_toolbox.mo | Bin 0 -> 130 bytes locales/en_US/LC_MESSAGES/scilab_toolbox.po | 35 ++ locales/en_US/LC_MESSAGES/test_toolbox.po | 35 ++ locales/en_US/LC_MESSAGES/toolbox_skeleton.po | 35 ++ locales/fr_FR.po | 32 ++ locales/fr_FR/LC_MESSAGES/scilab_toolbox.mo | Bin 0 -> 629 bytes locales/fr_FR/LC_MESSAGES/scilab_toolbox.po | 32 ++ locales/fr_FR/LC_MESSAGES/test_toolbox.po | 32 ++ locales/fr_FR/LC_MESSAGES/toolbox_skeleton.po | 32 ++ macros/add.bin | Bin 0 -> 1983 bytes macros/add.sci | 34 ++ macros/buildmacros.sce | 10 + macros/lib | 5 + macros/multiply.bin | Bin 0 -> 1785 bytes macros/multiply.sci | 33 ++ sci_gateway/builder_gateway.sce | 15 + sci_gateway/cleaner_gateway.sce | 15 + sci_gateway/cpp/builder_gateway_cpp.sce | 69 ++++ sci_gateway/cpp/cleaner.sce | 30 ++ sci_gateway/cpp/libtest_toolbox.cpp | 16 + sci_gateway/cpp/libtest_toolbox.h | 8 + sci_gateway/cpp/libtest_toolbox.hxx | 18 + sci_gateway/cpp/libtest_toolbox.so | Bin 0 -> 16712 bytes sci_gateway/cpp/loader.sce | 21 ++ sci_gateway/cpp/sci_multiply.cpp | 55 +++ sci_gateway/cpp/test_toolbox.cpp | 16 + sci_gateway/cpp/test_toolbox.h | 8 + sci_gateway/cpp/test_toolbox.hxx | 18 + sci_gateway/loader_gateway.sce | 24 ++ src/add.c | 10 + src/add.h | 1 + src/add.o | Bin 0 -> 1400 bytes src/libadd.so | Bin 0 -> 15640 bytes src/main.c | 9 + src/run.sh | 8 + src/test | Bin 0 -> 19344 bytes thirdparty/linux/include/add.h | 1 + thirdparty/linux/lib/x64/libadd.so | Bin 0 -> 15640 bytes thirdparty/windows/include/add.h | 1 + thirdparty/windows/lib/libadd.lib | Bin 0 -> 135110 bytes unloader.sce | 23 ++ 90 files changed, 2523 insertions(+) create mode 100644 README.md create mode 100755 builder.sce create mode 100644 cleaner.sce create mode 100755 etc/test_toolbox.quit create mode 100755 etc/test_toolbox.start create mode 100755 etc/toolbox_skeleton_preferences.xml create mode 100755 etc/toolbox_skeleton_preferences.xsl create mode 100755 help/builder_help.sce create mode 100755 help/cleaner_help.sce create mode 100644 help/en_US/add.xml create mode 100755 help/en_US/addchapter.sce create mode 100755 help/en_US/build_help.sce create mode 100644 help/en_US/master_help.xml create mode 100644 help/en_US/multiply.xml create mode 100644 help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS create mode 100644 help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB create mode 100644 help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS create mode 100644 help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS create mode 100644 help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA create mode 100644 help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP create mode 100644 help/en_US/scilab_en_US_help/ScilabCaution.png create mode 100644 help/en_US/scilab_en_US_help/ScilabEdit.png create mode 100644 help/en_US/scilab_en_US_help/ScilabExecute.png create mode 100644 help/en_US/scilab_en_US_help/ScilabImportant.png create mode 100644 help/en_US/scilab_en_US_help/ScilabNote.png create mode 100644 help/en_US/scilab_en_US_help/ScilabTip.png create mode 100644 help/en_US/scilab_en_US_help/ScilabWarning.png create mode 100644 help/en_US/scilab_en_US_help/add.html create mode 100644 help/en_US/scilab_en_US_help/c_code.css create mode 100644 help/en_US/scilab_en_US_help/index.html create mode 100644 help/en_US/scilab_en_US_help/jhelpidx.xml create mode 100644 help/en_US/scilab_en_US_help/jhelpmap.jhm create mode 100644 help/en_US/scilab_en_US_help/jhelpset.hs create mode 100644 help/en_US/scilab_en_US_help/jhelptoc.xml create mode 100644 help/en_US/scilab_en_US_help/multiply.html create mode 100644 help/en_US/scilab_en_US_help/scilab_code.css create mode 100644 help/en_US/scilab_en_US_help/section_a87337ed2df7b2c7d5e3b7fd9ccd5148.html create mode 100644 help/en_US/scilab_en_US_help/style.css create mode 100644 help/en_US/scilab_en_US_help/xml_code.css create mode 100755 help/fr_FR/build_help.sce create mode 100755 help/fr_FR/c_multiplybypi.xml create mode 100755 help/fr_FR/c_sub.xml create mode 100755 help/fr_FR/c_sum.xml create mode 100755 help/fr_FR/fortran_sum.xml create mode 100755 help/fr_FR/scilab_sum.xml create mode 100755 jar/org.scilab.contrib.toolboxskeleton.jar create mode 100644 jar/scilab_en_US_help.jar create mode 100644 loader.sce create mode 100644 locales/en_US.po create mode 100644 locales/en_US/LC_MESSAGES/scilab_toolbox.mo create mode 100644 locales/en_US/LC_MESSAGES/scilab_toolbox.po create mode 100644 locales/en_US/LC_MESSAGES/test_toolbox.po create mode 100644 locales/en_US/LC_MESSAGES/toolbox_skeleton.po create mode 100644 locales/fr_FR.po create mode 100644 locales/fr_FR/LC_MESSAGES/scilab_toolbox.mo create mode 100644 locales/fr_FR/LC_MESSAGES/scilab_toolbox.po create mode 100644 locales/fr_FR/LC_MESSAGES/test_toolbox.po create mode 100644 locales/fr_FR/LC_MESSAGES/toolbox_skeleton.po create mode 100644 macros/add.bin create mode 100755 macros/add.sci create mode 100755 macros/buildmacros.sce create mode 100644 macros/lib create mode 100644 macros/multiply.bin create mode 100755 macros/multiply.sci create mode 100755 sci_gateway/builder_gateway.sce create mode 100644 sci_gateway/cleaner_gateway.sce create mode 100755 sci_gateway/cpp/builder_gateway_cpp.sce create mode 100644 sci_gateway/cpp/cleaner.sce create mode 100644 sci_gateway/cpp/libtest_toolbox.cpp create mode 100644 sci_gateway/cpp/libtest_toolbox.h create mode 100644 sci_gateway/cpp/libtest_toolbox.hxx create mode 100755 sci_gateway/cpp/libtest_toolbox.so create mode 100644 sci_gateway/cpp/loader.sce create mode 100755 sci_gateway/cpp/sci_multiply.cpp create mode 100755 sci_gateway/cpp/test_toolbox.cpp create mode 100755 sci_gateway/cpp/test_toolbox.h create mode 100755 sci_gateway/cpp/test_toolbox.hxx create mode 100755 sci_gateway/loader_gateway.sce create mode 100755 src/add.c create mode 100755 src/add.h create mode 100644 src/add.o create mode 100755 src/libadd.so create mode 100755 src/main.c create mode 100755 src/run.sh create mode 100755 src/test create mode 100755 thirdparty/linux/include/add.h create mode 100755 thirdparty/linux/lib/x64/libadd.so create mode 100755 thirdparty/windows/include/add.h create mode 100755 thirdparty/windows/lib/libadd.lib create mode 100644 unloader.sce diff --git a/README.md b/README.md new file mode 100644 index 0000000..8e0d999 --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +This repository is a test toolbox for Scilab. It demonstrates +1. How to add a function defined in C in scilab +2. How to add a function defined in Scilab in Scilab +3. How to write help for the added functions +4. How to create a toolbox out of the above functions. diff --git a/builder.sce b/builder.sce new file mode 100755 index 0000000..341e49a --- /dev/null +++ b/builder.sce @@ -0,0 +1,51 @@ +// Copyright (C) 2008 - INRIA +// Copyright (C) 2009-2011 - DIGITEO + +// This file is released under the 3-clause BSD license. See COPYING-BSD. + +mode(-1); +lines(0); + +function main_builder() + TOOLBOX_NAME = "test_toolbox"; + TOOLBOX_TITLE = "test_toolbox"; + toolbox_dir = get_absolute_file_path("builder.sce"); + + // Check Scilab's version + // ============================================================================= + + try + v = getversion("scilab"); + catch + error(gettext("Scilab 5.3 or more is required.")); + end + + if v(1) < 5 & v(2) < 3 then + // new API in scilab 5.3 + error(gettext("Scilab 5.3 or more is required.")); + end + + // Check modules_manager module availability + // ============================================================================= + + if ~isdef("tbx_build_loader") then + error(msprintf(gettext("%s module not installed."), "modules_manager")); + end + + // Action + // ============================================================================= + help_from_sci("macros","help/en_US"); + tbx_builder_macros(toolbox_dir); + tbx_builder_gateway(toolbox_dir); + tbx_build_localization(toolbox_dir); + tbx_builder_help(toolbox_dir); + tbx_build_loader(toolbox_dir); + tbx_build_cleaner(toolbox_dir); + +endfunction +// ============================================================================= +main_builder(); +clear main_builder; // remove main_builder on stack +// ============================================================================= + + diff --git a/cleaner.sce b/cleaner.sce new file mode 100644 index 0000000..aab2d3e --- /dev/null +++ b/cleaner.sce @@ -0,0 +1,64 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by builder.sce: Please, do not edit this file + +oldmode = mode(); +oldlines = lines()(2); +lines(0); + +function perform_clean() + root_tlbx = get_absolute_file_path('cleaner.sce'); + + if isfile(root_tlbx + '/macros/cleanmacros.sce') then + exec(root_tlbx+'/macros/cleanmacros.sce'); + else + if isdir(root_tlbx + "/macros/") then + deletefile(root_tlbx + "/macros/lib"); + binfiles = findfiles(root_tlbx + "/macros/", "*.bin"); + if ~isempty(binfiles) then + deletefile(root_tlbx + "/macros/" + binfiles); + end + end + end + + if isfile(root_tlbx + "/src/cleaner_src.sce") then + exec(root_tlbx + "/src/cleaner_src.sce"); + mdelete(root_tlbx + "/src/cleaner_src.sce"); + end + + if isfile(root_tlbx + "/sci_gateway/cleaner_gateway.sce") then + exec(root_tlbx + "/sci_gateway/cleaner_gateway.sce"); + mdelete(root_tlbx + "/sci_gateway/cleaner_gateway.sce"); + end + + if isfile(root_tlbx + "/help/cleaner_help.sce") then + exec(root_tlbx + "/help/cleaner_help.sce"); + else + if isdir(root_tlbx + "/jar/") then + rmdir(root_tlbx + "/jar/", "s"); + end + end + + if isfile(root_tlbx + "/loader.sce") then + mdelete(root_tlbx + "/loader.sce"); + end + + if isfile(root_tlbx + "/unloader.sce") then + mdelete(root_tlbx + "/unloader.sce"); + end +endfunction + +try + perform_clean(); +catch + [errmsg, tmp, nline, func] = lasterror(); + msg = "%s: error on line #%d: ""%s""\n"; + msg = msprintf(msg, func, nline, errmsg); + lines(oldlines); + mode(oldmode); + clear perform_clean oldlines oldmode tmp nline func errmsg; + error(msg); +end + +lines(oldlines) +mode(oldmode); +clear perform_clean oldlines oldmode; diff --git a/etc/test_toolbox.quit b/etc/test_toolbox.quit new file mode 100755 index 0000000..b2adc13 --- /dev/null +++ b/etc/test_toolbox.quit @@ -0,0 +1,37 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. + +// Some specific hooks can be specify here when the module is unloaded. + +function quitModule() + + etc_tlbx = get_absolute_file_path("test_toolbox.quit"); + etc_tlbx = getshortpathname(etc_tlbx); + root_tlbx = strncpy( etc_tlbx, length(etc_tlbx)-length("\etc\") ); + + //unlink libraries + [bOK, ilib] = c_link('skeleton_cpp'); + if bOK then + ulink(ilib); + end + + [bOK, ilib] = c_link('skeleton_c'); + if bOK then + ulink(ilib); + end + + [bOK, ilib] = c_link('skeleton_fortran'); + if bOK then + ulink(ilib); + end + + // Remove Preferences GUI + // ============================================================================= + if getscilabmode() == "STD" then + removeModulePreferences(root_tlbx); + end + +endfunction + + +quitModule(); +clear quitModule; diff --git a/etc/test_toolbox.start b/etc/test_toolbox.start new file mode 100755 index 0000000..10acf09 --- /dev/null +++ b/etc/test_toolbox.start @@ -0,0 +1,65 @@ +// Copyright (C) 2008 - INRIA +// Copyright (C) 2009 - DIGITEO + +// This file is released under the 3-clause BSD license. See COPYING-BSD. + +function test_toolboxlib = startModule() + + TOOLBOX_NAME = "test_toolbox"; + TOOLBOX_TITLE = "test_toolbox"; + + mprintf("Start " + TOOLBOX_TITLE + "\n"); + + if isdef("test_toolboxlib") then + warning("scilab_toolbox library is already loaded"); + return; + end + + etc_tlbx = get_absolute_file_path("test_toolbox.start"); + etc_tlbx = getshortpathname(etc_tlbx); + root_tlbx = strncpy( etc_tlbx, length(etc_tlbx)-length("\etc\") ); + +//Load functions library +// ============================================================================= + mprintf("\tLoad macros\n"); + pathmacros = pathconvert( root_tlbx ) + "macros" + filesep(); + test_toolboxlib = lib(pathmacros); + +// load gateways and Java libraries +// ============================================================================= + verboseMode = ilib_verbose(); + ilib_verbose(0); + mprintf("\tLoad gateways\n"); + exec(pathconvert(root_tlbx+"/sci_gateway/loader_gateway.sce",%f)); + +// load localization + addlocalizationdomain(TOOLBOX_NAME, root_tlbx + "/locales"); + +// Load and add help chapter +// ============================================================================= + if or(getscilabmode() == ["NW";"STD"]) then + mprintf("\tLoad help\n"); + path_addchapter = pathconvert(root_tlbx+"/jar"); + if ( isdir(path_addchapter) <> [] ) then + add_help_chapter(TOOLBOX_NAME, path_addchapter, %F); + end + end + +// Load demos +// ============================================================================= +// if or(getscilabmode() == ["NW";"STD"]) then +// mprintf("\tLoad demos\n"); +// pathdemos = pathconvert(root_tlbx+"/demos/scilab_toolbox.dem.gateway.sce", %F, %T); +// add_demo(TOOLBOX_TITLE, pathdemos); +// end + +// Load Preferences GUI +// ============================================================================= + // if getscilabmode() == "STD" then + // addModulePreferences(TOOLBOX_TITLE, root_tlbx, etc_tlbx + "scilab_toolbox_preferences.xml"); +// end + +endfunction + +scilab_toolboxlib = startModule(); +clear startModule; // remove startModule on stack diff --git a/etc/toolbox_skeleton_preferences.xml b/etc/toolbox_skeleton_preferences.xml new file mode 100755 index 0000000..f4f08c0 --- /dev/null +++ b/etc/toolbox_skeleton_preferences.xml @@ -0,0 +1,18 @@ + + +
+ + + + + + + diff --git a/etc/toolbox_skeleton_preferences.xsl b/etc/toolbox_skeleton_preferences.xsl new file mode 100755 index 0000000..3d57d0d --- /dev/null +++ b/etc/toolbox_skeleton_preferences.xsl @@ -0,0 +1,39 @@ + + + + + + Environment + + + + <HBox> + Foo: + <xsl:call-template name="Select"> + <xsl:with-param name="among"> + <option foo="bar"/> + <option foo="barbar"/> + <option foo="barbarbar"/> + </xsl:with-param> + </xsl:call-template> + </HBox> + + + + + + + <HBox> + <Checkbox listener="ActionListener"> + <xsl:if test="@bar='true'"> + <xsl:attribute name="checked">checked</xsl:attribute> + </xsl:if> + <actionPerformed set="bar" value="true"> + <xsl:call-template name="context"/> + </actionPerformed> + </Checkbox> + Save: + </HBox> + + + \ No newline at end of file diff --git a/help/builder_help.sce b/help/builder_help.sce new file mode 100755 index 0000000..cceebb0 --- /dev/null +++ b/help/builder_help.sce @@ -0,0 +1,12 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. + +mode(-1) +lines(0) + +toolbox_title = "scilab_octave" + +help_dir = get_absolute_file_path('builder_help.sce'); + +tbx_builder_help_lang("en_US", help_dir); + +clear toolbox_title; diff --git a/help/cleaner_help.sce b/help/cleaner_help.sce new file mode 100755 index 0000000..a2b5e7e --- /dev/null +++ b/help/cleaner_help.sce @@ -0,0 +1,21 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. + +function cleaner_help() + path = get_absolute_file_path("cleaner_help.sce"); + langdirs = dir(path); + langdirs = langdirs.name(langdirs.isdir); + + for l = 1:size(langdirs, "*") + masterfile = fullpath(path + filesep() + langdirs(l) + "/master_help.xml"); + mdelete(masterfile); + + jarfile = fullpath(path + "/../jar/scilab_" + langdirs(l) + "_help.jar"); + mdelete(jarfile); + + tmphtmldir = fullpath(path + "/" + langdirs(l) + "/scilab_" + langdirs(l) + "_help"); + rmdir(tmphtmldir, "s"); + end +endfunction + +cleaner_help(); +clear cleaner_help; diff --git a/help/en_US/add.xml b/help/en_US/add.xml new file mode 100644 index 0000000..8e86e1c --- /dev/null +++ b/help/en_US/add.xml @@ -0,0 +1,72 @@ + + + + + + + + add + Calls an addition function defined in Scilab with given inputs and returns the expected result + + + + + Syntax + + y = add(in1,in2) + + + + + + Parameters + + + y : + ouput + + + in1 and in2 : + Numbers to multiply + + + + + + Description + +This function accepts accepts two numbers and adds them + + + + + + + + + Examples + + + + + Authors + + Rupak Rokade + + + diff --git a/help/en_US/addchapter.sce b/help/en_US/addchapter.sce new file mode 100755 index 0000000..4c45ef6 --- /dev/null +++ b/help/en_US/addchapter.sce @@ -0,0 +1,5 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by tbx_build_help_loader: Please, do not edit this file + +add_help_chapter("scilab_octave",get_absolute_file_path("addchapter.sce"),%F); +clear add_help_chapter; diff --git a/help/en_US/build_help.sce b/help/en_US/build_help.sce new file mode 100755 index 0000000..7065316 --- /dev/null +++ b/help/en_US/build_help.sce @@ -0,0 +1,3 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. + +tbx_build_help(TOOLBOX_TITLE,get_absolute_file_path("build_help.sce")); diff --git a/help/en_US/master_help.xml b/help/en_US/master_help.xml new file mode 100644 index 0000000..9039d0b --- /dev/null +++ b/help/en_US/master_help.xml @@ -0,0 +1,25 @@ + + + + + +]> + + + test_toolbox + + + +test_toolbox +&a888042ee80ce57a22ab3f2f115c1b26d; +&a5a3592e84984cdff582297090cce379d; + + diff --git a/help/en_US/multiply.xml b/help/en_US/multiply.xml new file mode 100644 index 0000000..29dcc8c --- /dev/null +++ b/help/en_US/multiply.xml @@ -0,0 +1,72 @@ + + + + + + + + multiply + Calls a multiplication function defined in C with given inputs and returns the expected result + + + + + Syntax + + y = multiply(in1,in2) + + + + + + Parameters + + + y : + ouput + + + in1 and in2 : + Numbers to multiply + + + + + + Description + +This function accepts accepts two numbers and multiply them + + + + + + + + + Examples + + + + + Authors + + Rupak Rokade + + + diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS new file mode 100644 index 0000000..f5fea7c --- /dev/null +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS @@ -0,0 +1 @@ +¿@¿@¿@¿@¶`¿@¿@¿@¶`¿@¿@¿@¿@¿@¿@¿@¿@¿@š š š ¿@¿@ôôôôôôôôôôôôÐôôÐÐÐôôôÈÈÈ \ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB new file mode 100644 index 0000000..0b885ed --- /dev/null +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB @@ -0,0 +1 @@ +eÿÿÿÿÿÙÿÿÿÿeÐÿÿÿÿÿªªªªªª` \ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS b/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS new file mode 100644 index 0000000..c6118a5 --- /dev/null +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS @@ -0,0 +1 @@ +‡¤@ðë±€Š<â@ \ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS b/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS new file mode 100644 index 0000000..e75e672 Binary files /dev/null and b/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS differ diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA b/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA new file mode 100644 index 0000000..9e82e96 --- /dev/null +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA @@ -0,0 +1,2 @@ +JavaSearch 1.0 +TMAP bs=2048 rt=0 fl=-1 id1=52 id2=1 diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP b/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP new file mode 100644 index 0000000..ca7a886 Binary files /dev/null and b/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP differ diff --git a/help/en_US/scilab_en_US_help/ScilabCaution.png b/help/en_US/scilab_en_US_help/ScilabCaution.png new file mode 100644 index 0000000..77a9f4a Binary files /dev/null and b/help/en_US/scilab_en_US_help/ScilabCaution.png differ diff --git a/help/en_US/scilab_en_US_help/ScilabEdit.png b/help/en_US/scilab_en_US_help/ScilabEdit.png new file mode 100644 index 0000000..4eb8bb9 Binary files /dev/null and b/help/en_US/scilab_en_US_help/ScilabEdit.png differ diff --git a/help/en_US/scilab_en_US_help/ScilabExecute.png b/help/en_US/scilab_en_US_help/ScilabExecute.png new file mode 100644 index 0000000..06716cb Binary files /dev/null and b/help/en_US/scilab_en_US_help/ScilabExecute.png differ diff --git a/help/en_US/scilab_en_US_help/ScilabImportant.png b/help/en_US/scilab_en_US_help/ScilabImportant.png new file mode 100644 index 0000000..1993bb3 Binary files /dev/null and b/help/en_US/scilab_en_US_help/ScilabImportant.png differ diff --git a/help/en_US/scilab_en_US_help/ScilabNote.png b/help/en_US/scilab_en_US_help/ScilabNote.png new file mode 100644 index 0000000..04e0e54 Binary files /dev/null and b/help/en_US/scilab_en_US_help/ScilabNote.png differ diff --git a/help/en_US/scilab_en_US_help/ScilabTip.png b/help/en_US/scilab_en_US_help/ScilabTip.png new file mode 100644 index 0000000..04e0e54 Binary files /dev/null and b/help/en_US/scilab_en_US_help/ScilabTip.png differ diff --git a/help/en_US/scilab_en_US_help/ScilabWarning.png b/help/en_US/scilab_en_US_help/ScilabWarning.png new file mode 100644 index 0000000..77a9f4a Binary files /dev/null and b/help/en_US/scilab_en_US_help/ScilabWarning.png differ diff --git a/help/en_US/scilab_en_US_help/add.html b/help/en_US/scilab_en_US_help/add.html new file mode 100644 index 0000000..67c6f58 --- /dev/null +++ b/help/en_US/scilab_en_US_help/add.html @@ -0,0 +1,81 @@ + + + add + + + +
+ + + + +
+ << test_toolbox + + + test_toolbox + + + multiply >> + +
+
+
+ + + + test_toolbox >> test_toolbox > add + +

+

add

+

Calls an addition function defined in Scilab with given inputs and returns the expected result

+ + +

Syntax

+
y = add(in1,in2)
+ +

Parameters

+
y : +

ouput

+
in1 and in2 : +

Numbers to multiply

+ +

Description

+

This function accepts accepts two numbers and adds them

+

+

+ +

Examples

+
// Adding two numbers
+y = add(33,45)
+ +

Authors

+
  • Rupak Rokade
+
+ +
+ + + + + + +
Report an issue
+ << test_toolbox + + + test_toolbox + + + multiply >> + +
+
+
+ + diff --git a/help/en_US/scilab_en_US_help/c_code.css b/help/en_US/scilab_en_US_help/c_code.css new file mode 100644 index 0000000..948d2ee --- /dev/null +++ b/help/en_US/scilab_en_US_help/c_code.css @@ -0,0 +1,54 @@ +.ccomment { + font-style: italic; + color: #b22222 +} + +.cdefault { + font-style: normal; + color: #000000 +} + +.copenclose { + font-style: normal; + color: #000000 +} + +.coperator { + font-style: normal; + color: #000000 +} + +.cstring { + font-style: normal; + color: #a6557a +} + +.ctype { + font-style: normal; + color: #55a655 +} + +.cpreprocessor { + font-style: normal; + color: #9965a6 +} + +.cid { + font-style: normal; + color: #000000 +} + +.ckeyword { + font-style: normal; + color: #ad3ff2 +} + +.cmodifier { + font-style: normal; + color: #ad3ff2 +} + +.cnumber { + font-style: normal; + color: #008b8b +} diff --git a/help/en_US/scilab_en_US_help/index.html b/help/en_US/scilab_en_US_help/index.html new file mode 100644 index 0000000..be797a1 --- /dev/null +++ b/help/en_US/scilab_en_US_help/index.html @@ -0,0 +1,61 @@ + + + + + + +
+ + + + +
+ + + + + +
+
+
+ + + + +

+

test_toolbox

+
    + +
  • test_toolbox +
    • addCalls an addition function defined in Scilab with given inputs and returns the expected result
    • + + + + + +
    • multiplyCalls a multiplication function defined in C with given inputs and returns the expected result
+
+ +
+ + + + + + +
Report an issue
+ + + + + +
+
+
+ + diff --git a/help/en_US/scilab_en_US_help/jhelpidx.xml b/help/en_US/scilab_en_US_help/jhelpidx.xml new file mode 100644 index 0000000..aa5a66e --- /dev/null +++ b/help/en_US/scilab_en_US_help/jhelpidx.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/jhelpmap.jhm b/help/en_US/scilab_en_US_help/jhelpmap.jhm new file mode 100644 index 0000000..f9e2a0d --- /dev/null +++ b/help/en_US/scilab_en_US_help/jhelpmap.jhm @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/jhelpset.hs b/help/en_US/scilab_en_US_help/jhelpset.hs new file mode 100644 index 0000000..7927de0 --- /dev/null +++ b/help/en_US/scilab_en_US_help/jhelpset.hs @@ -0,0 +1,28 @@ + + + +test_toolbox + +top + + + +TOC + +javax.help.TOCView +jhelptoc.xml + + +Index + +javax.help.IndexView +jhelpidx.xml + + +Search + +javax.help.SearchView +JavaHelpSearch + + \ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/jhelptoc.xml b/help/en_US/scilab_en_US_help/jhelptoc.xml new file mode 100644 index 0000000..3a1f26b --- /dev/null +++ b/help/en_US/scilab_en_US_help/jhelptoc.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/multiply.html b/help/en_US/scilab_en_US_help/multiply.html new file mode 100644 index 0000000..fca82b5 --- /dev/null +++ b/help/en_US/scilab_en_US_help/multiply.html @@ -0,0 +1,79 @@ + + + multiply + + + +
+ + + + +
+ << add + + + test_toolbox + + + +
+
+
+ + + + test_toolbox >> test_toolbox > multiply + +

+

multiply

+

Calls a multiplication function defined in C with given inputs and returns the expected result

+ + +

Syntax

+
y = multiply(in1,in2)
+ +

Parameters

+
y : +

ouput

+
in1 and in2 : +

Numbers to multiply

+ +

Description

+

This function accepts accepts two numbers and multiply them

+

+

+ +

Examples

+
// Multiplying two numbers
+y = multiply(3,5)
+ +

Authors

+
  • Rupak Rokade
+
+ +
+ + + + + + +
Report an issue
+ << add + + + test_toolbox + + + +
+
+
+ + diff --git a/help/en_US/scilab_en_US_help/scilab_code.css b/help/en_US/scilab_en_US_help/scilab_code.css new file mode 100644 index 0000000..658f42e --- /dev/null +++ b/help/en_US/scilab_en_US_help/scilab_code.css @@ -0,0 +1,96 @@ +.scilabcomment { + font-style: italic; + color: #01a801 +} + +.scilabdefault { + font-style: normal; + color: #000000 +} + +.scilabspecial { + font-style: normal; + color: #ffaa00 +} + +.scilabconstants { + font-style: normal; + color: #da70d6 +} + +.scilaboperator { + font-style: normal; + color: #5c5c5c +} + +.scilabnumber { + font-style: normal; + color: #bc8f8f +} + +.scilabfkeyword { + font-style: normal; + color: #b01813 +} + +.scilabskeyword { + font-style: normal; + color: #a020f0 +} + +.scilabckeyword { + font-style: normal; + color: #5f9ea0 +} + +.scilabcommand { + font-style: normal; + color: #32b9b9 +} + +.scilabmacro { + font-style: normal; + color: #ae5cb0 +} + +a.scilabcommand { + font-style: normal; + text-decoration: underline; + color: #32b9b9 +} + +a.scilabmacro { + font-style: normal; + text-decoration: underline; + color: #ae5cb0 +} + +.scilabstring { + font-style: normal; + color: #bc8f8f +} + +.scilabid { + font-style: normal; + color: #000000 +} + +.scilabinputoutputargs { + font-weight: bold; + color: #834310 +} + +.scilabfunctionid { + font-weight: bold; + color: #000000 +} + +.scilabfield { + font-style: normal; + color: #aaaaaa +} + +.scilabopenclose { + font-style: normal; + color: #4a55db +} diff --git a/help/en_US/scilab_en_US_help/section_a87337ed2df7b2c7d5e3b7fd9ccd5148.html b/help/en_US/scilab_en_US_help/section_a87337ed2df7b2c7d5e3b7fd9ccd5148.html new file mode 100644 index 0000000..740d0b5 --- /dev/null +++ b/help/en_US/scilab_en_US_help/section_a87337ed2df7b2c7d5e3b7fd9ccd5148.html @@ -0,0 +1,61 @@ + + + + + + +
+ + + + +
+ + + test_toolbox + + + +
+
+
+ + + + test_toolbox >> test_toolbox + +

+

test_toolbox

+
  • addCalls an addition function defined in Scilab with given inputs and returns the expected result
  • + + + + + +
  • multiplyCalls a multiplication function defined in C with given inputs and returns the expected result
+
+ +
+ + + + + + +
Report an issue
+ + + test_toolbox + + + +
+
+
+ + diff --git a/help/en_US/scilab_en_US_help/style.css b/help/en_US/scilab_en_US_help/style.css new file mode 100644 index 0000000..edc0b85 --- /dev/null +++ b/help/en_US/scilab_en_US_help/style.css @@ -0,0 +1,386 @@ +body { + color:#000000; + background-color:#ffffff; + font-family:sans-serif; + font-size:100%; + margin:5px; + padding:0; + background : url("/img/body.png"); + background-repeat : repeat-x; +} + +.para { + padding-left: 10px; +} + +.refname { + color: #ff6c0a; +} +.refpurpose { + font-size: 110%; +} + +.synopsis { + border: 1px solid #CCCCCC; + width:80%; + padding: 0.5em; +} + +.editbar { + text-align: right; +} + +.term { + color:#A00000; + font-size:100%; + font-weight: 600; +} + +h3 { + color: #0033FF; + font-weight: bold; + font-size:130%; + margin-bottom: 10px; +} + +h4 { + color: #0066FF; + font-weight: bold; + font-size:120%; + margin-bottom: 5px; +} + +h5 { + color: #0099FF; + font-weight: bold; + font-size:110%; + margin-bottom: 1px; +} + +.programlisting { + font-family: monospace; + font-size: 100%; + background-color:#F4F4FF; + border-color:#CCCCCC; + border-style:solid; + border-width:2px medium; + width:90%; + color:#333333; + line-height:120%; + padding:10px; + direction: ltr; +} + +.literal { + font-family: monospace; + font-size: 100%; +} + +.option { + font-family: monospace; + font-style: italic; + font-size: 100%; +} + +.command { + font-family: monospace; + font-size: 100%; + color: #32b9b9; +} + +.function { + font-family: monospace; + font-size: 100%; + color: #32b9b9; + direction: ltr; +} + +.varname { + font-family: monospace; + font-weight: bold; + font-size: 100%; + direction: ltr; +} + +.constant { + font-family: monospace; + font-size: 100%; + color: #da70d6; +} + +a { + color: blue; + text-decoration:none; +} + +a:hover { + text-decoration:underline; +} + +.itemizedlist { + list-style-type: disc; +} + +.inline-list li { + display: inline; + list-style-type: disc; +} + +.vert-list { + list-style-type: disc; +} + +pre { + margin-bottom: 0px; + margin-top: 0px; + direction: ltr; +} + +.leftpart { + position:absolute; + float:left; + width: 186px; + padding: 5px; + font-size: smaller; +} + +.content { + margin-top: 100px; + margin-left: 196px +} + +.container { + margin: 0 auto; + width:1024px; +} + +ul.toc li.list-active { + list-style-type:disc; + font-weight:bold; +} + +ul.toc li.parent { + font-size: 115%; + padding: 5px 0px 5px 11px; + border-bottom: 1px solid #cccccc; + margin-bottom: 5px; +} + +ul.toc li.root { + font-size: 135%; + padding: 5px 0px 5px 11px; + border-bottom: 1px solid #cccccc; + margin-bottom: 5px; +} + +ul.toc li { + font-size: 85%; + margin: 1px 0 1px 1px; + padding: 1px 0 1px 11px; + background-repeat: no-repeat; + background-position: center left; + list-style-type: circle; +} + +.next { + float:right; + text-align: right; +} + +.center { + text-align: center; +} + +.screen { + font-family: monospace; + font-size: 100%; + background-color:#FFFFFF; + border-color:#CCCCCC; + border-style:solid; + border-width:2px medium; + width:90%; + color:#333333; + line-height:120%; + padding:10px; +} + +/* Top and bottom navigation controls on manual pages --------------------- */ +div.manualnavbar { + background-color: #F0F0FF; + color: inherit; + padding: 4px; + margin-bottom: 10px; + direction: ltr; +} +div.manualnavbar .prev { + padding-right: 4px; +} +div.manualnavbar .next { + text-align: right; + padding-left: 4px; +} + +div.manualnavbar .top { + text-align: center; + display: block; +} + +div.manualnavbar hr { + color: #cccccc; + background-color: #cccccc; +} + +/* Footer navigation area ------------------------------------------------- */ + +#pagefooter { + position: relative; + font-size: 75%; + color: inherit; + background-color: #e5e5e5; + width: 100%; +} + +#pagefooterleft { + top: 0px; + left: 0px; + padding: 6px; + margin-right: 30%; +} + +#pagefooterright { + text-align: right; + margin-left: 50%; + padding: 6px; +} +#footnav { + color: inherit; + background-color: #9999cc; + border-width: 1px 0px; + border-color: #333366; + border-style: solid; + text-align: right; + padding-right: 6px; +} + + + + + #global{ +/* width: 90%; */ + max-width: 90em; +/* min-width: 850px; */ + margin-left: auto; + margin-right: auto; + } + + #myHeader{ + background-color:#000000; + color:white; + margin-bottom : 10px; + position : relative; + text-align: center; +/* width : 1024px;*/ + height : 100px; + padding-left : 20px; + background : url("http://atoms.scilab.org/images/homepage/cadre_head.png"); + background-repeat : no-repeat; + background-position : 0px 0px; + + } + + #myFooter{ + background-color:#E5E5E5; + font-color:black; +/* width: 90%;*/ + max-width: 90em; +/* min-width: 850px; + margin-left: 5%; + margin-right: 5%;*/ + margin-top:10px; + padding:10px; + } + + #mainArea{ + width: 100%; + overflow: hidden; + } + + #myLeftArea{ + color:white; + float: left; + width: 180px; + padding:5px; + } + + #myMiddleArea{ + color:black; + margin-left: 200px; + padding: 10px 20px; + } + + #myRightArea{ + color:white; + float: right; + width: 200px; + padding: 12px 20px; + } + + +div#cadre_head +{ + position : relative; + text-align: center; +/* width : 1024px;*/ + height : 100px; + padding-left : 20px; + background : url("/img/cadre_head.png"); + background-repeat : no-repeat; + background-position : 0px 0px; +} + + +div#slogan{ + position: absolute; + top : 50px; + left:251px; + color:#0000AA; + font: 120%, Georgia,Serif; +} +div#cadre_help +{ + position: absolute; + top:45px; + right:0px; + font-size:0.8em; + color:#0000AA; +} +table +{ + border-collapse:collapse +} +th, td { + padding: 4px; +} +table.revhistory +{ + width:90%; + border-color:#CCCCCC; + border-style:solid; + border-width:2px medium; + margin-bottom: 10px; +} + +table.revhistory tr.title td +{ + background-color: #CCCCEE; + font-weight: bold; +} + +td.revnumber +{ + vertical-align: top; +} +tr +{ + vertical-align: top; +} diff --git a/help/en_US/scilab_en_US_help/xml_code.css b/help/en_US/scilab_en_US_help/xml_code.css new file mode 100644 index 0000000..9e4c27f --- /dev/null +++ b/help/en_US/scilab_en_US_help/xml_code.css @@ -0,0 +1,94 @@ +.xmlcomment { + font-style: italic; + color: #01a801 +} + +.xmldefault { + font-style: normal; + color: #000000 +} + +.xmlentity { + font-style: normal; + color: #ffaa00 +} + +.xmlopeninstr { + font-style: normal; + color: #000000 +} + +.xmlcloseinstr { + font-style: normal; + color: #000000 +} + +.xmlinstrname { + font-style: normal; + color: #9965a6 +} + +.xmllowtag { + font-style: normal; + color: #000000 +} + +.xmltagname { + font-style: normal; + color: #0303ff +} + +.xmllowclose { + font-style: normal; + color: #000000 +} + +.xmlopencomment { + font-style: italic; + color: #01a801 +} + +.xmlcommentend { + font-style: italic; + color: #01a801 +} + +.xmlcomment { + font-style: italic; + color: #01a801 +} + +.xmlopencdata { + font-style: normal; + color: #c45555 +} + +.xmlcdataend { + font-style: normal; + color: #c45555 +} + +.xmlcdata { + font-style: normal; + color: #000000 +} + +.xmlattributename { + font-style: normal; + color: #9965a6 +} + +.xmlequal { + font-style: normal; + color: #000000 +} + +.xmlattributevalue { + font-style: normal; + color: #973964 +} + +.xmlautoclose { + font-style: normal; + color: #000000 +} diff --git a/help/fr_FR/build_help.sce b/help/fr_FR/build_help.sce new file mode 100755 index 0000000..7065316 --- /dev/null +++ b/help/fr_FR/build_help.sce @@ -0,0 +1,3 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. + +tbx_build_help(TOOLBOX_TITLE,get_absolute_file_path("build_help.sce")); diff --git a/help/fr_FR/c_multiplybypi.xml b/help/fr_FR/c_multiplybypi.xml new file mode 100755 index 0000000..b23737d --- /dev/null +++ b/help/fr_FR/c_multiplybypi.xml @@ -0,0 +1,56 @@ + + + + + c_multiplybypi + Multiple par %pi un nombre + + + Séquence d'appel + a = multiplybypi(b) + + + Arguments + + + b + + Premier argument d'entrée + + + + a + + Argument de sortie + + + + + + Description + Fait une multiplication particulière. + Ajoutez ici plus d'informations sur cette fonction + + LaTeX peut etre utilisé pour afficher l'équation: Dans ce cas, le rendu pourrait être $x*\pi$ + + + + Exemples + c_multiplybypi(3) + + + Voir aussi + + + c_sum + + + Lien vers la page d'aide sum de Scilab + + + + diff --git a/help/fr_FR/c_sub.xml b/help/fr_FR/c_sub.xml new file mode 100755 index 0000000..5b121e7 --- /dev/null +++ b/help/fr_FR/c_sub.xml @@ -0,0 +1,86 @@ + + + + + c_sub + calcule de la soustraction depuis du code C + + + Séquence d'appel + a = c_sub(b,c) + + + Arguments + + + b + + Premier argument d'entrée + + + + c + + Second argument d'entrée + + + + a + + Argument de sortie + + + + + + Description + calcule la soustraction. + Ajoutez ici plus d'informations sur cette fonction + + LaTeX peut etre utilisé pour afficher l'équation: Dans ce cas, le rendu pourrait être $x-y$ + + Il est possible d'inclure une image en utilisant du code Scilab (il faut déclarer au préalable le namespace xmlns:scilab="http://www.scilab.org"): + + + plot3d(); + + ]]> + + + plot3d(); + + Si une image contient une chaîne de caractères localisées, il faut alors ajouter l'attribut scilab:localized="true": + + + plot2d(); + xtitle("Mes jolis plots 2D"); + + ]]> + + + plot2d(); + xtitle("Mes jolis plots 2D"); + + + + Exemples + c_sub(3,4) + + + Voir aussi + + + c_sum + + + Lien vers la page d'aide sum de Scilab + + + + diff --git a/help/fr_FR/c_sum.xml b/help/fr_FR/c_sum.xml new file mode 100755 index 0000000..db218c8 --- /dev/null +++ b/help/fr_FR/c_sum.xml @@ -0,0 +1,62 @@ + + + + + c_sum + calcule de la somme depuis du code C + + + Séquence d'appel + a = c_sum(b,c) + + + Arguments + + + b + + Premier argument d'entréee + + + + c + + Second argument d'entréee + + + + a + + Argument de sortie + + + + + + Description + calcule la somme. + Ajoutez ici plus d'informations sur cette fonction + + LaTeX peut etre utilisé pour afficher l'équation: Dans ce cas, le rendu pourrait être $x+y$ + + + + Exemples + c_sum(3,4) + + + Voir aussi + + + fortran_sum + + + Lien vers la page d'aide sum de Scilab + + + + diff --git a/help/fr_FR/fortran_sum.xml b/help/fr_FR/fortran_sum.xml new file mode 100755 index 0000000..59c888a --- /dev/null +++ b/help/fr_FR/fortran_sum.xml @@ -0,0 +1,62 @@ + + + + + fortran_sum + calcule de la somme depuis du code fortran + + + Séquence d'appel + a = c_sum(b,c) + + + Arguments + + + b + + Premier argument d'entrée + + + + c + + Second argument d'entrée + + + + a + + Argument de sortie + + + + + + Description + calcule la somme. + Ajoutez ici plus d'informations sur cette fonction + + LaTeX peut etre utilisé pour afficher l'équation: Dans ce cas, le rendu pourrait être $x+y$ + + + + Exemples + fortran_sum(3,4) + + + Voir aussi + + + c_sum + + + Lien vers la page d'aide sum de Scilab + + + + diff --git a/help/fr_FR/scilab_sum.xml b/help/fr_FR/scilab_sum.xml new file mode 100755 index 0000000..5b14618 --- /dev/null +++ b/help/fr_FR/scilab_sum.xml @@ -0,0 +1,63 @@ + + + + + scilab_sum + calcule de la somme depuis du code scilab + + + Séquence d'appel + a = scilab_sum(b,c) + + + Arguments + + + b + + Premier argument d'entrée + + + + c + + Second argument d'entrée + + + + a + + Argument de sortie + + + + + + Description + calcule la somme. + Ajoutez ici plus d'informations sur cette fonction + + LaTeX peut etre utilisé pour afficher l'équation: Dans ce cas, le rendu pourrait être $x+y$ + + + + Exemples + scilab_sum(3,4) + + + Voir aussi + + + c_sum + + + Lien vers la page d'aide sum de Scilab + + + + diff --git a/jar/org.scilab.contrib.toolboxskeleton.jar b/jar/org.scilab.contrib.toolboxskeleton.jar new file mode 100755 index 0000000..3f29663 Binary files /dev/null and b/jar/org.scilab.contrib.toolboxskeleton.jar differ diff --git a/jar/scilab_en_US_help.jar b/jar/scilab_en_US_help.jar new file mode 100644 index 0000000..bcc38d4 Binary files /dev/null and b/jar/scilab_en_US_help.jar differ diff --git a/loader.sce b/loader.sce new file mode 100644 index 0000000..23f2c75 --- /dev/null +++ b/loader.sce @@ -0,0 +1,20 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by builder.sce: Please, do not edit this file + +oldmode = mode(); mode(-1); +oldlines = lines()(2); lines(0); +try + exec(get_absolute_file_path("loader.sce")+"etc/"+"test_toolbox.start"); +catch + [errmsg, tmp, nline, func] = lasterror() + msg = "%s: error on line #%d: ""%s""\n" + msg = msprintf(msg, func, nline, errmsg) + lines(oldlines) + mode(oldmode); + clear oldlines oldmode tmp nline func + error(msg); +end +lines(oldlines); +mode(oldmode); +clear oldlines oldmode; + diff --git a/locales/en_US.po b/locales/en_US.po new file mode 100644 index 0000000..7ba878b --- /dev/null +++ b/locales/en_US.po @@ -0,0 +1,35 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: sci_gateway\c\sci_cerror.c:17 +msgid "%s: I'm waiting only one argument.\n" +msgstr "" + +#: sci_gateway\c\sci_cerror.c:22 +#: macros\scilab_error.sci:17 +msgid "%s: Yeah! %d is a good number of arguments but I prefer fail, sorry.\n" +msgstr "" + +#: macros\scilab_error.sci:13 +msgid "%s: I''m waiting for only one argument.\n" +msgstr "" + +msgid "Rectangle" +msgstr "" + +msgid "My Title" +msgstr "" + +msgid "Height" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "Color" +msgstr "" + +msgid "Outline" +msgstr "" diff --git a/locales/en_US/LC_MESSAGES/scilab_toolbox.mo b/locales/en_US/LC_MESSAGES/scilab_toolbox.mo new file mode 100644 index 0000000..109adc9 Binary files /dev/null and b/locales/en_US/LC_MESSAGES/scilab_toolbox.mo differ diff --git a/locales/en_US/LC_MESSAGES/scilab_toolbox.po b/locales/en_US/LC_MESSAGES/scilab_toolbox.po new file mode 100644 index 0000000..7ba878b --- /dev/null +++ b/locales/en_US/LC_MESSAGES/scilab_toolbox.po @@ -0,0 +1,35 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: sci_gateway\c\sci_cerror.c:17 +msgid "%s: I'm waiting only one argument.\n" +msgstr "" + +#: sci_gateway\c\sci_cerror.c:22 +#: macros\scilab_error.sci:17 +msgid "%s: Yeah! %d is a good number of arguments but I prefer fail, sorry.\n" +msgstr "" + +#: macros\scilab_error.sci:13 +msgid "%s: I''m waiting for only one argument.\n" +msgstr "" + +msgid "Rectangle" +msgstr "" + +msgid "My Title" +msgstr "" + +msgid "Height" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "Color" +msgstr "" + +msgid "Outline" +msgstr "" diff --git a/locales/en_US/LC_MESSAGES/test_toolbox.po b/locales/en_US/LC_MESSAGES/test_toolbox.po new file mode 100644 index 0000000..7ba878b --- /dev/null +++ b/locales/en_US/LC_MESSAGES/test_toolbox.po @@ -0,0 +1,35 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: sci_gateway\c\sci_cerror.c:17 +msgid "%s: I'm waiting only one argument.\n" +msgstr "" + +#: sci_gateway\c\sci_cerror.c:22 +#: macros\scilab_error.sci:17 +msgid "%s: Yeah! %d is a good number of arguments but I prefer fail, sorry.\n" +msgstr "" + +#: macros\scilab_error.sci:13 +msgid "%s: I''m waiting for only one argument.\n" +msgstr "" + +msgid "Rectangle" +msgstr "" + +msgid "My Title" +msgstr "" + +msgid "Height" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "Color" +msgstr "" + +msgid "Outline" +msgstr "" diff --git a/locales/en_US/LC_MESSAGES/toolbox_skeleton.po b/locales/en_US/LC_MESSAGES/toolbox_skeleton.po new file mode 100644 index 0000000..7ba878b --- /dev/null +++ b/locales/en_US/LC_MESSAGES/toolbox_skeleton.po @@ -0,0 +1,35 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: sci_gateway\c\sci_cerror.c:17 +msgid "%s: I'm waiting only one argument.\n" +msgstr "" + +#: sci_gateway\c\sci_cerror.c:22 +#: macros\scilab_error.sci:17 +msgid "%s: Yeah! %d is a good number of arguments but I prefer fail, sorry.\n" +msgstr "" + +#: macros\scilab_error.sci:13 +msgid "%s: I''m waiting for only one argument.\n" +msgstr "" + +msgid "Rectangle" +msgstr "" + +msgid "My Title" +msgstr "" + +msgid "Height" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "Color" +msgstr "" + +msgid "Outline" +msgstr "" diff --git a/locales/fr_FR.po b/locales/fr_FR.po new file mode 100644 index 0000000..e585710 --- /dev/null +++ b/locales/fr_FR.po @@ -0,0 +1,32 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: sci_gateway\c\sci_cerror.c:17 +#: macros\scilab_error.sci:13 +msgid "%s: I'm waiting for only one argument.\n" +msgstr "%s : Je n'attends qu'un seul argument.\n" + +#: sci_gateway\c\sci_cerror.c:22 +#: macros\scilab_error.sci:17 +msgid "%s: Yeah! %d is a good number of arguments but I prefer fail, sorry.\n" +msgstr "%s : Oui ! %d est un bon nombre d'arguments mais je préfère échouer, désolé.\n" + +msgid "Rectangle" +msgstr "Rectangle" + +msgid "My Title" +msgstr "Mon Titre" + +msgid "Height" +msgstr "Hauteur" + +msgid "Width" +msgstr "Largeur" + +msgid "Color" +msgstr "Couleur" + +msgid "Outline" +msgstr "Contour" diff --git a/locales/fr_FR/LC_MESSAGES/scilab_toolbox.mo b/locales/fr_FR/LC_MESSAGES/scilab_toolbox.mo new file mode 100644 index 0000000..c6a6dc5 Binary files /dev/null and b/locales/fr_FR/LC_MESSAGES/scilab_toolbox.mo differ diff --git a/locales/fr_FR/LC_MESSAGES/scilab_toolbox.po b/locales/fr_FR/LC_MESSAGES/scilab_toolbox.po new file mode 100644 index 0000000..e585710 --- /dev/null +++ b/locales/fr_FR/LC_MESSAGES/scilab_toolbox.po @@ -0,0 +1,32 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: sci_gateway\c\sci_cerror.c:17 +#: macros\scilab_error.sci:13 +msgid "%s: I'm waiting for only one argument.\n" +msgstr "%s : Je n'attends qu'un seul argument.\n" + +#: sci_gateway\c\sci_cerror.c:22 +#: macros\scilab_error.sci:17 +msgid "%s: Yeah! %d is a good number of arguments but I prefer fail, sorry.\n" +msgstr "%s : Oui ! %d est un bon nombre d'arguments mais je préfère échouer, désolé.\n" + +msgid "Rectangle" +msgstr "Rectangle" + +msgid "My Title" +msgstr "Mon Titre" + +msgid "Height" +msgstr "Hauteur" + +msgid "Width" +msgstr "Largeur" + +msgid "Color" +msgstr "Couleur" + +msgid "Outline" +msgstr "Contour" diff --git a/locales/fr_FR/LC_MESSAGES/test_toolbox.po b/locales/fr_FR/LC_MESSAGES/test_toolbox.po new file mode 100644 index 0000000..e585710 --- /dev/null +++ b/locales/fr_FR/LC_MESSAGES/test_toolbox.po @@ -0,0 +1,32 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: sci_gateway\c\sci_cerror.c:17 +#: macros\scilab_error.sci:13 +msgid "%s: I'm waiting for only one argument.\n" +msgstr "%s : Je n'attends qu'un seul argument.\n" + +#: sci_gateway\c\sci_cerror.c:22 +#: macros\scilab_error.sci:17 +msgid "%s: Yeah! %d is a good number of arguments but I prefer fail, sorry.\n" +msgstr "%s : Oui ! %d est un bon nombre d'arguments mais je préfère échouer, désolé.\n" + +msgid "Rectangle" +msgstr "Rectangle" + +msgid "My Title" +msgstr "Mon Titre" + +msgid "Height" +msgstr "Hauteur" + +msgid "Width" +msgstr "Largeur" + +msgid "Color" +msgstr "Couleur" + +msgid "Outline" +msgstr "Contour" diff --git a/locales/fr_FR/LC_MESSAGES/toolbox_skeleton.po b/locales/fr_FR/LC_MESSAGES/toolbox_skeleton.po new file mode 100644 index 0000000..e585710 --- /dev/null +++ b/locales/fr_FR/LC_MESSAGES/toolbox_skeleton.po @@ -0,0 +1,32 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: sci_gateway\c\sci_cerror.c:17 +#: macros\scilab_error.sci:13 +msgid "%s: I'm waiting for only one argument.\n" +msgstr "%s : Je n'attends qu'un seul argument.\n" + +#: sci_gateway\c\sci_cerror.c:22 +#: macros\scilab_error.sci:17 +msgid "%s: Yeah! %d is a good number of arguments but I prefer fail, sorry.\n" +msgstr "%s : Oui ! %d est un bon nombre d'arguments mais je préfère échouer, désolé.\n" + +msgid "Rectangle" +msgstr "Rectangle" + +msgid "My Title" +msgstr "Mon Titre" + +msgid "Height" +msgstr "Hauteur" + +msgid "Width" +msgstr "Largeur" + +msgid "Color" +msgstr "Couleur" + +msgid "Outline" +msgstr "Contour" diff --git a/macros/add.bin b/macros/add.bin new file mode 100644 index 0000000..23b5bbb Binary files /dev/null and b/macros/add.bin differ diff --git a/macros/add.sci b/macros/add.sci new file mode 100755 index 0000000..bc47366 --- /dev/null +++ b/macros/add.sci @@ -0,0 +1,34 @@ +// Copyright (C) 2019 - 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: Rupak Rokade +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +function [y] = add(inp1,inp2) + // Calls an addition function defined in Scilab with given inputs and returns the expected result + // + // Syntax + // y = add(in1,in2) + // + // Parameters + // y : ouput + // in1 and in2 : Numbers to multiply + // + // Description + // This function accepts accepts two numbers and adds them + // + // + // Examples + // // Adding two numbers + // y = add(33,45) + // +// Authors +// Rupak Rokade + y = inp1+inp2; +endfunction diff --git a/macros/buildmacros.sce b/macros/buildmacros.sce new file mode 100755 index 0000000..5a872bb --- /dev/null +++ b/macros/buildmacros.sce @@ -0,0 +1,10 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. + +function buildmacros() + macros_path = get_absolute_file_path("buildmacros.sce"); + tbx_build_macros(TOOLBOX_NAME, macros_path); +endfunction + +buildmacros(); +clear buildmacros; // remove buildmacros on stack + diff --git a/macros/lib b/macros/lib new file mode 100644 index 0000000..dce4c6f --- /dev/null +++ b/macros/lib @@ -0,0 +1,5 @@ + + + + + diff --git a/macros/multiply.bin b/macros/multiply.bin new file mode 100644 index 0000000..20905f1 Binary files /dev/null and b/macros/multiply.bin differ diff --git a/macros/multiply.sci b/macros/multiply.sci new file mode 100755 index 0000000..59c6e84 --- /dev/null +++ b/macros/multiply.sci @@ -0,0 +1,33 @@ +// Copyright (C) 2019 - 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: Rupak Rokade +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +function [y] = multiply() + // Calls a multiplication function defined in C with given inputs and returns the expected result + // + // Syntax + // y = multiply(in1,in2) + // + // Parameters + // y : ouput + // in1 and in2 : Numbers to multiply + // + // Description + // This function accepts accepts two numbers and multiply them + // + // + // Examples + // // Multiplying two numbers + // y = multiply(3,5) + // +// Authors +// Rupak Rokade +endfunction diff --git a/sci_gateway/builder_gateway.sce b/sci_gateway/builder_gateway.sce new file mode 100755 index 0000000..103597c --- /dev/null +++ b/sci_gateway/builder_gateway.sce @@ -0,0 +1,15 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. + +function builder_gateway() + + sci_gateway_dir = get_absolute_file_path("builder_gateway.sce"); + languages = ["cpp"]; + + tbx_builder_gateway_lang(languages,sci_gateway_dir); + tbx_build_gateway_loader(languages,sci_gateway_dir); + tbx_build_gateway_clean(languages,sci_gateway_dir); + +endfunction + +builder_gateway() +clear builder_gateway; // remove builder_gateway on stack diff --git a/sci_gateway/cleaner_gateway.sce b/sci_gateway/cleaner_gateway.sce new file mode 100644 index 0000000..03aedaf --- /dev/null +++ b/sci_gateway/cleaner_gateway.sce @@ -0,0 +1,15 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by builder_gateway.sce: Please, do not edit this file + +sci_gateway_dir = get_absolute_file_path("cleaner_gateway.sce"); +current_dir = pwd(); + +chdir(sci_gateway_dir); +if ( isdir("cpp") ) then + chdir("cpp"); + exec("cleaner.sce"); + mdelete("cleaner.sce"); +end + +chdir(current_dir); +clear sci_gateway_dir current_dir; diff --git a/sci_gateway/cpp/builder_gateway_cpp.sce b/sci_gateway/cpp/builder_gateway_cpp.sce new file mode 100755 index 0000000..79b7d18 --- /dev/null +++ b/sci_gateway/cpp/builder_gateway_cpp.sce @@ -0,0 +1,69 @@ +// Copyright (C) 2015 - 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: Harpreet Singh, Yash Kataria, Adarsh Shah +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +mode(-1) +lines(0) + +toolbox_title = "test_toolbox"; + +Build_64Bits = %t; + +path_builder = get_absolute_file_path('builder_gateway_cpp.sce'); + +Function_Names = [ + + //fun function + "multiply","sci_multiply", "csci6"; + ]; + +//Name of all the files to be compiled +Files = "sci_multiply.cpp"; + + + +[a, opt] = getversion(); +Version = opt(2); + +//Build_64Bits = %f; + +if getos()=="Windows" then + third_dir = path_builder+filesep()+'..'+filesep()+'..'+filesep()+'thirdparty'; + lib_base_dir = third_dir + filesep() + 'windows' + filesep() + 'lib' + filesep() + Version + filesep(); + inc_base_dir = third_dir + filesep() + 'windows' + filesep() + 'include'; + //inc_base_dir = third_dir + filesep() + 'linux' + filesep() + 'include' + filesep() + 'coin'; + //threads_dir=third_dir + filesep() + 'linux' + filesep() + 'include' + filesep() + 'pthreads-win32'; + C_Flags=['-D__USE_DEPRECATED_STACK_FUNCTIONS__ -I -w '+path_builder+' '+ '-I '+inc_base_dir+' '] + Linker_Flag = [lib_base_dir+"libcoinblas.lib "] + +elseif getos()=="Darwin" then + third_dir = path_builder+filesep()+'..'+filesep()+'..'+filesep()+'thirdparty'; + lib_base_dir = third_dir + filesep() + 'Mac' + filesep() + 'lib' + filesep() + Version + filesep(); + inc_base_dir = third_dir + filesep() + 'Mac' + filesep() + 'include' + filesep() + 'coin'; + C_Flags=["-D__USE_DEPRECATED_STACK_FUNCTIONS__ -w -fpermissive -I"+path_builder+" -I"+inc_base_dir+" -Wl,-rpath "+lib_base_dir+" "] + Linker_Flag = ["-L"+lib_base_dir+"libSym"+" "+"-L"+lib_base_dir+"libipopt"+" "+"-L"+lib_base_dir+"libClp"+" "+"-L"+lib_base_dir+"libOsiClp"+" "+"-L"+lib_base_dir+"libCoinUtils" + " "+"-L"+lib_base_dir+"libbonmin" ] + +else//LINUX + + third_dir = path_builder+filesep()+'..'+filesep()+'..'+filesep()+'thirdparty'; + lib_base_dir = third_dir + filesep() + 'linux' + filesep() + 'lib' + filesep() + Version + filesep(); + + inc_base_dir = third_dir + filesep() + 'linux' + filesep() + 'include'; + + C_Flags = ["-I"+inc_base_dir]; + + Linker_Flag = ["-L" + lib_base_dir + " -ladd -Wl,-rpath="+lib_base_dir] + +end + +//disp("printing ?????") +tbx_build_gateway(toolbox_title,Function_Names,Files,get_absolute_file_path("builder_gateway_cpp.sce"), [], Linker_Flag, C_Flags,[]); + +clear toolbox_title Function_Names Files Linker_Flag C_Flags; diff --git a/sci_gateway/cpp/cleaner.sce b/sci_gateway/cpp/cleaner.sce new file mode 100644 index 0000000..d2f9e0c --- /dev/null +++ b/sci_gateway/cpp/cleaner.sce @@ -0,0 +1,30 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by builder.sce : Please, do not edit this file +// cleaner.sce +// ------------------------------------------------------ +curdir = pwd(); +cleaner_path = get_file_path('cleaner.sce'); +chdir(cleaner_path); +// ------------------------------------------------------ +if fileinfo('loader.sce') <> [] then + mdelete('loader.sce'); +end +// ------------------------------------------------------ +if fileinfo('libtest_toolbox.so') <> [] then + mdelete('libtest_toolbox.so'); +end +// ------------------------------------------------------ +if fileinfo('libtest_toolbox.cpp') <> [] then + mdelete('libtest_toolbox.cpp'); +end +// ------------------------------------------------------ +if fileinfo('libtest_toolbox.hxx') <> [] then + mdelete('libtest_toolbox.hxx'); +end +// ------------------------------------------------------ +if fileinfo('libtest_toolbox.h') <> [] then + mdelete('libtest_toolbox.h'); +end +// ------------------------------------------------------ +chdir(curdir); +// ------------------------------------------------------ diff --git a/sci_gateway/cpp/libtest_toolbox.cpp b/sci_gateway/cpp/libtest_toolbox.cpp new file mode 100644 index 0000000..a2cd82a --- /dev/null +++ b/sci_gateway/cpp/libtest_toolbox.cpp @@ -0,0 +1,16 @@ +#include +#include "libtest_toolbox.hxx" +extern "C" +{ +#include "libtest_toolbox.h" +#include "addfunction.h" +} + +#define MODULE_NAME L"libtest_toolbox" + +int libtest_toolbox(wchar_t* _pwstFuncName) +{ + if(wcscmp(_pwstFuncName, L"multiply") == 0){ addCFunction(L"multiply", &sci_multiply, MODULE_NAME); } + + return 1; +} diff --git a/sci_gateway/cpp/libtest_toolbox.h b/sci_gateway/cpp/libtest_toolbox.h new file mode 100644 index 0000000..f9c4895 --- /dev/null +++ b/sci_gateway/cpp/libtest_toolbox.h @@ -0,0 +1,8 @@ +#ifndef __LIBTEST_TOOLBOX_GW_H__ +#define __LIBTEST_TOOLBOX_GW_H__ + +#include "c_gateway_prototype.h" + +C_GATEWAY_PROTOTYPE(sci_multiply); + +#endif /* __LIBTEST_TOOLBOX_GW_H__ */ diff --git a/sci_gateway/cpp/libtest_toolbox.hxx b/sci_gateway/cpp/libtest_toolbox.hxx new file mode 100644 index 0000000..be782b9 --- /dev/null +++ b/sci_gateway/cpp/libtest_toolbox.hxx @@ -0,0 +1,18 @@ +#ifndef __LIBTEST_TOOLBOX_GW_HXX__ +#define __LIBTEST_TOOLBOX_GW_HXX__ + +#ifdef _MSC_VER +#ifdef LIBTEST_TOOLBOX_GW_EXPORTS +#define LIBTEST_TOOLBOX_GW_IMPEXP __declspec(dllexport) +#else +#define LIBTEST_TOOLBOX_GW_IMPEXP __declspec(dllimport) +#endif +#else +#define LIBTEST_TOOLBOX_GW_IMPEXP +#endif + +extern "C" LIBTEST_TOOLBOX_GW_IMPEXP int libtest_toolbox(wchar_t* _pwstFuncName); + + + +#endif /* __LIBTEST_TOOLBOX_GW_HXX__ */ diff --git a/sci_gateway/cpp/libtest_toolbox.so b/sci_gateway/cpp/libtest_toolbox.so new file mode 100755 index 0000000..582de0f Binary files /dev/null and b/sci_gateway/cpp/libtest_toolbox.so differ diff --git a/sci_gateway/cpp/loader.sce b/sci_gateway/cpp/loader.sce new file mode 100644 index 0000000..8747504 --- /dev/null +++ b/sci_gateway/cpp/loader.sce @@ -0,0 +1,21 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by builder.sce : Please, do not edit this file +// ---------------------------------------------------------------------------- +// +libtest_toolbox_path = get_absolute_file_path('loader.sce'); +// +// ulink previous function with same name +[bOK, ilib] = c_link('libtest_toolbox'); +if bOK then + ulink(ilib); +end +// +list_functions = [ 'multiply'; +]; +addinter(libtest_toolbox_path + filesep() + 'libtest_toolbox' + getdynlibext(), 'libtest_toolbox', list_functions); +// remove temp. variables on stack +clear libtest_toolbox_path; +clear bOK; +clear ilib; +clear list_functions; +// ---------------------------------------------------------------------------- diff --git a/sci_gateway/cpp/sci_multiply.cpp b/sci_gateway/cpp/sci_multiply.cpp new file mode 100755 index 0000000..4aece25 --- /dev/null +++ b/sci_gateway/cpp/sci_multiply.cpp @@ -0,0 +1,55 @@ +// Copyright (C) 2019 - 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: Rupak Rokade +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +extern "C" +{ +#include +#include +#include +#include "localization.h" +#include "add.h" + + + + +static const char fname[] = "multiply"; +int sci_multiply(scilabEnv env, int nin, scilabVar* in, int nopt, scilabOpt* opt, int nout, scilabVar* out) + +{ + double* in1 = NULL; + double* in2 = NULL; + double* out1 = NULL; + double ar[1]; + +if (nin < 2) + { + Scierror(77, _("%s: Wrong number of input argument(s): %d expected.\n"), fname, 2); + return 1; + } + +if (nout != 1) + { + Scierror(77, _("%s: Wrong number of output argument(s): %d expected.\n"), fname, 1); + return 1; + } + + scilab_getDoubleArray(env, in[0], &in1); + scilab_getDoubleArray(env, in[1], &in2); + + add(ar, in1[0],in2[0]); + + out[0] = scilab_createDoubleMatrix2d(env, 1, 1, 0); + scilab_getDoubleArray(env, out[0], &out1); + + + out1[0] = ar[0]; + return 0; +} +} diff --git a/sci_gateway/cpp/test_toolbox.cpp b/sci_gateway/cpp/test_toolbox.cpp new file mode 100755 index 0000000..df05be7 --- /dev/null +++ b/sci_gateway/cpp/test_toolbox.cpp @@ -0,0 +1,16 @@ +#include +#include "test_toolbox.hxx" +extern "C" +{ +#include "test_toolbox.h" +#include "addfunction.h" +} + +#define MODULE_NAME L"test_toolbox" + +int test_toolbox(wchar_t* _pwstFuncName) +{ + if(wcscmp(_pwstFuncName, L"multiply") == 0){ addCFunction(L"multiply", &sci_multiply, MODULE_NAME); } + + return 1; +} diff --git a/sci_gateway/cpp/test_toolbox.h b/sci_gateway/cpp/test_toolbox.h new file mode 100755 index 0000000..a2a257c --- /dev/null +++ b/sci_gateway/cpp/test_toolbox.h @@ -0,0 +1,8 @@ +#ifndef __TEST_TOOLBOX_GW_H__ +#define __TEST_TOOLBOX_GW_H__ + +#include "c_gateway_prototype.h" + +C_GATEWAY_PROTOTYPE(sci_multiply); + +#endif /* __TEST_TOOLBOX_GW_H__ */ diff --git a/sci_gateway/cpp/test_toolbox.hxx b/sci_gateway/cpp/test_toolbox.hxx new file mode 100755 index 0000000..b689e70 --- /dev/null +++ b/sci_gateway/cpp/test_toolbox.hxx @@ -0,0 +1,18 @@ +#ifndef __TEST_TOOLBOX_GW_HXX__ +#define __TEST_TOOLBOX_GW_HXX__ + +#ifdef _MSC_VER +#ifdef TEST_TOOLBOX_GW_EXPORTS +#define TEST_TOOLBOX_GW_IMPEXP __declspec(dllexport) +#else +#define TEST_TOOLBOX_GW_IMPEXP __declspec(dllimport) +#endif +#else +#define TEST_TOOLBOX_GW_IMPEXP +#endif + +extern "C" TEST_TOOLBOX_GW_IMPEXP int test_toolbox(wchar_t* _pwstFuncName); + + + +#endif /* __TEST_TOOLBOX_GW_HXX__ */ diff --git a/sci_gateway/loader_gateway.sce b/sci_gateway/loader_gateway.sce new file mode 100755 index 0000000..6809d99 --- /dev/null +++ b/sci_gateway/loader_gateway.sce @@ -0,0 +1,24 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by builder_gateway.sce: Please, do not edit this file + +try + v = getversion("scilab"); +catch + v = [ 5 0 ]; // or older +end +if (v(1) <= 5) & (v(2) < 3) then + // new API in scilab 5.3 + error(gettext("Scilab 5.3 or more is required.")); +end + +sci_gateway_dir = get_absolute_file_path("loader_gateway.sce"); +current_dir = pwd(); + +chdir(sci_gateway_dir); +if ( isdir("cpp") ) then + chdir("cpp"); + exec("loader.sce"); +end + +chdir(current_dir); +clear sci_gateway_dir current_dir v; diff --git a/src/add.c b/src/add.c new file mode 100755 index 0000000..0fddbac --- /dev/null +++ b/src/add.c @@ -0,0 +1,10 @@ +/*This c program multiplies two variable values*/ +#include +#include +#include "add.h" +int add(double* answ, double num1, double num2) +{ + answ[0] = num1*num2; + //printf("Inside add %f \n", answ[0]); + return 0; +} diff --git a/src/add.h b/src/add.h new file mode 100755 index 0000000..db62457 --- /dev/null +++ b/src/add.h @@ -0,0 +1 @@ +int add(double* answ, double num1, double num2); diff --git a/src/add.o b/src/add.o new file mode 100644 index 0000000..8ddb9e5 Binary files /dev/null and b/src/add.o differ diff --git a/src/libadd.so b/src/libadd.so new file mode 100755 index 0000000..003d417 Binary files /dev/null and b/src/libadd.so differ diff --git a/src/main.c b/src/main.c new file mode 100755 index 0000000..6c95040 --- /dev/null +++ b/src/main.c @@ -0,0 +1,9 @@ +#include +#include "add.h" +int main(void) +{ + double ar[1]; + add(ar, 2,5); + printf("Inside main %f \n", ar[0]); + return 0; +} diff --git a/src/run.sh b/src/run.sh new file mode 100755 index 0000000..729b991 --- /dev/null +++ b/src/run.sh @@ -0,0 +1,8 @@ +rm *.o *.so *.lib test + +gcc -fPIC -c add.c +gcc -shared -o libadd.so add.o +gcc -L$(pwd) -Wl,-rpath=$(pwd) -o test main.c -ladd -g + +cp add.h ../thirdparty/linux/include/ +cp libadd.so ../thirdparty/linux/lib/x64/ diff --git a/src/test b/src/test new file mode 100755 index 0000000..8990420 Binary files /dev/null and b/src/test differ diff --git a/thirdparty/linux/include/add.h b/thirdparty/linux/include/add.h new file mode 100755 index 0000000..db62457 --- /dev/null +++ b/thirdparty/linux/include/add.h @@ -0,0 +1 @@ +int add(double* answ, double num1, double num2); diff --git a/thirdparty/linux/lib/x64/libadd.so b/thirdparty/linux/lib/x64/libadd.so new file mode 100755 index 0000000..003d417 Binary files /dev/null and b/thirdparty/linux/lib/x64/libadd.so differ diff --git a/thirdparty/windows/include/add.h b/thirdparty/windows/include/add.h new file mode 100755 index 0000000..c6f90ab --- /dev/null +++ b/thirdparty/windows/include/add.h @@ -0,0 +1 @@ +int add(double* ans, double num1, double num2); \ No newline at end of file diff --git a/thirdparty/windows/lib/libadd.lib b/thirdparty/windows/lib/libadd.lib new file mode 100755 index 0000000..c0824c8 Binary files /dev/null and b/thirdparty/windows/lib/libadd.lib differ diff --git a/unloader.sce b/unloader.sce new file mode 100644 index 0000000..7871454 --- /dev/null +++ b/unloader.sce @@ -0,0 +1,23 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by builder.sce: Please, do not edit this file + +oldmode = mode(); mode(-1); +oldlines = lines()(2); lines(0); +try + fileQuit = get_absolute_file_path("unloader.sce") + "etc/" + "test_toolbox.quit"; + if isfile(fileQuit) then + exec(fileQuit); + end +catch + [errmsg, tmp, nline, func] = lasterror() + msg = "%s: error on line #%d: ""%s""\n" + msg = msprintf(msg, func, nline, errmsg) + lines(oldlines) + mode(oldmode); + clear oldlines oldmode tmp nline func + error(msg); +end +lines(oldlines); +mode(oldmode); +clear oldlines oldmode; + -- cgit