Massive indent of all codes:
[scilab.git] / scilab / modules / scicos / macros / scicos_scicos / genmac.sci
1 //  Scicos
2 //
3 //  Copyright (C) INRIA - METALAU Project <scicos@inria.fr>
4 //
5 // This program is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation; either version 2 of the License, or
8 // (at your option) any later version.
9 //
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 // GNU General Public License for more details.
14 //
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software
17 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18 //
19 // See the file ../license.txt
20 //
21
22 function mac=genmac(tt,nin,nout)
23     [txt1,txt0,txt2,txt3,txt4,txt5,txt6]=tt(1:7)
24     mac=null()
25     //    [y,  x,  z,  tvec,xd]=func(flag,nevprt,t,x,z,rpar,ipar,u)
26     blank="  "
27     // if txt2_1<>' ' then
28     //  txt2=[txt2;
29     //      'if n_evi<>0 then'
30     //         blank(ones(txt2_1))+txt2_1
31     //      'end']
32     //end
33     semi=";"
34
35
36     txt1=blank(ones(txt1))+txt1+semi(ones(txt1))
37     txt2=blank(ones(txt2))+txt2+semi(ones(txt2))
38     txt3=blank(ones(txt3))+txt3+semi(ones(txt3))
39     txt4=blank(ones(txt4))+txt4+semi(ones(txt4))
40     txt5=blank(ones(txt5))+txt5+semi(ones(txt5))
41     txt6=blank(ones(txt6))+txt6+semi(ones(txt6))
42
43     u="u"
44     if nin>0 then
45         get_u=blank+"["+strcat(u(ones(1,nin))+string(1:nin),",")+"]=u(:)"
46     else
47         get_u=[]
48     end
49     y="y"
50     set_y=blank+"y=list("+strcat(y(ones(1,nout))+string(1:nout),",")+")"
51     mac_txt=[
52     get_u
53     "select %_flag";
54     "case 0 then";
55     txt0
56     "  t_evo=[]";
57     "  y=list()";
58     "case 1 then";
59     txt1
60     "  t_evo=[]";
61     "  xd=[]";
62     set_y;
63     "case 2 then";
64     txt2
65     "  y=list()";
66     "  t_evo=[]";
67     "  xd=[]";
68     "case 3 then";
69     txt3
70     "  xd=[]";
71     "  y=list()";
72     "case 4 then";
73     txt4
74     "  y=list()";
75     "  t_evo=[]";
76     "  xd=[]";
77     "case 5 then";
78     txt5
79     "  y=list()";
80     "  t_evo=[]";
81     "  xd=[]";
82     "case 6 then";
83     txt6
84     "  t_evo=[]";
85     "  xd=[]";
86     set_y
87     "end";]
88
89     deff("[y,x,z,t_evo,xd]=mac(%_flag,n_evi,t,x,z,rpar,ipar,u)",mac_txt)
90 endfunction