|
|
@ -169,10 +169,11 @@ public class Prism implements PrismSettingsListener |
|
|
// State |
|
|
// State |
|
|
//------------------------------------------------------------------------------ |
|
|
//------------------------------------------------------------------------------ |
|
|
|
|
|
|
|
|
|
|
|
// Has the CUDD library been initialised yet? |
|
|
private boolean cuddStarted = false; |
|
|
private boolean cuddStarted = false; |
|
|
|
|
|
|
|
|
//------------------------------------------------------------------------------ |
|
|
//------------------------------------------------------------------------------ |
|
|
// Methods |
|
|
|
|
|
|
|
|
// Constructors + options methods |
|
|
//------------------------------------------------------------------------------ |
|
|
//------------------------------------------------------------------------------ |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
@ -425,6 +426,11 @@ public class Prism implements PrismSettingsListener |
|
|
bsccComp = b; |
|
|
bsccComp = b; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public void setCheckZeroLoops(boolean checkZeroLoops) |
|
|
|
|
|
{ |
|
|
|
|
|
this.checkZeroLoops = checkZeroLoops; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
public void setConstruction(int i) throws PrismException |
|
|
public void setConstruction(int i) throws PrismException |
|
|
{ |
|
|
{ |
|
|
construction = i; |
|
|
construction = i; |
|
|
@ -451,6 +457,11 @@ public class Prism implements PrismSettingsListener |
|
|
public PrismLog getTechLog() |
|
|
public PrismLog getTechLog() |
|
|
{ return techLog; } |
|
|
{ return techLog; } |
|
|
|
|
|
|
|
|
|
|
|
public PrismSettings getSettings() |
|
|
|
|
|
{ |
|
|
|
|
|
return settings; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
// Get methods for main prism settings |
|
|
// Get methods for main prism settings |
|
|
// (as above, provided for convenience and for compatibility with old code) |
|
|
// (as above, provided for convenience and for compatibility with old code) |
|
|
|
|
|
|
|
|
@ -558,6 +569,9 @@ public class Prism implements PrismSettingsListener |
|
|
public boolean getBSCCComp() |
|
|
public boolean getBSCCComp() |
|
|
{ return bsccComp; } |
|
|
{ return bsccComp; } |
|
|
|
|
|
|
|
|
|
|
|
public boolean getCheckZeroLoops() |
|
|
|
|
|
{ return this.checkZeroLoops; } |
|
|
|
|
|
|
|
|
public int getConstruction() |
|
|
public int getConstruction() |
|
|
{ return construction; } |
|
|
{ return construction; } |
|
|
|
|
|
|
|
|
@ -572,6 +586,22 @@ public class Prism implements PrismSettingsListener |
|
|
public static String getEngineString(int engine) |
|
|
public static String getEngineString(int engine) |
|
|
{ return engineStrings[engine]; } |
|
|
{ return engineStrings[engine]; } |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* Let PrismSettings object notify us things have changed |
|
|
|
|
|
*/ |
|
|
|
|
|
public void notifySettings(PrismSettings settings) |
|
|
|
|
|
{ |
|
|
|
|
|
if (cuddStarted) |
|
|
|
|
|
{ |
|
|
|
|
|
JDD.SetCUDDEpsilon(settings.getDouble(PrismSettings.PRISM_CUDD_EPSILON)); |
|
|
|
|
|
JDD.SetCUDDMaxMem(settings.getInteger(PrismSettings.PRISM_CUDD_MAX_MEM)); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//------------------------------------------------------------------------------ |
|
|
|
|
|
// Access to parser, simulator, etc. |
|
|
|
|
|
//------------------------------------------------------------------------------ |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* Get (exclusive) access to the PRISM parser. |
|
|
* Get (exclusive) access to the PRISM parser. |
|
|
*/ |
|
|
*/ |
|
|
@ -650,17 +680,9 @@ public class Prism implements PrismSettingsListener |
|
|
return sccComputer; |
|
|
return sccComputer; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* Let PrismSettings object notify us things have changed |
|
|
|
|
|
*/ |
|
|
|
|
|
public void notifySettings(PrismSettings settings) |
|
|
|
|
|
{ |
|
|
|
|
|
if (cuddStarted) |
|
|
|
|
|
{ |
|
|
|
|
|
JDD.SetCUDDEpsilon(settings.getDouble(PrismSettings.PRISM_CUDD_EPSILON)); |
|
|
|
|
|
JDD.SetCUDDMaxMem(settings.getInteger(PrismSettings.PRISM_CUDD_MAX_MEM)); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
//------------------------------------------------------------------------------ |
|
|
|
|
|
// Utility methods |
|
|
|
|
|
//------------------------------------------------------------------------------ |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* Compare two version numbers of PRISM (strings). |
|
|
* Compare two version numbers of PRISM (strings). |
|
|
@ -791,6 +813,10 @@ public class Prism implements PrismSettingsListener |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//------------------------------------------------------------------------------ |
|
|
|
|
|
// Main "API" methods |
|
|
|
|
|
//------------------------------------------------------------------------------ |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* Initialise PRISM. |
|
|
* Initialise PRISM. |
|
|
*/ |
|
|
*/ |
|
|
@ -1900,23 +1926,6 @@ public class Prism implements PrismSettingsListener |
|
|
DebugJDD.endLifeCycle(); |
|
|
DebugJDD.endLifeCycle(); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// Access method for the settings |
|
|
|
|
|
|
|
|
|
|
|
public PrismSettings getSettings() |
|
|
|
|
|
{ |
|
|
|
|
|
return settings; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public void setCheckZeroLoops(boolean checkZeroLoops) |
|
|
|
|
|
{ |
|
|
|
|
|
this.checkZeroLoops = checkZeroLoops; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public boolean getCheckZeroLoops() |
|
|
|
|
|
{ |
|
|
|
|
|
return this.checkZeroLoops; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
//------------------------------------------------------------------------------ |
|
|
//------------------------------------------------------------------------------ |