Class DefaultEdgeDirectory

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addEdge​(Edge edge)
      Adds a new edge between two vertices.
      Edge getBestEdge​(Vertex start, Vertex end)
      Returns the best edge (the edge with the lowest penalty) between two given vertices.
      java.util.Iterator getDestinations​(Vertex origin)
      Returns an iterator over all valid destinations for a given vertex.
      java.util.Iterator getEdges​(Vertex origin)
      Returns an iterator over all edges with the given origin.
      int getPenalty​(Vertex start, Vertex end)
      Returns the penalty between two vertices.
      • Methods inherited from class java.lang.Object

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

      • DefaultEdgeDirectory

        public DefaultEdgeDirectory()
    • Method Detail

      • addEdge

        public void addEdge​(Edge edge)
        Adds a new edge between two vertices.
        Parameters:
        edge - the new edge
      • getPenalty

        public int getPenalty​(Vertex start,
                              Vertex end)
        Returns the penalty between two vertices.
        Specified by:
        getPenalty in interface EdgeDirectory
        Parameters:
        start - the start vertex
        end - the end vertex
        Returns:
        the penalty between two vertices, or 0 if no single edge between the two vertices exists.
      • getDestinations

        public java.util.Iterator getDestinations​(Vertex origin)
        Returns an iterator over all valid destinations for a given vertex.
        Specified by:
        getDestinations in interface EdgeDirectory
        Parameters:
        origin - the origin from which to search for destinations
        Returns:
        the iterator over all valid destinations for a given vertex
      • getEdges

        public java.util.Iterator getEdges​(Vertex origin)
        Returns an iterator over all edges with the given origin.
        Parameters:
        origin - the origin
        Returns:
        an iterator over Edge instances
      • getBestEdge

        public Edge getBestEdge​(Vertex start,
                                Vertex end)
        Returns the best edge (the edge with the lowest penalty) between two given vertices.
        Parameters:
        start - the start vertex
        end - the end vertex
        Returns:
        the best vertex or null if none is found