public abstract class AbstractNAryTreeDelegate<T extends nl.tue.astar.Tail> extends java.lang.Object implements TreeDelegate<NAryTreeHead,T>
Modifier and Type | Field and Description |
---|---|
protected AStarAlgorithm |
algorithm |
protected short |
classes |
protected int |
configurationNumber |
protected NAryTreeHeadCompressor<T> |
headCompressor |
protected StateBuilder |
localStateBuilder |
protected int[] |
node2cost |
protected int |
scaling |
protected int |
threads |
protected NAryTree |
tree |
Constructor and Description |
---|
AbstractNAryTreeDelegate(AStarAlgorithm algorithm,
NAryTree tree,
int configurationNumber,
int[] node2cost,
int threads) |
Modifier and Type | Method and Description |
---|---|
abstract TreeRecord |
createInitialRecord(NAryTreeHead head,
nl.tue.astar.Trace trace)
instantiates a record for the given head.
|
gnu.trove.iterator.TIntIterator |
enabledIterator(byte[] state,
boolean skipLeafsUnderORIfOREnabled) |
gnu.trove.iterator.TIntIterator |
enabledIterator(byte[] state,
short activity) |
gnu.trove.set.TShortSet |
getActivitiesFor(int node) |
AStarAlgorithm |
getAStarAlgorithm() |
org.deckfour.xes.classification.XEventClass |
getClassOf(org.deckfour.xes.model.XEvent e) |
int |
getCostFor(int node,
int activity) |
org.deckfour.xes.classification.XEventClass |
getEventClass(short act) |
nl.tue.storage.EqualOperation<nl.tue.astar.impl.State<NAryTreeHead,T>> |
getHeadBasedEqualOperation() |
nl.tue.storage.HashOperation<nl.tue.astar.impl.State<NAryTreeHead,T>> |
getHeadBasedHashOperation() |
nl.tue.storage.Deflater<NAryTreeHead> |
getHeadDeflater() |
nl.tue.storage.Inflater<NAryTreeHead> |
getHeadInflater() |
short |
getIndexOf(org.deckfour.xes.classification.XEventClass c) |
int |
getLogMoveCost(int i) |
int |
getModelMoveCost(int node) |
int |
getScaling() |
int |
getState(byte[] state,
int node) |
StateBuilder |
getStateBuilder() |
int |
getStateSizeInBytes() |
NAryTree |
getTree() |
boolean |
isBlocked(int node) |
boolean |
isFinal(byte[] state) |
boolean |
isLeaf(int modelMove) |
short |
numEventClasses() |
int |
numNodes() |
void |
setAllowImplicitOrTermination(boolean allowImplicitOrTermination) |
void |
setPushDownUnderAND(boolean pushDown) |
void |
setStateSpace(nl.tue.storage.CompressedHashSet<nl.tue.astar.impl.State<NAryTreeHead,T>> statespace) |
java.lang.String |
toString(short modelMove,
short activity) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
protected final AStarAlgorithm algorithm
protected final int[] node2cost
protected final int threads
protected final short classes
protected final int scaling
protected final StateBuilder localStateBuilder
protected final NAryTreeHeadCompressor<T extends nl.tue.astar.Tail> headCompressor
protected final NAryTree tree
protected final int configurationNumber
public AbstractNAryTreeDelegate(AStarAlgorithm algorithm, NAryTree tree, int configurationNumber, int[] node2cost, int threads)
public abstract TreeRecord createInitialRecord(NAryTreeHead head, nl.tue.astar.Trace trace)
nl.tue.astar.Delegate
createInitialRecord
in interface nl.tue.astar.Delegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public nl.tue.storage.Inflater<NAryTreeHead> getHeadInflater()
getHeadInflater
in interface nl.tue.astar.impl.memefficient.StorageAwareDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
getHeadInflater
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public nl.tue.storage.Deflater<NAryTreeHead> getHeadDeflater()
getHeadDeflater
in interface nl.tue.astar.impl.memefficient.StorageAwareDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
getHeadDeflater
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public void setStateSpace(nl.tue.storage.CompressedHashSet<nl.tue.astar.impl.State<NAryTreeHead,T>> statespace)
setStateSpace
in interface nl.tue.astar.impl.memefficient.StorageAwareDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
setStateSpace
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public org.deckfour.xes.classification.XEventClass getClassOf(org.deckfour.xes.model.XEvent e)
getClassOf
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public short getIndexOf(org.deckfour.xes.classification.XEventClass c)
getIndexOf
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public short numEventClasses()
numEventClasses
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public int getCostFor(int node, int activity)
getCostFor
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public gnu.trove.set.TShortSet getActivitiesFor(int node)
getActivitiesFor
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public org.deckfour.xes.classification.XEventClass getEventClass(short act)
getEventClass
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public boolean isLeaf(int modelMove)
isLeaf
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public int getLogMoveCost(int i)
getLogMoveCost
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public int getModelMoveCost(int node)
getModelMoveCost
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public int numNodes()
numNodes
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public nl.tue.storage.HashOperation<nl.tue.astar.impl.State<NAryTreeHead,T>> getHeadBasedHashOperation()
getHeadBasedHashOperation
in interface nl.tue.astar.impl.memefficient.StorageAwareDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
getHeadBasedHashOperation
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public nl.tue.storage.EqualOperation<nl.tue.astar.impl.State<NAryTreeHead,T>> getHeadBasedEqualOperation()
getHeadBasedEqualOperation
in interface nl.tue.astar.impl.memefficient.StorageAwareDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
getHeadBasedEqualOperation
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public java.lang.String toString(short modelMove, short activity)
toString
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public int getScaling()
getScaling
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public boolean isBlocked(int node)
public NAryTree getTree()
getTree
in interface TreeDelegate<NAryTreeHead,T extends nl.tue.astar.Tail>
public AStarAlgorithm getAStarAlgorithm()
public int getStateSizeInBytes()
public void setPushDownUnderAND(boolean pushDown)
public int getState(byte[] state, int node)
public gnu.trove.iterator.TIntIterator enabledIterator(byte[] state, boolean skipLeafsUnderORIfOREnabled)
public gnu.trove.iterator.TIntIterator enabledIterator(byte[] state, short activity)
public void setAllowImplicitOrTermination(boolean allowImplicitOrTermination)
public StateBuilder getStateBuilder()
public boolean isFinal(byte[] state)