Interface EdgeIndexFunction<V,E>

All Known Implementing Classes:
DefaultParallelEdgeIndexFunction, IncidentEdgeIndexFunction, PredicatedParallelEdgeIndexFunction

public interface EdgeIndexFunction<V,E>
An interface for a service to access the index of a given edge (in a given graph) into the set formed by the given edge and all the other edges it is parallel to.

Note that in current use, this index is assumed to be an integer value in the interval [0,n-1], where n-1 is the number of edges parallel to e.

  • Method Summary

    Modifier and Type
    Method
    Description
    int
    getIndex(Graph<V,E> graph, E e)
    Returns e's index in graph.
    void
    Clears all edge indices for all edges in all graphs.
    void
    reset(Graph<V,E> g, E edge)
    Resets the indices for edge and its parallel edges in graph.
  • Method Details

    • getIndex

      int getIndex(Graph<V,E> graph, E e)
      Returns e's index in graph. The index of e is defined as its position in some consistent ordering of e and all edges parallel to e.
      Parameters:
      graph - the graph with respect to which the index is calculated
      e - the edge whose index is to be queried
      Returns:
      e's index in graph
    • reset

      void reset(Graph<V,E> g, E edge)
      Resets the indices for edge and its parallel edges in graph. Should be invoked when an edge parallel to edge has been added or removed.
      Parameters:
      g - the graph in which edge's index is to be reset
      edge - the edge whose index is to be reset
    • reset

      void reset()
      Clears all edge indices for all edges in all graphs. Does not recalculate the indices.