Interface GraphFactory

  • All Known Implementing Classes:
    DefaultGraphFactory

    public interface GraphFactory

    Interface for a graph factory

    Since:
    1.0
    Author:
    Andreas Pointner
    • Method Detail

      • createGraphState

        <V,​E> GraphState<V,​E> createGraphState()
        Returns a new instance of a graph state
        Type Parameters:
        V - the type of the decorated vertex value
        E - the type of the decorated edge value
        Returns:
        a new graph state instance
      • createGraph

        <V,​E> Graph<V,​E> createGraph​(GraphStateAccessor<V,​E> graphState)
        Returns a new instance of a graph
        Type Parameters:
        V - the type of the decorated vertex value
        E - the type of the decorated edge value
        Parameters:
        graphState - the internal data state representation of the graph
        Returns:
        the created graph
      • createVertex

        <V,​E> Vertex<V,​E> createVertex​(V elem)
        Returns a new instance of a vertex with elem as decorated value
        Type Parameters:
        V - the type of the decorated vertex value
        E - the type of the decorated edge value
        Parameters:
        elem - the value to be decorated by the vertex
        Returns:
        the created vertex
      • createVertexView

        <V,​E> VertexView<V,​E> createVertexView​(Vertex<V,​E> viewedVertex)
        Returns a new instance of a Vertex view
        Type Parameters:
        V - the type of the decorated vertex value
        E - the type of the decorated edge value
        Parameters:
        viewedVertex - the vertex onto which the view should be created
        Returns:
        the created vertex view
      • createEdgeView

        <V,​E> EdgeView<V,​E> createEdgeView​(Edge<V,​E> viewedEdge)
        Returns a new instance of an edge view
        Type Parameters:
        V - the type of the decorated vertex value
        E - the type of the decorated edge value
        Parameters:
        viewedEdge - the edge onto which the view should be created
        Returns:
        the created edge view
      • createEdge

        <V,​E> Edge<V,​E> createEdge​(E elem)
        Returns a new instance of an edge
        Type Parameters:
        V - the type of the decorated vertex value
        E - the type of the decorated edge value
        Parameters:
        elem - the decorated element
        Returns:
        the created edge
      • createMetaTag

        <T> MetaTag<T> createMetaTag()
        Returns a new instance of a meta tag
        Type Parameters:
        T - the type of the meta tag value
        Returns:
        the created meta tag
      • createMetaTag

        default <T> MetaTag<T> createMetaTag​(String key,
                                             T value)
        Returns a new instance of a meta tag with key and value set
        Type Parameters:
        T - the type of the value
        Parameters:
        key - the key value
        value - the value
        Returns:
        the resulting meta tag