org.semanticweb.HermiT.hierarchy
Class DeterministicClassification

java.lang.Object
  extended by org.semanticweb.HermiT.hierarchy.DeterministicClassification

public class DeterministicClassification
extends java.lang.Object


Nested Class Summary
protected static class DeterministicClassification.DFSIndex
           
static class DeterministicClassification.GraphNode<T>
           
protected static class DeterministicClassification.TopologicalOrderComparator
           
 
Field Summary
protected  AtomicConcept m_bottomElement
           
protected  java.util.Set<AtomicConcept> m_elements
           
protected  ClassificationProgressMonitor m_progressMonitor
           
protected  Tableau m_tableau
           
protected  AtomicConcept m_topElement
           
 
Constructor Summary
DeterministicClassification(Tableau tableau, ClassificationProgressMonitor progressMonitor, AtomicConcept topElement, AtomicConcept bottomElement, java.util.Set<AtomicConcept> elements)
           
 
Method Summary
static
<T> Hierarchy<T>
buildHierarchy(T topElement, T bottomElement, java.util.Map<T,DeterministicClassification.GraphNode<T>> graphNodes)
           
 Hierarchy<AtomicConcept> classify()
           
protected static
<T> void
visit(java.util.Stack<DeterministicClassification.GraphNode<T>> stack, DeterministicClassification.DFSIndex dfsIndex, java.util.Map<T,DeterministicClassification.GraphNode<T>> graphNodes, DeterministicClassification.GraphNode<T> graphNode, Hierarchy<T> hierarchy, java.util.List<HierarchyNode<T>> topologicalOrder)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_tableau

protected final Tableau m_tableau

m_progressMonitor

protected final ClassificationProgressMonitor m_progressMonitor

m_topElement

protected final AtomicConcept m_topElement

m_bottomElement

protected final AtomicConcept m_bottomElement

m_elements

protected final java.util.Set<AtomicConcept> m_elements
Constructor Detail

DeterministicClassification

public DeterministicClassification(Tableau tableau,
                                   ClassificationProgressMonitor progressMonitor,
                                   AtomicConcept topElement,
                                   AtomicConcept bottomElement,
                                   java.util.Set<AtomicConcept> elements)
Method Detail

classify

public Hierarchy<AtomicConcept> classify()

buildHierarchy

public static <T> Hierarchy<T> buildHierarchy(T topElement,
                                              T bottomElement,
                                              java.util.Map<T,DeterministicClassification.GraphNode<T>> graphNodes)

visit

protected static <T> void visit(java.util.Stack<DeterministicClassification.GraphNode<T>> stack,
                                DeterministicClassification.DFSIndex dfsIndex,
                                java.util.Map<T,DeterministicClassification.GraphNode<T>> graphNodes,
                                DeterministicClassification.GraphNode<T> graphNode,
                                Hierarchy<T> hierarchy,
                                java.util.List<HierarchyNode<T>> topologicalOrder)