a5ff2507b554df11e15dea6663a62cb866782c11
[scilab.git] / scilab / modules / xcos / macros / xcosCodeGeneration.sci
1 //
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2009-2009 - DIGITEO - Bruno JOFRET
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-en.txt
10 //
11 //
12
13 function xcosCodeGeneration(hdf5FileToLoad, hdf5FileToSave)
14   
15 //-- BJ : Alias Warning Function
16   prot = funcprot();
17   funcprot(0);
18   hilite_obj = xcosShowBlockWarning;
19   unhilite_obj = xcosClearBlockWarning;
20   funcprot(prot);
21   //-- end
22   
23   // This will create a scs_m variable.
24   status = import_from_hdf5(hdf5FileToLoad);
25   if ~status then
26     error(msprintf(gettext("%s: Unable to import data from %s"), "xcosCodeGeneration", hdf5FileToLoad));
27   end
28   
29   ierr = execstr("[ok] = do_compile_superblock42(scs_m, [], [], %f); ", 'errcatch');
30   if ierr <> 0 then
31           [msg, err] = lasterror();
32           disp(msg);
33           deletefile(hdf5FileToSave);
34           return;
35   end
36   
37   if ok then
38     status = export_to_hdf5(hdf5FileToSave, "XX");
39     if ~status then
40       error(msprintf(gettext("%s: Unable to export ''XX'' to %s"), "xcosCodeGeneration", hdf5FileToSave));
41     end
42   else
43     deletefile(hdf5FileToSave);
44   end
45 endfunction
46