summaryrefslogtreecommitdiff
path: root/js/Misc/ENDBLK.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/Misc/ENDBLK.js')
-rw-r--r--js/Misc/ENDBLK.js129
1 files changed, 65 insertions, 64 deletions
diff --git a/js/Misc/ENDBLK.js b/js/Misc/ENDBLK.js
index 3ee25214..ad60a07f 100644
--- a/js/Misc/ENDBLK.js
+++ b/js/Misc/ENDBLK.js
@@ -6,79 +6,80 @@ function ENDBLK() {
scs_m_1.objs[2-1] = scicos_link(xx=[[292.104],[292.104],[261.83733],[261.83733],[292.104],[292.104]],yy=[[243.40305],[234.45067],[234.45067],[305.584],[305.584],[294.83162]],id="drawlink",thick=[0,0],ct=[5,-1],from=[1,1,0],to=[1,1,1]);
model = scicos_model(sim="csuper",in1=[],in2=[],intyp=1,out=[],out2=[],outtyp=1,evtin=[],evtout=[],state=[],dstate=[],odstate=list(),rpar=scs_m_1,ipar=[],opar=list(),blocktype="h",firing=[],dep_ut=[false,false],label="",nzcross=0,nmode=0,equations=list());
gr_i = [];
- x = standard_define([2,2],model,[],gr_i);
+ this.x = standard_define([2,2],model,[],gr_i);
}
ENDBLK.prototype.details = function ENDBLK() {
+ return this.x;
}
ENDBLK.prototype.get = function ENDBLK() {
}
ENDBLK.prototype.set = function ENDBLK() {
-for (i=1;i<=length(arg1.model.rpar.objs);i+=1) {
- o = arg1.model.rpar.objs[i-1];
- if (typeof(o)=="Block"&&o.gui=="END_c") {
- ppath = list(i);
-break;
-}
-}
+ for (i=1;i<=length(arg1.model.rpar.objs);i+=1) {
+ o = arg1.model.rpar.objs[i-1];
+ if (typeof(o)=="Block"&&o.gui=="END_c") {
+ ppath = list(i);
+ break;
+ }
+ }
newpar = list();
y = 0;
for (path in ppath) {
- np = size(path,"*");
- spath = list();
-for (k=1;k<=np;k+=1) {
- spath[$+1-1] = "model";
- spath[$+1-1] = "rpar";
- spath[$+1-1] = "objs";
- spath[$+1-1] = path[k-1];
-}
- xx = arg1[spath-1];
-execstr("xxn="+xx.gui+"(\'set\',xx)");
- if (!this.isequalbitwise[this.xxn-1][xx-1]) {
- model = xx.model;
- model_n = this.xxn.model;
- if (!is_modelica_block(xx)) {
- modified = or(model.sim!=model_n.sim)||!isequal(model.state,model_n.state)||!isequal(model.dstate,model_n.dstate)||!isequal(model.odstate,model_n.odstate)||!isequal(model.rpar,model_n.rpar)||!isequal(model.ipar,model_n.ipar)||!isequal(model.opar,model_n.opar)||!isequal(model.label,model_n.label);
- if (or(model.in1!=model_n.in1)||or(model.out!=model_n.out)||or(model.in2!=model_n.in2)||or(model.out2!=model_n.out2)||or(model.outtyp!=model_n.outtyp)||or(model.intyp!=model_n.intyp)) {
- needcompile = 1;
-}
- if (or(model.firing!=model_n.firing)) {
- needcompile = 2;
-}
- if ((size(model.in1,"*")!=size(model_n.in1,"*"))||(size(model.out,"*")!=size(model_n.out,"*"))||(size(model.evtin,"*")!=size(model_n.evtin,"*"))) {
- needcompile = 4;
-}
- if (model.sim=="input"||model.sim=="output") {
- if (model.ipar!=model_n.ipar) {
- needcompile = 4;
-}
-}
- if (or(model.blocktype!=model_n.blocktype)||or(model.dep_ut!=model_n.dep_ut)) {
- needcompile = 4;
-}
- if ((model.nzcross!=model_n.nzcross)||(model.nmode!=model_n.nmode)) {
- needcompile = 4;
-}
- if (prod(size(model_n.sim))>1) {
- if (model_n.sim[2-1]>1000) {
- if (model.sim[1-1]!=model_n.sim[1-1]) {
- needcompile = 4;
-}
-}
-}
- } else {
- modified = or(model_n!=model);
- eq = model.equations;
- eqn = model_n.equations;
- if (or(eq.model!=eqn.model)||or(eq.inputs!=eqn.inputs)||or(eq.outputs!=eqn.outputs)) {
- needcompile = 4;
-}
-}
- arg1[spath-1] = this.xxn;
- newpar[size(newpar)+1-1] = path;
- y = max(y,needcompile);
-}
-}
- x = arg1;
+ np = size(path,"*");
+ spath = list();
+ for (k=1;k<=np;k+=1) {
+ spath[$+1-1] = "model";
+ spath[$+1-1] = "rpar";
+ spath[$+1-1] = "objs";
+ spath[$+1-1] = path[k-1];
+ }
+ xx = arg1[spath-1];
+ execstr("xxn="+xx.gui+"(\'set\',xx)");
+ if (!this.isequalbitwise[this.xxn-1][xx-1]) {
+ model = xx.model;
+ model_n = this.xxn.model;
+ if (!is_modelica_block(xx)) {
+ modified = or(model.sim!=model_n.sim)||!isequal(model.state,model_n.state)||!isequal(model.dstate,model_n.dstate)||!isequal(model.odstate,model_n.odstate)||!isequal(model.rpar,model_n.rpar)||!isequal(model.ipar,model_n.ipar)||!isequal(model.opar,model_n.opar)||!isequal(model.label,model_n.label);
+ if (or(model.in1!=model_n.in1)||or(model.out!=model_n.out)||or(model.in2!=model_n.in2)||or(model.out2!=model_n.out2)||or(model.outtyp!=model_n.outtyp)||or(model.intyp!=model_n.intyp)) {
+ needcompile = 1;
+ }
+ if (or(model.firing!=model_n.firing)) {
+ needcompile = 2;
+ }
+ if ((size(model.in1,"*")!=size(model_n.in1,"*"))||(size(model.out,"*")!=size(model_n.out,"*"))||(size(model.evtin,"*")!=size(model_n.evtin,"*"))) {
+ needcompile = 4;
+ }
+ if (model.sim=="input"||model.sim=="output") {
+ if (model.ipar!=model_n.ipar) {
+ needcompile = 4;
+ }
+ }
+ if (or(model.blocktype!=model_n.blocktype)||or(model.dep_ut!=model_n.dep_ut)) {
+ needcompile = 4;
+ }
+ if ((model.nzcross!=model_n.nzcross)||(model.nmode!=model_n.nmode)) {
+ needcompile = 4;
+ }
+ if (prod(size(model_n.sim))>1) {
+ if (model_n.sim[2-1]>1000) {
+ if (model.sim[1-1]!=model_n.sim[1-1]) {
+ needcompile = 4;
+ }
+ }
+ }
+ } else {
+ modified = or(model_n!=model);
+ eq = model.equations;
+ eqn = model_n.equations;
+ if (or(eq.model!=eqn.model)||or(eq.inputs!=eqn.inputs)||or(eq.outputs!=eqn.outputs)) {
+ needcompile = 4;
+ }
+ }
+ arg1[spath-1] = this.xxn;
+ newpar[size(newpar)+1-1] = path;
+ y = max(y,needcompile);
+ }
+ }
+ this.x = arg1;
typ = newpar;
}
}