|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectbyucc.jhdl.synth.graph.NamedObject
byucc.jhdl.synth.graph.Graph
byucc.jhdl.synth.graph.DAG
byucc.jhdl.synth.DataFlowGraph
A graph representing the dataflow of various signals and constants. DataFlowGraph consists of DFVertex and DFEdge objects. Each DFVertex can be either a constant, a signal, or an operator.
DFVertex
,
DFEdge
Field Summary | |
static java.lang.String |
DECISION_VERTEX_NAME
The name to be used for the signal that controls the exit path from a basic block. |
static java.lang.String |
STACK_LEFTOVER_NAME
A name that will be used whenever a basic block completes execution with some vertices still on the stack. |
protected java.util.Hashtable |
vertexClash
|
static java.lang.String |
WIRE_INPUT_SUFFIX
Suffixes that will be used to distinguish Wire input signals (gets) from Wire output signals (puts). |
static java.lang.String |
WIRE_OUTPUT_SUFFIX
|
Fields inherited from class byucc.jhdl.synth.graph.DAG |
sorted |
Fields inherited from class byucc.jhdl.synth.graph.Graph |
printNum, vertexVector |
Fields inherited from class byucc.jhdl.synth.graph.NamedObject |
name |
Constructor Summary | |
DataFlowGraph()
Create a new unnamed DataFlowGraph. |
|
DataFlowGraph(java.lang.String name)
Create a new DataFlowGraph with the given name. |
Method Summary | |
DFSubGraph |
createSubGraph(java.lang.String name)
Create and return a new subGraph with the given name. |
DFSubGraph[] |
getSubGraphs()
Get an array of the subgraphs that make up this graph. |
java.lang.String |
getUniqueName(java.lang.String name)
Provide a unique name based on the given name. |
protected Edge |
newEdge(Vertex tail,
Vertex head)
Overrides newEdge in Graph so that all edges in a DataFlowGraph will be of type DFEdge. |
protected Vertex |
newVertex(java.lang.String name)
Overrides newVertex in Graph so that all vertices in a DataFlowGraph will be of type DFVertex. |
boolean |
removeSubGraph(DFSubGraph subGraph)
Remove a subGraph from this DataFlowGraph. |
void |
removeVertex(Vertex vertex)
Overrides removeVertex in Graph so that when a Vertex is removed from the graph it will also be cleared from the hashes of any subGraph which may contain the vertex. |
Methods inherited from class byucc.jhdl.synth.graph.DAG |
addEdge, isSorted, localVisit, topologicalSort, topologicalSort |
Methods inherited from class byucc.jhdl.synth.graph.Graph |
addEdge, addVertex, addVertex, getEdge, getEdges, getPrintWriter, getVertices, hasEdge, hasEdge, hasVertex, mergeVertices, printGraph, printGraph, printGraph, printGraph, removeEdge, removeEdge, resetVisited, setEdgeProperty, setVertexProperty, toDot, toDot, toString |
Methods inherited from class byucc.jhdl.synth.graph.NamedObject |
getName, setName |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
protected java.util.Hashtable vertexClash
public static final java.lang.String DECISION_VERTEX_NAME
public static final java.lang.String STACK_LEFTOVER_NAME
public static final java.lang.String WIRE_INPUT_SUFFIX
public static final java.lang.String WIRE_OUTPUT_SUFFIX
Constructor Detail |
public DataFlowGraph()
public DataFlowGraph(java.lang.String name)
name
- the name for the new graph.Method Detail |
public DFSubGraph[] getSubGraphs()
public DFSubGraph createSubGraph(java.lang.String name)
public boolean removeSubGraph(DFSubGraph subGraph)
subGraph
- a subGraph to be removed from this DataFlowGraph.public java.lang.String getUniqueName(java.lang.String name)
name
- The desired name.
protected Vertex newVertex(java.lang.String name)
newVertex
in class Graph
name
- the name for the new vertex.
protected Edge newEdge(Vertex tail, Vertex head)
newEdge
in class Graph
tail
- the tail for the new edge.head
- the head for the new edge.
public void removeVertex(Vertex vertex)
removeVertex
in class Graph
vertex
- The Vertex to remove from the graph.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |