Class DefaultGraphMapping<V,​E>

java.lang.Object
org.jgrapht.graph.DefaultGraphMapping<V,​E>
Type Parameters:
V - the graph vertex type
E - the graph edge type
All Implemented Interfaces:
GraphMapping<V,​E>

public class DefaultGraphMapping<V,​E>
extends java.lang.Object
implements GraphMapping<V,​E>
Implementation of the GraphMapping interface. The performance of getVertex/EdgeCorrespondence is based on the performance of the concrete Map class which is passed in the constructor. For example, using HashMap will provide expected $O(1)$ performance.
Author:
Assaf Lehr
  • Constructor Summary

    Constructors 
    Constructor Description
    DefaultGraphMapping​(java.util.Map<V,​V> g1ToG2, java.util.Map<V,​V> g2ToG1, Graph<V,​E> g1, Graph<V,​E> g2)
    The maps themselves are used.
  • Method Summary

    Modifier and Type Method Description
    E getEdgeCorrespondence​(E currEdge, boolean forward)
    Gets the mapped value where the key is edge
    V getVertexCorrespondence​(V keyVertex, boolean forward)
    Gets the mapped value where the key is vertex

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • DefaultGraphMapping

      public DefaultGraphMapping​(java.util.Map<V,​V> g1ToG2, java.util.Map<V,​V> g2ToG1, Graph<V,​E> g1, Graph<V,​E> g2)
      The maps themselves are used. There is no defensive-copy. Assumption: The key and value in the mappings are of valid graph objects. It is not checked.
      Parameters:
      g1ToG2 - vertex mapping from the first graph to the second
      g2ToG1 - vertex mapping from the second graph to the first
      g1 - the first graph
      g2 - the second graph
  • Method Details

    • getEdgeCorrespondence

      public E getEdgeCorrespondence​(E currEdge, boolean forward)
      Description copied from interface: GraphMapping
      Gets the mapped value where the key is edge
      Specified by:
      getEdgeCorrespondence in interface GraphMapping<V,​E>
      Parameters:
      currEdge - edge in one of the graphs
      forward - if true, uses mapping from graph1 to graph2; if false, use mapping from graph2 to graph1
      Returns:
      corresponding edge in other graph, or null if none
    • getVertexCorrespondence

      public V getVertexCorrespondence​(V keyVertex, boolean forward)
      Description copied from interface: GraphMapping
      Gets the mapped value where the key is vertex
      Specified by:
      getVertexCorrespondence in interface GraphMapping<V,​E>
      Parameters:
      keyVertex - vertex in one of the graphs
      forward - if true, uses mapping from graph1 to graph2; if false, use mapping from graph2 to graph1
      Returns:
      corresponding vertex in other graph, or null if none