Class EdgeGraphData.IntersectionData

java.lang.Object
dev.roanh.gmark.util.EdgeGraphData
dev.roanh.gmark.util.EdgeGraphData.IntersectionData
Enclosing class:
EdgeGraphData

protected static class EdgeGraphData.IntersectionData extends EdgeGraphData
Metadata representing the intersection of two paths.
  • Field Details

    • source

      private EdgeGraphData source
      The shared source of the paths in this intersection.
    • target

      private EdgeGraphData target
      The shared target of the paths in this intersection.
    • first

      private Deque<EdgeGraphData> first
      The first path in this intersection.
    • second

      private Deque<EdgeGraphData> second
      The second path in this intersection.
  • Constructor Details

    • IntersectionData

      private IntersectionData(EdgeGraphData source, EdgeGraphData target, Deque<EdgeGraphData> first, Deque<EdgeGraphData> second)
      Constructs new intersection data for the given source and target and two paths connecting them.
      Parameters:
      source - The shared source of the paths in the intersection.
      target - The shared target of the paths in the intersection.
      first - The first path in the intersection.
      second - The second path in the intersection.
  • Method Details

    • getSource

      public EdgeGraphData getSource()
      Gets the shared source of the paths in this intersection.
      Returns:
      The shared source of the paths in this intersection.
    • getTarget

      public EdgeGraphData getTarget()
      Gets the shared target of the paths in this intersection.
      Returns:
      The shared target of the paths in this intersection.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object other)
      Overrides:
      equals in class Object
    • size

      public int size()
      Description copied from class: EdgeGraphData
      Gets the length of the shortest path through the CPQ represented by this edge graph data object.
      Specified by:
      size in class EdgeGraphData
      Returns:
      The length of the shortest path through this object.
    • getSourceType

      public Type getSourceType()
      Description copied from class: EdgeGraphData
      The type of the source node for the CPQ in this data object.
      Specified by:
      getSourceType in class EdgeGraphData
      Returns:
      The target type for this object.
    • getTargetType

      public Type getTargetType()
      Description copied from class: EdgeGraphData
      The type of the source node for the CPQ in this data object.
      Specified by:
      getTargetType in class EdgeGraphData
      Returns:
      The source type for this object.
    • getSourceSelectivity

      public Selectivity getSourceSelectivity()
      Description copied from class: EdgeGraphData
      The selectivity of the source node for the CPQ in this data object.
      Specified by:
      getSourceSelectivity in class EdgeGraphData
      Returns:
      The source selectivity for this object.
    • getTargetSelectivity

      public Selectivity getTargetSelectivity()
      Description copied from class: EdgeGraphData
      The selectivity of the target node for the CPQ in this data object.
      Specified by:
      getTargetSelectivity in class EdgeGraphData
      Returns:
      The source selectivity for this object.
    • toCPQ

      public CPQ toCPQ()
      Description copied from class: EdgeGraphData
      Converts this edge graph data object to an actual CPQ representing it.
      Specified by:
      toCPQ in class EdgeGraphData
      Returns:
      A CPQ for this edge graph data object.
      See Also: