utility for ilib_build, generates a gateway file.
ilib_gen_gateway(name,table)
:
Utility function used by ilib_build This function generates a gateway file used by addinter.
if WITHOUT_AUTO_PUTLHSVAR variable is defined and equals to %t, PutLhsVar(); will need to manage PutLhsVar in each interface as internal scilab functions.
In another case (default, for compatibility with previous version) , PutLhsVar(); is added in each interface.
You can also see SCI/contrib/toolbox_skeleton/sci_gateway/c/builder_gateway_c.sce (as example about WITHOUT_AUTO_PUTLHSVAR)
`cd`_ TMPDIR
WITHOUT_AUTO_PUTLHSVAR = %t;
name = 'gw_example1';
table = ['sci_func1', 'func1']
ilib_gen_gateway(name,table)
// generated gateway
`mgetl`_(TMPDIR+'/gw_example1.c')
`int`_ sci_func1(char *fname)
{
// ... your C code
// you need to add a explicit PutLhsVar();
// as internal all gateways of scilab
PutLhsVar();
return 0;
}
`cd`_ TMPDIR
WITHOUT_AUTO_PUTLHSVAR = %f;
name = 'gw_example2';
table = ['sci_func2', 'func2']
ilib_gen_gateway(name,table)
// generated gateway
`mgetl`_(TMPDIR+'/gw_example2.c')
`int`_ sci_func2(char *fname)
{
// ... your code
// you do NOT need to add a explicit PutLhsVar();
// added by scilab after call to sci_func2
// default mode in scilab 4
return 0;
}