Browse Source

refactor prism.StateValues: split constructor to provide seperate (private) method for setting the model

git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12055 bbc10eb1-c90d-0410-af57-cb519fbb1720
master
Joachim Klein 9 years ago
parent
commit
c930c151c5
  1. 32
      prism/src/prism/StateValuesDV.java
  2. 12
      prism/src/prism/StateValuesMTBDD.java

32
prism/src/prism/StateValuesDV.java

@ -84,24 +84,11 @@ public class StateValuesDV implements StateValues
*/
public StateValuesDV(DoubleVector values, Model model)
{
int i;
// store values vector
this.values = values;
// get info from model
this.model = model;
vars = model.getAllDDRowVars();
numVars = vars.n();
odd = model.getODD();
varList = model.getVarList();
// initialise arrays
varSizes = new int[varList.getNumVars()];
for (i = 0; i < varList.getNumVars(); i++) {
varSizes[i] = varList.getRangeLogTwo(i);
}
varValues = new int[varList.getNumVars()];
setModel(model);
}
/**
@ -119,6 +106,23 @@ public class StateValuesDV implements StateValues
this(new DoubleVector(dd, model.getAllDDRowVars(), model.getODD()), model);
}
/** Helper method: Store information about the underlying model */
private void setModel(Model model)
{
this.model = model;
vars = model.getAllDDRowVars();
numVars = vars.n();
odd = model.getODD();
varList = model.getVarList();
// initialise arrays
varSizes = new int[varList.getNumVars()];
for (int i = 0; i < varList.getNumVars(); i++) {
varSizes[i] = varList.getRangeLogTwo(i);
}
varValues = new int[varList.getNumVars()];
}
// CONVERSION METHODS
@Override

12
prism/src/prism/StateValuesMTBDD.java

@ -79,12 +79,16 @@ public class StateValuesMTBDD implements StateValues
*/
public StateValuesMTBDD(JDDNode values, Model model)
{
int i;
// store values vector mtbdd
this.values = values;
// get info from model
setModel(model);
}
/** Helper method: Store information about the underlying model */
private void setModel(Model model)
{
this.model = model;
vars = model.getAllDDRowVars();
reach = model.getReach();
@ -95,7 +99,7 @@ public class StateValuesMTBDD implements StateValues
// initialise arrays
varSizes = new int[varList.getNumVars()];
for (i = 0; i < varList.getNumVars(); i++) {
for (int i = 0; i < varList.getNumVars(); i++) {
varSizes[i] = varList.getRangeLogTwo(i);
}
varValues = new int[varList.getNumVars()];

Loading…
Cancel
Save