* disp moved in output_stream module.
-* lib,comp moved in functions module.
+* lib,comp,deff moved in functions module.
* oldsave, oldload functions (only used with macros of scilab 2.4) are removed
Replaces oldsave, oldload by save and load in your code.
} recursion_function_called;
#define GW_IO_ID 5
-#define GW_CORE_ID 13
#define GW_USER_ID 14
#define GW_USER2_ID 24
#define GW_FUNCTIONS_ID 31
break;
case RECURSION_CALL_DEFF:
/* see deff (intdeff.f) */
- /* call comp by fun & fin */
- gw = GW_IO_ID; /* gw_io */
+ gw = GW_FUNCTIONS_ID; /* gw_functions */
break;
case RECURSION_CALL_DISP:
/* see disp (intdisp.f) */
rhs=3
lhs=1
c *call* deff
- fun=5
- fin=10
+ fun=31
+ fin=3
go to 999
endif
GATEWAY_C_SOURCES = sci_gateway/c/gw_functions.c \
sci_gateway/c/sci_lib.c \
-sci_gateway/c/sci_comp.c
+sci_gateway/c/sci_comp.c \
+sci_gateway/c/sci_deff.c \
GATEWAY_FORTRAN_SOURCES = sci_gateway/fortran/intlib.f \
-sci_gateway/fortran/sci_comp.f
+sci_gateway/fortran/sci_comp.f \
+sci_gateway/fortran/intdeff.f
libscifunctions_la_CFLAGS= -I$(srcdir)/includes/ \
/*--------------------------------------------------------------------------*/
int C2F(sci_lib)(char *fname,unsigned long fname_len);
int C2F(sci_comp)(char *fname,unsigned long fname_len);
+int C2F(sci_deff)(char *fname,unsigned long fname_len);
/*--------------------------------------------------------------------------*/
#endif /* __GW_FUNCTIONS_H__ */
/*--------------------------------------------------------------------------*/
static gw_generic_table Tab[]=
{
{C2F(sci_lib),"lib"},
- {C2F(sci_comp),"comp"}
+ {C2F(sci_comp),"comp"},
+ {C2F(sci_deff),"deff"}
};
/*--------------------------------------------------------------------------*/
int gw_functions(void)
/* We call "comp" */
Fin = 2;
}
+ else
+ {
+ switch ( getRecursionFunctionToCall() )
+ {
+ case RECURSION_CALL_DEFF:
+ #define deff_fname "deff"
+ C2F(sci_deff)(deff_fname,strlen(deff_fname));
+ return 0;
+ default:
+ return 0;
+ }
+ }
}
callFunctionFromGateway(Tab);
*
*/
-#include "gw_io.h"
+#include "gw_functions.h"
+/*--------------------------------------------------------------------------*/
+extern int C2F(intdeff)();
/*--------------------------------------------------------------------------*/
int C2F(sci_deff)(char *fname,unsigned long fname_len)
{
<GATEWAY name="functions">
<PRIMITIVE gatewayId="31" primitiveId="1" primitiveName="lib" />
<PRIMITIVE gatewayId="31" primitiveId="2" primitiveName="comp" />
+<PRIMITIVE gatewayId="31" primitiveId="3" primitiveName="deff" />
</GATEWAY>
callFunctionFromGateway
getRecursionGatewayToCall
isRecursionCallToFunction
+getRecursionFunctionToCall
;
>
</File>
<File
+ RelativePath="..\..\sci_gateway\c\sci_deff.c"
+ >
+ </File>
+ <File
RelativePath="..\..\sci_gateway\c\sci_lib.c"
>
</File>
checkrhs_
checklhs_
getscalar_
-
+getfun_
+cremat_
; elementary_functions
isort_
-iset_
\ No newline at end of file
+iset_
+unsfdcopy_
\ No newline at end of file
<Filter Name="Header Files" Filter="fi;fd"/>
<Filter Name="Resource Files" Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"/>
<Filter Name="Source Files" Filter="f90;for;f;fpp;ftn;def;odl;idl">
+ <File RelativePath="..\..\sci_gateway\fortran\intdeff.f"/>
<File RelativePath="..\..\sci_gateway\fortran\intlib.f"/>
<File RelativePath="..\..\sci_gateway\fortran\sci_comp.f"/></Filter>
<File RelativePath="..\..\..\..\bin\blasplus.lib"/>
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File
+ RelativePath="..\..\sci_gateway\fortran\intdeff.c"
+ >
+ </File>
+ <File
RelativePath="..\..\sci_gateway\fortran\intlib.c"
>
</File>
Name="Fortran files"
>
<File
+ RelativePath="..\..\sci_gateway\fortran\intdeff.f"
+ >
+ </File>
+ <File
RelativePath="..\..\sci_gateway\fortran\intlib.f"
>
</File>
GATEWAY_C_SOURCES = sci_gateway/c/sci_execstr.c \
sci_gateway/c/sci_read4b.c \
-sci_gateway/c/sci_deff.c \
sci_gateway/c/sci_getio.c \
sci_gateway/c/sci_readb.c \
sci_gateway/c/sci_host.c \
sci_gateway/fortran/intwritb.f \
sci_gateway/fortran/intwrite.f \
sci_gateway/fortran/intread4b.f \
-sci_gateway/fortran/intdeff.f \
sci_gateway/fortran/intread.f \
sci_gateway/fortran/intexecstr.f \
sci_gateway/fortran/intreadb.f \
int C2F(sci_read)(char *fname,unsigned long fname_len);
int C2F(sci_getf)(char *fname,unsigned long fname_len);
int C2F(sci_exec)(char *fname,unsigned long fname_len);
-
int C2F(sci_diary)(char *fname,unsigned long fname_len);
int C2F(sci_oldsave)(char *fname,unsigned long fname_len);
int C2F(sci_write)(char *fname,unsigned long fname_len);
-int C2F(sci_deff)(char *fname,unsigned long fname_len);
int C2F(sci_rat)(char *fname,unsigned long fname_len);
int C2F(sci_file)(char *fname,unsigned long fname_len);
int C2F(sci_host)(char *fname,unsigned long fname_len);
int C2F(intgetf)(void);
int C2F(intsave)(void);
int C2F(intdiary)(void);
-int C2F(intdeff)(void);
int C2F(intfile)(void);
int C2F(intmgetl)(void);
int C2F(intrat)(void);
int C2F(intwrite)(void);
int C2F(intwrite4b)(void);
int C2F(intwritb)(void);
-
int sci_export_to_hdf5(char *fname,unsigned long fname_len);
/*--------------------------------------------------------------------------*/
#endif /* __GW_IO_H__ */
{C2F(sci_mgetl),"mgetl"},
{C2F(sci_write),"write"},
{C2F(sci_rat),"rat"},
-{C2F(sci_deff),"deff"},
+{sci_export_to_hdf5,"export_to_hdf5"},
{C2F(sci_file),"file"},
{C2F(sci_host),"host"},
{C2F(sci_unix),"unix"},
{C2F(sci_read4b),"read4b"},
{C2F(sci_write4b),"write4b"},
{C2F(sci_save),"save"},
-{C2F(sci_load),"load"},
-{sci_export_to_hdf5,"export_to_hdf5"}
+{C2F(sci_load),"load"}
};
/*--------------------------------------------------------------------------*/
int gw_io(void)
<PRIMITIVE gatewayId="5" primitiveId="7" primitiveName="mgetl" />
<PRIMITIVE gatewayId="5" primitiveId="8" primitiveName="write" />
<PRIMITIVE gatewayId="5" primitiveId="9" primitiveName="rat" />
-<PRIMITIVE gatewayId="5" primitiveId="10" primitiveName="deff" />
+<PRIMITIVE gatewayId="5" primitiveId="10" primitiveName="export_to_hdf5" />
<PRIMITIVE gatewayId="5" primitiveId="11" primitiveName="file" />
<PRIMITIVE gatewayId="5" primitiveId="12" primitiveName="host" />
<PRIMITIVE gatewayId="5" primitiveId="13" primitiveName="unix" />
<PRIMITIVE gatewayId="5" primitiveId="20" primitiveName="write4b" />
<PRIMITIVE gatewayId="5" primitiveId="21" primitiveName="save" />
<PRIMITIVE gatewayId="5" primitiveId="22" primitiveName="load" />
-<PRIMITIVE gatewayId="5" primitiveId="23" primitiveName="export_to_hdf5" />
+
</GATEWAY>
\ No newline at end of file
>
</File>
<File
- RelativePath="..\..\sci_gateway\c\sci_deff.c"
- >
- </File>
- <File
RelativePath="..\..\sci_gateway\c\sci_diary.c"
>
</File>
intgetf_
intexecstr_
intexec_
-intdeff_
intfile_
intmgetl_
intrat_
<Filter Name="Header Files" Filter="fi;fd"/>
<Filter Name="Resource Files" Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"/>
<Filter Name="Source Files" Filter="f90;for;f;fpp;ftn;def;odl;idl">
- <File RelativePath="..\..\sci_gateway\fortran\intdeff.f"/>
<File RelativePath="..\..\sci_gateway\fortran\intexec.f"/>
<File RelativePath="..\..\sci_gateway\fortran\intexecstr.f"/>
<File RelativePath="..\..\sci_gateway\fortran\intfile.f"/>
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File
- RelativePath="..\..\sci_gateway\fortran\intdeff.c"
- >
- </File>
- <File
RelativePath="..\..\sci_gateway\fortran\intexec.c"
>
</File>
Name="Fortran files"
>
<File
- RelativePath="..\..\sci_gateway\fortran\intdeff.f"
- >
- </File>
- <File
RelativePath="..\..\sci_gateway\fortran\intexec.f"
>
</File>