summaryrefslogtreecommitdiff
path: root/js/IntegerOp/LOGIC.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/IntegerOp/LOGIC.js')
-rw-r--r--js/IntegerOp/LOGIC.js71
1 files changed, 36 insertions, 35 deletions
diff --git a/js/IntegerOp/LOGIC.js b/js/IntegerOp/LOGIC.js
index ae5dff86..d4ebdf7c 100644
--- a/js/IntegerOp/LOGIC.js
+++ b/js/IntegerOp/LOGIC.js
@@ -17,50 +17,51 @@ function LOGIC() {
model.dep_ut = [true,false];
exprs = [[sci2exp(mat)],[sci2exp(0)]];
gr_i = [];
- x = standard_define([2,2],model,exprs,gr_i);
+ this.x = standard_define([2,2],model,exprs,gr_i);
}
LOGIC.prototype.details = function LOGIC() {
+ return this.x;
}
LOGIC.prototype.get = function LOGIC() {
}
LOGIC.prototype.set = function LOGIC() {
- x = arg1;
+ this.x = arg1;
graphics = arg1.graphics;
exprs = graphics.exprs;
model = arg1.model;
while (true) {
- [ok,mat,herit,exprs] = scicos_getvalue([[msprintf(gettext("Set %s block parameters"),"LOGIC")],[" "],[gettext("Combinatorial logic")],[" "],[gettext("  Rows of the matrix are the output values")],[gettext("  Number of rows must be a power of two.")],[gettext("  Number of columns gives the number of outputs.")],[" "]],[[gettext("Truth Table (matrix of outputs)")],[gettext("Accepts Inherited Events (0:No, 1:Yes)")]],list("mat",[-1,-2],"vec",1),exprs);
- if (!ok) {
-break;
-}
- nout = size(mat,2);
- nin = (log(size(mat,1))/log(2));
- u1 = floor(nin);
- if ((u1!=nin)) {
-block_parameter_error(msprintf(gettext("Wrong size for \'%s\' parameter: %d."),gettext("Truth Table"),size(mat,1)),gettext("Number of rows must be a power of two."));
- ok = false;
- } else if ((find(mat.slice()!=0&&mat.slice()!=1)!=[])) {
-block_parameter_error(msprintf(gettext("Wrong value for \'%s\' parameter."),gettext("Truth Table")),msprintf(gettext("Elements must be in the interval %s."),"[0, 1]"));
- ok = false;
- } else if (herit<0||herit>1) {
-block_parameter_error(msprintf(gettext("Wrong value for \'%s\' parameter: %d."),gettext("Accepts Inherited Events"),herit),msprintf(gettext("Must be in the interval %s."),"[0, 1]"));
- ok = false;
-}
- if (ok) {
- in1 = [ones(nin,1),ones(nin,1)];
- out = [ones(nout,1),ones(nout,1)];
- it = 5*ones(1,nin);
- ot = 5*ones(1,nout);
- [model,graphics,ok] = set_io(model,graphics,list(in1,it),list(out,ot),ones(1-herit,1),[]);
-}
- if (ok) {
- graphics.exprs = exprs;
- mat = int8(mat);
- model.opar = list(mat);
- x.graphics = graphics;
- x.model = model;
-break;
-}
-}
+ [ok,mat,herit,exprs] = scicos_getvalue([[msprintf(gettext("Set %s block parameters"),"LOGIC")],[" "],[gettext("Combinatorial logic")],[" "],[gettext("&nbsp; Rows of the matrix are the output values")],[gettext("&nbsp; Number of rows must be a power of two.")],[gettext("&nbsp; Number of columns gives the number of outputs.")],[" "]],[[gettext("Truth Table (matrix of outputs)")],[gettext("Accepts Inherited Events (0:No, 1:Yes)")]],list("mat",[-1,-2],"vec",1),exprs);
+ if (!ok) {
+ break;
+ }
+ nout = size(mat,2);
+ nin = (log(size(mat,1))/log(2));
+ u1 = floor(nin);
+ if ((u1!=nin)) {
+ block_parameter_error(msprintf(gettext("Wrong size for \'%s\' parameter: %d."),gettext("Truth Table"),size(mat,1)),gettext("Number of rows must be a power of two."));
+ ok = false;
+ } else if ((find(mat.slice()!=0&&mat.slice()!=1)!=[])) {
+ block_parameter_error(msprintf(gettext("Wrong value for \'%s\' parameter."),gettext("Truth Table")),msprintf(gettext("Elements must be in the interval %s."),"[0, 1]"));
+ ok = false;
+ } else if (herit<0||herit>1) {
+ block_parameter_error(msprintf(gettext("Wrong value for \'%s\' parameter: %d."),gettext("Accepts Inherited Events"),herit),msprintf(gettext("Must be in the interval %s."),"[0, 1]"));
+ ok = false;
+ }
+ if (ok) {
+ in1 = [ones(nin,1),ones(nin,1)];
+ out = [ones(nout,1),ones(nout,1)];
+ it = 5*ones(1,nin);
+ ot = 5*ones(1,nout);
+ [model,graphics,ok] = set_io(model,graphics,list(in1,it),list(out,ot),ones(1-herit,1),[]);
+ }
+ if (ok) {
+ graphics.exprs = exprs;
+ mat = int8(mat);
+ model.opar = list(mat);
+ this.x.graphics = graphics;
+ this.x.model = model;
+ break;
+ }
+ }
}
}