at.dms.kjc.flatgraph
Class DumpGraph

java.lang.Object
  extended by at.dms.kjc.flatgraph.DumpGraph
All Implemented Interfaces:
FlatVisitor

public class DumpGraph
extends Object
implements FlatVisitor

Dump a representation of the flat graph to a dot file to be used with dot (or dotty).

Author:
mgordon

Constructor Summary
DumpGraph()
           
 
Method Summary
 void dumpGraph(FlatNode toplevel, String filename, HashMap<FlatNode,Integer> initExeCounts, HashMap<FlatNode,Integer> steadyExeCounts)
          Creates the dot file representing the flattened graph and stores it in filename.
 void visitNode(FlatNode node)
          This function should not be called by the outside world.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DumpGraph

public DumpGraph()
Method Detail

dumpGraph

public void dumpGraph(FlatNode toplevel,
                      String filename,
                      HashMap<FlatNode,Integer> initExeCounts,
                      HashMap<FlatNode,Integer> steadyExeCounts)
Creates the dot file representing the flattened graph and stores it in filename. This function must be called after RawBackend#createExecutionCounts because execution multiplicities need to be set.

Parameters:
toplevel - The starting node of the FlatNode graph.
filename - The file to write the dot graph to.
initExeCounts - The multiplicities in the init stage.
steadyExeCounts - The multiplicities in the steady-state stage.

visitNode

public void visitNode(FlatNode node)
This function should not be called by the outside world. It is used by this class to visit each node of the FlatNode graph and create the dot code for connectivity and for the node label.

Specified by:
visitNode in interface FlatVisitor
Parameters:
node - The current node we are visiting.