diff --git a/Doc/Manual/Scilab.html b/Doc/Manual/Scilab.html index d01cc916c..3f69a4f06 100644 --- a/Doc/Manual/Scilab.html +++ b/Doc/Manual/Scilab.html @@ -21,12 +21,11 @@
  • Using the module
  • Additional command line options -
  • A basic tour of C/C++ wrapping +
  • A tour of basic C/C++ wrapping +
  • Type mappings +
  • Module
  • Other resources @@ -335,60 +339,6 @@ ans=24 -

    37.3.4 Type mappings

    - -

    Default primitive type mappings

    - -

    -The following table give for each C/C++ primitive type the equivalent Scilab type. -

    - -
    - - - - - - - - - - - - - - - - - - - - -
    C/C++ typeScilab type
    boolboolean
    charstring
    signed chardouble or int8
    unsigned charuint8
    shortdouble or int16
    unsigned shortuint16
    intdouble or int32
    unsigned intuint32
    longdouble or int32
    unsigned longuint32
    signed long longnot supported with Scilab 5.x
    unsigned long longnot supported with Scilab 5.x
    floatdouble
    doubledouble
    char* or char[]string
    -
    - -

    -Notes: -

    -

    - -

    Default type mappings for non-primitive types

    - -

    -The default mapped type for C/C++ non-primitive types is the Scilab pointer. That is the case for exemple for C structs, C++ classes, etc... -But there are many type mappings for non-primitive types (such as enums, arrays, STL types, etc...). Each of them is described further in this document. -

    -

    37.3.6 Global variables

    @@ -674,7 +624,7 @@ ans =

    -The type mappings used for arrays is described in 37.3.4. +The type mappings used for arrays is described in 37.4.1. It means that, if needed, a Scilab double vector is converted in input into a C int array. And this C int array is automatically converted in output to a Scilab double vector.

    @@ -756,7 +706,7 @@ void print_matrix(double **M, int nbRows, int nbCols) { -

    37.4.13 Classes

    +

    37.3.13 C++ Classes

    The classes are wrapped in the same manner as structs, through functions. For example, the following class: @@ -790,14 +740,14 @@ ans = -

    37.4.14 Templates

    +

    37.3.14 C++ Templates

    Templates are supported. See the SWIG general documentation on how templates are interfaced in SWIG.
    An example of templates can be found in Examples/scilab/templates.

    -

    37.4.15 STL

    +

    37.3.15 C++ STL

    The Standard Template Library (STL) is partially supported. @@ -873,6 +823,60 @@ At last, the module initialization function has to be executed first in Scilab, See 37.5.6 for more details.

    +

    37.4 Type mappings

    + +

    37.4.1 Default primitive type mappings

    + +

    +The following table give for each C/C++ primitive type the equivalent Scilab type. +

    + +
    + + + + + + + + + + + + + + + + + + + + +
    C/C++ typeScilab type
    boolboolean
    charstring
    signed chardouble or int8
    unsigned charuint8
    shortdouble or int16
    unsigned shortuint16
    intdouble or int32
    unsigned intuint32
    longdouble or int32
    unsigned longuint32
    signed long longnot supported with Scilab 5.x
    unsigned long longnot supported with Scilab 5.x
    floatdouble
    doubledouble
    char* or char[]string
    +
    + +

    +Notes: +

    +

    + +

    37.4.2 Default type mappings for non-primitive types

    + +

    +The default mapped type for C/C++ non-primitive types is the Scilab pointer. That is the case for exemple for C structs, C++ classes, etc... +But there are many type mappings for non-primitive types (such as enums, arrays, STL types, etc...). Each of them is described further in this document. +

    +

    37.5 Module

    @@ -996,7 +1000,7 @@ clear get_file_path;

  • fcts: vector of character strings. The name of new Scilab function implemented in the new interface.
  • -

    37. 5.6 Module initialization

    +

    37. 5.6 Initialization

    A built-in Scilab function is generated for the wrapped module.