|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sf.javabdd.BDD.BDDIterator
BDDIterator is used to iterate through the satisfying assignments of a BDD. It includes the ability to check if bits are dont-cares and skip them.
Field Summary | |
protected BDDFactory |
factory
|
protected int[] |
levels
|
protected boolean |
more
|
protected BDD[] |
nodes
|
protected boolean[] |
values
|
Constructor Summary | |
BDD.BDDIterator(BDD dis,
BDD var)
Construct a new BDDIterator on the given BDD. |
Method Summary | |
protected BDD |
buildAndIncrement()
|
void |
fastForward(int var)
Fast-forward the iteration such that the given variable number is true. |
protected void |
fastForward0(int var)
|
protected void |
fillInSatisfyingAssignment(BDD node,
int i)
|
protected boolean |
findNextSatisfyingAssignment()
|
protected void |
free()
|
boolean |
hasNext()
|
protected void |
increment()
|
boolean |
isDontCare(BDDDomain d)
Returns true if the BDD variables in the given BDD domain are all dont-care's. |
boolean |
isDontCare(int var)
Returns true if the given BDD variable number is a dont-care. |
Object |
next()
|
void |
remove()
|
void |
skipDontCare(BDDDomain d)
Assuming d is a dont-care, skip to the end of the iteration for d |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected BDDFactory factory
protected int[] levels
protected boolean[] values
protected BDD[] nodes
protected boolean more
Constructor Detail |
public BDD.BDDIterator(BDD dis, BDD var)
Construct a new BDDIterator on the given BDD. The var argument is the set of variables that will be mentioned in the result.
dis
- BDD to iterate overvar
- variable set to mention in resultMethod Detail |
protected void fillInSatisfyingAssignment(BDD node, int i)
protected boolean findNextSatisfyingAssignment()
protected void increment()
protected BDD buildAndIncrement()
protected void free()
public Object next()
next
in interface Iterator
public boolean hasNext()
hasNext
in interface Iterator
public void remove()
remove
in interface Iterator
public boolean isDontCare(int var)
Returns true if the given BDD variable number is a dont-care. var must be a variable in the iteration set.
var
- variable number to check
BDDException
- if var is not in the iteration setpublic boolean isDontCare(BDDDomain d)
Returns true if the BDD variables in the given BDD domain are all dont-care's.
d
- domain to check
BDDException
- if d is not in the iteration setprotected void fastForward0(int var)
public void fastForward(int var)
var
- number of variablepublic void skipDontCare(BDDDomain d)
d
- BDD domain to fast-forward past
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |