Class AtomicVertex

java.lang.Object
classycle.graph.Vertex
classycle.graph.AtomicVertex
All Implemented Interfaces:
Comparable<Vertex>
Direct Known Subclasses:
PackageVertex

public class AtomicVertex extends Vertex
A subclass of Vertex with the following additional properties:
  • A flag indicating whether this vertex belongs to the graph or not.
  • The order of visiting.
  • The low function.
The last two properties are used in Tarjan's algorithm to find the strong components (see StrongComponentProcessor).
Author:
Franz-Josef Elmer
  • Constructor Details

    • AtomicVertex

      public AtomicVertex(Attributes attributes)
      Creates an instance for the specified attributes.
  • Method Details

    • reset

      public void reset()
      Reset this instance. That is, it becomes a unvisited vertex where order = low = -1. Whether it is a graph vertex or not depends on the default value defined by the method setDefaultValueOfGraphVertexFlag(boolean).
      Overrides:
      reset in class Vertex
    • isGraphVertex

      public boolean isGraphVertex()
      Returns true if this vertex belongs to a graph.
    • setDefaultValueOfGraphVertexFlag

      public void setDefaultValueOfGraphVertexFlag(boolean flag)
      Sets the default value of graphVertex flag.
      See Also:
    • getOrder

      public int getOrder()
      Returns the order of visiting.
    • setOrder

      public void setOrder(int order)
      Sets the order of visiting.
    • getLow

      public int getLow()
      Returns the current value of the low function.
    • setLow

      public void setLow(int low)
      Sets the current value of the low function.