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
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 |
mPCFG
ProgramCFG mPCFG
mRand
java.util.Random mRand
ClusterGraph
public ClusterGraph(ProgramCFG pCFG,
long randomSeed)
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)