org.planx.msd.graph
Class Compactor<N>

java.lang.Object
  extended by org.planx.msd.graph.Compactor<N>

public class Compactor<N>
extends Object

Removes redundant data in a directed acyclic graph using multiset discrimination.

Author:
Thomas Ambus

Nested Class Summary
 class Compactor.Edge
          A container class that specifies the location of a node in a graph.
static class Compactor.Statistics
          A container class for statistical information.
 
Field Summary
protected  Discriminator<N> disc
           
protected  boolean doStat
           
protected  int inputNumOfNodes
           
protected  int inputShareDegree
           
protected  int merges
           
protected  Navigator<N> nav
           
protected  int outputNumOfNodes
           
 
Constructor Summary
protected Compactor()
           
  Compactor(Navigator<N> nav, Discriminator<N> d)
          Constructs a new Compactor.
  Compactor(Navigator<N> nav, Discriminator<N> d, boolean doStatistics)
           
 
Method Summary
protected  void clearStatistics()
           
 Compactor.Statistics getStatistics()
          Return a Statistics object containing information about the last run of share().
 void share(N root)
          Compact the graph with the specified node as root.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

nav

protected Navigator<N> nav

disc

protected Discriminator<N> disc

doStat

protected boolean doStat

inputNumOfNodes

protected int inputNumOfNodes

inputShareDegree

protected int inputShareDegree

outputNumOfNodes

protected int outputNumOfNodes

merges

protected int merges
Constructor Detail

Compactor

protected Compactor()

Compactor

public Compactor(Navigator<N> nav,
                 Discriminator<N> d)
Constructs a new Compactor. The provided discriminator must be able to discriminate a single "layer" of nodes. That is, the discriminator should not be recursive, but rather treat child nodes as EquivalenceClassDiscriminables.


Compactor

public Compactor(Navigator<N> nav,
                 Discriminator<N> d,
                 boolean doStatistics)
Method Detail

share

public void share(N root)
Compact the graph with the specified node as root.


clearStatistics

protected void clearStatistics()

getStatistics

public Compactor.Statistics getStatistics()
Return a Statistics object containing information about the last run of share().



Copyright © 2010. All Rights Reserved.