summaryrefslogtreecommitdiff
path: root/js/Sources/CLOCK_c.js
blob: 95bf965050cab68b23b8b9965c6acb4236a82bdf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
/* autogenerated from "macros/Sources/CLOCK_c.sci" */
function CLOCK_c() {
CLOCK_c.prototype.define = function CLOCK_c() {
evtdly=EVTDLY_c("define");
evtdly.graphics.orig=[320,232];
evtdly.graphics.sz=[40,40];
evtdly.graphics.flip=true;
evtdly.graphics.exprs=[["0.1"],["0.1"]];
evtdly.graphics.pein=6;
evtdly.graphics.peout=3;
evtdly.model.rpar=[[0.1],[0.1]];
evtdly.model.firing=0.1;
output_port=CLKOUT_f("define");
output_port.graphics.orig=[399,162];
output_port.graphics.sz=[20,20];
output_port.graphics.flip=true;
output_port.graphics.exprs="1";
output_port.graphics.pein=5;
output_port.model.ipar=1;
split=CLKSPLIT_f("define");
split.graphics.orig=[[380.71066],[172]];
split.graphics.pein=3;
split.graphics.peout=[[5],[6]];
gr_i=[];
diagram=scicos_diagram();
diagram.objs[1-1]=output_port;
diagram.objs[2-1]=evtdly;
diagram.objs[3-1]=scicos_link(xx=[[340],[340],[380.71]],yy=[[226.29],[172],[172]],ct=[5,-1],from=[2,1],to=[4,1]);
diagram.objs[4-1]=split;
diagram.objs[5-1]=scicos_link(xx=[[380.71],[399]],yy=[[172],[172]],ct=[5,-1],from=[4,1],to=[1,1]);
diagram.objs[6-1]=scicos_link(xx=[[380.71],[380.71],[340],[340]],yy=[[172],[302],[302],[277.71]],ct=[5,-1],from=[4,2],to=[2,1]);
x=scicos_block();
x.gui="CLOCK_c";
x.graphics.sz=[2,2];
x.graphics.gr_i=gr_i;
x.graphics.peout=0;
x.model.sim="csuper";
x.model.evtout=1;
x.model.blocktype="h";
x.model.firing=false;
x.model.dep_ut=[false,false];
x.model.rpar=diagram;
}
CLOCK_c.prototype.details = function CLOCK_c() {
}
CLOCK_c.prototype.get = function CLOCK_c() {
}
CLOCK_c.prototype.set = function CLOCK_c() {
for (i=1;i<=length(arg1.model.rpar.objs);i+=1) {
o=arg1.model.rpar.objs(i);
if (typeof(o)=="Block"&&o.gui=="EVTDLY_c") {
path=i;
break;
}
}
newpar=list();
xx=arg1.model.rpar.objs(path);
exprs=xx.graphics.exprs;
model=xx.model;
t0_old=model.firing;
dt_old=model.rpar(1);
model_n=model;
while (true) {
[ok,dt,t0,exprs0]=scicos_getvalue([[msprintf(gettext("Set %s block parameters"),"CLOCK_c")],[" "],[gettext("Event clock generator")],[" "],[gettext("&nbsp; Do not start if \'Initialisation Time\' is negative")],[" "]],[[gettext("Period")],[gettext("Initialisation Time")]],list("vec",1,"vec",1),exprs);
if (!ok) {
break;
}
if (dt<=0) {
block_parameter_error(msprintf(gettext("Wrong values for \'%s\' parameter: %5.1e."),gettext("Period"),dt),gettext("Strictly positive number expected."));
ok=false;
}
if (ok) {
xx.graphics.exprs=exprs0;
model.rpar=[[dt],[t0]];
model.firing=t0;
xx.model=model;
arg1.model.rpar.objs[path-1]=xx;
break;
}
}
if (!and([t0_old,dt_old]==[t0,dt])) {
newpar[size(newpar)+1-1]=path;
}
if (t0_old!=t0) {
needcompile=2;
} else {
needcompile=0;
}
x=arg1;
y=needcompile;
typ=newpar;
}
}