Scicos tests: fix scicos.tst to load Scicos libs correctly
[scilab.git] / scilab / modules / core / src / c / coretable.c
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) INRIA
4  *
5  * This file must be used under the terms of the CeCILL.
6  * This source file is licensed as described in the file COPYING, which
7  * you should have received as part of this distribution.  The terms
8  * are also available at
9  * http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
10  *
11  */
12
13 #include <string.h>
14 #include "machine.h"
15 #include "GetFunctionByName.h"
16
17
18 /***********************************
19 * Search Table for interf
20 ***********************************/
21
22 #define ARGS_interf void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *,void *
23 typedef int * (*interff)(ARGS_interf);
24
25 #define ARGS_interf1 char *,long int
26 typedef int * (*interff1)(ARGS_interf1);
27
28 /**************** interf ***************/
29 void C2F(interf)(ARGS_interf);
30 void C2F(interf1)(ARGS_interf1);
31 void C2F(setinterf)(char *name, int *rep);
32
33 FTAB FTab_interf[] =
34 {
35     {(char *) 0, (voidf) 0}
36 };
37
38
39 /***********************************
40 * Search Table for interf
41 **********************************/
42
43 /** the current function fixed by setinterf **/
44
45 static interff interffonc ;
46
47 /** function call **/
48
49 void C2F(interf)(void * x1, void * x2, void * x3, void * x4, void * x5, void * x6, void * x7, void * x8, void * x9, void * x10, void * x11, void * x12, void * x13, void * x14, void * x15, void * x16, void * x17, void * x18, void * x19, void * x20, void * x21, void * x22, void * x23, void * x24, void * x25, void * x26, void * x27, void * x28, void * x29, void * x30)
50 {
51     (*interffonc)(x1 , x2 , x3 , x4 , x5 , x6 , x7 , x8 , x9 , x10,
52                   x11, x12, x13, x14, x15, x16, x17, x18, x19, x20,
53                   x21, x22, x23, x24, x25, x26, x27, x28, x29, x30);
54 }
55
56
57 void C2F(interf1)(char *name, long int size)
58 {
59     ((interff1) *interffonc)(name, (long)strlen(name));
60 }
61
62 /** fixes the function associated to name **/
63
64 void C2F(setinterf)(char *name, int *rep)
65 {
66     interffonc = (interff) GetFunctionByName(name, rep, FTab_interf);
67 }
68
69 /** function call **/