N
- node classE
- edge classpublic class TarjanSCCVisitor<N,E> extends Object implements GraphTraversalVisitor<N,E,net.automatalib.algorithms.graph.scc.TarjanSCCRecord>
Constructor and Description |
---|
TarjanSCCVisitor(Graph<N,E> graph,
SCCListener<N> listener)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
backtrackEdge(N srcNode,
net.automatalib.algorithms.graph.scc.TarjanSCCRecord srcData,
E edge,
N tgtNode,
net.automatalib.algorithms.graph.scc.TarjanSCCRecord tgtData) |
void |
finishExploration(N node,
net.automatalib.algorithms.graph.scc.TarjanSCCRecord data)
Called when the exploration of a node is finished.
|
boolean |
hasVisited(N node) |
GraphTraversalAction |
processEdge(N srcNode,
net.automatalib.algorithms.graph.scc.TarjanSCCRecord srcData,
E edge,
N tgtNode,
Holder<net.automatalib.algorithms.graph.scc.TarjanSCCRecord> dataHolder)
Called when an edge is processed.
|
GraphTraversalAction |
processInitial(N initialNode,
Holder<net.automatalib.algorithms.graph.scc.TarjanSCCRecord> outData)
Called when a node is processed initially.
|
boolean |
startExploration(N node,
net.automatalib.algorithms.graph.scc.TarjanSCCRecord data)
Called when the exploration of a node is started.
|
public TarjanSCCVisitor(Graph<N,E> graph, SCCListener<N> listener)
graph
- the graphlistener
- the SCC listener to use, may not be nullpublic GraphTraversalAction processInitial(N initialNode, Holder<net.automatalib.algorithms.graph.scc.TarjanSCCRecord> outData)
GraphTraversalVisitor
processInitial
in interface GraphTraversalVisitor<N,E,net.automatalib.algorithms.graph.scc.TarjanSCCRecord>
initialNode
- the node that is processedpublic boolean startExploration(N node, net.automatalib.algorithms.graph.scc.TarjanSCCRecord data)
GraphTraversalVisitor
startExploration
in interface GraphTraversalVisitor<N,E,net.automatalib.algorithms.graph.scc.TarjanSCCRecord>
node
- the node which's exploration is about to be starteddata
- the user data associated with this nodepublic void finishExploration(N node, net.automatalib.algorithms.graph.scc.TarjanSCCRecord data)
GraphTraversalVisitor
finishExploration
in interface GraphTraversalVisitor<N,E,net.automatalib.algorithms.graph.scc.TarjanSCCRecord>
node
- the node which's exploration is being finishedpublic GraphTraversalAction processEdge(N srcNode, net.automatalib.algorithms.graph.scc.TarjanSCCRecord srcData, E edge, N tgtNode, Holder<net.automatalib.algorithms.graph.scc.TarjanSCCRecord> dataHolder)
GraphTraversalVisitor
processEdge
in interface GraphTraversalVisitor<N,E,net.automatalib.algorithms.graph.scc.TarjanSCCRecord>
srcNode
- the source nodesrcData
- the user data associated with the source nodeedge
- the edge that is being processedpublic void backtrackEdge(N srcNode, net.automatalib.algorithms.graph.scc.TarjanSCCRecord srcData, E edge, N tgtNode, net.automatalib.algorithms.graph.scc.TarjanSCCRecord tgtData)
backtrackEdge
in interface GraphTraversalVisitor<N,E,net.automatalib.algorithms.graph.scc.TarjanSCCRecord>
public boolean hasVisited(N node)
Copyright © 2015. All Rights Reserved.