SandMark version 3.0


sandmark.watermark.gtw
Class ClusterGraph

java.lang.Object
  |
  +--sandmark.util.controlflowgraph.ProgramGraph
        |
        +--sandmark.watermark.gtw.ClusterGraph
Direct Known Subclasses:
FunctionClusterGraph

public abstract class ClusterGraph
extends ProgramGraph


Field Summary
(package private)  ProgramCFG mPCFG
           
(package private)  java.util.Random mRand
           
 
Constructor Summary
ClusterGraph(ProgramCFG pCFG, long randomSeed)
           
 
Method Summary
 void addRandomEdgesBetweenSubgraphs(java.util.ArrayList leftNodes, java.util.ArrayList rightNodes, int count)
           
protected abstract  java.lang.Object getClusterForNode(java.lang.Object node)
           
protected  java.util.Random getRNG()
           
protected  void init()
           
protected abstract  boolean isLegalEdge(java.lang.Object from, java.lang.Object to)
           
protected abstract  void synthesizeEdge(java.lang.Object from, java.lang.Object to)
           
 
Methods inherited from class sandmark.util.controlflowgraph.ProgramGraph
addEdge, addNode, edgeCount, getPreds, getSuccs, hasEdge, hasNode, nodeCount, nodes, removeEdge, removeNode
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mPCFG

ProgramCFG mPCFG

mRand

java.util.Random mRand
Constructor Detail

ClusterGraph

public ClusterGraph(ProgramCFG pCFG,
                    long randomSeed)
Method Detail

init

protected void init()

getRNG

protected java.util.Random getRNG()

addRandomEdgesBetweenSubgraphs

public void addRandomEdgesBetweenSubgraphs(java.util.ArrayList leftNodes,
                                           java.util.ArrayList rightNodes,
                                           int count)

getClusterForNode

protected abstract java.lang.Object getClusterForNode(java.lang.Object node)

synthesizeEdge

protected abstract void synthesizeEdge(java.lang.Object from,
                                       java.lang.Object to)

isLegalEdge

protected abstract boolean isLegalEdge(java.lang.Object from,
                                       java.lang.Object to)

SandMark version 3.0

Wed Jan 29 10:30:05 MST 2003