summaryrefslogtreecommitdiff
path: root/data_structures_correct
diff options
context:
space:
mode:
authorASP12342016-07-13 13:26:53 +0000
committerASP12342016-07-13 13:26:53 +0000
commit0d1fe1352b7a91629d6ea64aedee2da7e05d248f (patch)
tree093de76f57af18c2605da77b3d728eb1a2537259 /data_structures_correct
parent9303f4bd2d5c1bb1b8303ab2b5b5731b5e4c8037 (diff)
downloadxcos-on-web-0d1fe1352b7a91629d6ea64aedee2da7e05d248f.tar.gz
xcos-on-web-0d1fe1352b7a91629d6ea64aedee2da7e05d248f.tar.bz2
xcos-on-web-0d1fe1352b7a91629d6ea64aedee2da7e05d248f.zip
Implement SELF_SWITCH Block
Diffstat (limited to 'data_structures_correct')
-rw-r--r--data_structures_correct/CONST_m.js19
-rw-r--r--data_structures_correct/SELF_SWITCH.js30
-rw-r--r--data_structures_correct/SWITCH_f.js21
3 files changed, 70 insertions, 0 deletions
diff --git a/data_structures_correct/CONST_m.js b/data_structures_correct/CONST_m.js
index 3031351..0d6a567 100644
--- a/data_structures_correct/CONST_m.js
+++ b/data_structures_correct/CONST_m.js
@@ -15,6 +15,25 @@ function CONST_m() {
this.x.graphics.exprs = new ScilabString([sci2exp(this.c)]);
return new BasicBlock(this.x);
}
+ CONST_m.prototype.internal = function CONST_m() {
+ this.c = [1];
+ var model = new scicos_model();
+ model.sim = list(new ScilabString(["cstblk4"]), new ScilabDouble([4]));
+ model.in = new ScilabDouble();
+ model.out = new ScilabDouble([this.c.length]);
+ model.in2 = new ScilabDouble();
+ model.out2 = new ScilabDouble([this.c.length]);
+ model.rpar = new ScilabDouble(this.c);
+ model.opar = list();
+ model.blocktype = new ScilabString(["d"]);
+ model.dep_ut = new ScilabBoolean([false, false]);
+
+ var gr_i = new ScilabString(["xstringb(orig(1),orig(2),\"CONST_m\",sz(1),sz(2));"]);
+ var exprs = new ScilabString([sci2exp(this.c)]);
+ var block = new standard_define(new ScilabDouble([80, 80]), model, exprs, gr_i); // 1 -> 80
+ block.graphics.style = new ScilabString(["CONST_m"]);
+ return block;
+ }
CONST_m.prototype.define = function CONST_m() {
this.c = [1];
var model = new scicos_model();
diff --git a/data_structures_correct/SELF_SWITCH.js b/data_structures_correct/SELF_SWITCH.js
new file mode 100644
index 0000000..286d822
--- /dev/null
+++ b/data_structures_correct/SELF_SWITCH.js
@@ -0,0 +1,30 @@
+function SELF_SWITCH() {
+
+ SELF_SWITCH.prototype.define = function SELF_SWITCH() {
+ this.stateOpen = true;
+
+ this.x = scicos_block();
+ this.x.gui = new ScilabString(["SELF_SWITCH"]);
+ this.x.graphics.sz = new ScilabDouble([2, 2]);
+ this.x.graphics.gr_i = new ScilabDouble();
+ this.x.graphics.pin = new ScilabDouble([0]);
+ this.x.graphics.pout = new ScilabDouble([0]);
+ this.x.model.sim = new ScilabString(["csuper"]);
+ this.x.model.in = new ScilabDouble([1]);
+ this.x.model.out = new ScilabDouble([1]);
+ this.x.model.blocktype = new ScilabString(["h"]);
+ this.x.model.dep_ut = new ScilabBoolean([false, false]);
+ this.x.model.rpar = genSwitchInnerDiagram(this.stateOpen);
+ this.x.model.opar = list(new ScilabBoolean([this.stateOpen]));
+ this.x.graphics.in_implicit = new ScilabString(["E"]);
+ this.x.graphics.in_style = new ScilabString([""]);
+ this.x.graphics.out_implicit = new ScilabString(["E"]);
+ this.x.graphics.out_style = new ScilabString([""]);
+ this.x.graphics.style = new ScilabString(["SELF_SWITCH;SELF_SWITCH_OFF"]);
+ return new BasicBlock(this.x);
+ }
+
+ SELF_SWITCH.prototype.details = function SELF_SWITCH() {
+ return this.x;
+ }
+}
diff --git a/data_structures_correct/SWITCH_f.js b/data_structures_correct/SWITCH_f.js
index ec4e1d7..c9cefb1 100644
--- a/data_structures_correct/SWITCH_f.js
+++ b/data_structures_correct/SWITCH_f.js
@@ -20,6 +20,27 @@ function SWITCH_f() {
this.x = new standard_define(new ScilabDouble([2, 2]), model, exprs, gr_i);
return new BasicBlock(this.x);
}
+
+ SWITCH_f.prototype.internal = function SWITCH_f() {
+ this.i0 = 0;
+ this.in1 = [[-1],[-1]];
+ this.nin = 2;
+
+ var model = scicos_model();
+ model.sim=list(new ScilabString(["switchn"]),new ScilabDouble([2]));
+ model.in=new ScilabDouble(...this.in1);
+ model.out = new ScilabDouble([-1]);
+ model.ipar=new ScilabDouble([this.i0]);
+ model.blocktype = new ScilabString(["c"]);
+ model.firing = new ScilabDouble();
+ model.dep_ut = new ScilabBoolean([true,true]);
+
+ var exprs = new ScilabString([this.nin],[this.i0+1]);
+
+ var gr_i = new ScilabString(["xstringb(orig(1),orig(2),\"SWITCH_f\",sz(1),sz(2));"]);
+ var block=new standard_define(new ScilabDouble([2,2]),model,exprs,gr_i);
+ return block;
+ }
SWITCH_f.prototype.details = function SWITCH_f() {
return this.x;