public class StrongComponentProcessor extends GraphProcessor
| Constructor and Description |
|---|
StrongComponentProcessor(boolean calculateAttributes)
Creates an instance.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
finishProcessing(Vertex[] graph)
Adds all arcs to the strong components.
|
StrongComponent[] |
getStrongComponents()
Returns the result of
GraphProcessor.deepSearchFirst(classycle.graph.Vertex[]). |
protected void |
initializeProcessing(Vertex[] graph)
Initializes processing.
|
protected void |
processAfter(Vertex vertex)
Processes the specified vertex after all its outgoing arcs are
processed.
|
protected void |
processArc(Vertex tail,
Vertex head)
Processes the arc specified by tail and head vertices.
|
protected void |
processBefore(Vertex vertex)
Processes the specified vertex before its outgoing arcs are processed.
|
deepSearchFirst, processpublic StrongComponentProcessor(boolean calculateAttributes)
calculateAttributes - If true the attributes of the
strong components will be calculated. Otherwise not.public StrongComponent[] getStrongComponents()
GraphProcessor.deepSearchFirst(classycle.graph.Vertex[]).protected void initializeProcessing(Vertex[] graph)
GraphProcessorGraphProcessor.deepSearchFirst(classycle.graph.Vertex[]).initializeProcessing in class GraphProcessorprotected void processBefore(Vertex vertex)
GraphProcessorprocessBefore in class GraphProcessorvertex - Vertex to be processed.java.lang.IllegalArgumentException - if vertex is not an instance
of AtomicVertex.protected void processArc(Vertex tail, Vertex head)
GraphProcessorprocessArc in class GraphProcessortail - Tail vertex of the arc.head - Head vertex of the arc.java.lang.IllegalArgumentException - if tail and head are
not an instances of AtomicVertex.protected void processAfter(Vertex vertex)
processAfter in class GraphProcessorvertex - Vertex to be processed.java.lang.IllegalArgumentException - if vertex is not an instance
of AtomicVertex.protected void finishProcessing(Vertex[] graph)
finishProcessing in class GraphProcessor