Interface GraphData


  • public interface GraphData
    Collection of edges and vertices that make up a graph. GraphData is intended to be displayed on a GraphDisplay.
    • Method Detail

      • createVertex

        GraphVertex createVertex​(java.lang.String name,
                                 java.lang.String vertexID)
        Create a Vertex with a given name and vertex ID. The vertexID string is used to uniquely identify a vertex. It is used for selection and location mapping from/to Ghidra and the graph display. It should be mappable back to an location/selection that represents the vertex in ghidra terms.
        Parameters:
        name - name of the vertex, its label
        vertexID - identifier to uniquely identify this vertex.
        Returns:
        a graph vertex
      • getVertex

        GraphVertex getVertex​(java.lang.String vertexID)
        Get a vertex with a given address string.
        Parameters:
        vertexID - identifier to uniquely identify this vertex. The key is useful for mapping location/selection from/to Ghidra and Renoir
        Returns:
        a vertex tagged with the given address.
      • createEdge

        GraphEdge createEdge​(java.lang.String vertexID,
                             GraphVertex start,
                             GraphVertex end)
        Create an edge on the graph connecting two vertices. NOTE: These MUST be two vertices created from the above createVertex function. The address string is used to uniquely identify a vertex. It is used for selection and location mapping from/to Ghidra and the graph display. It should be mappable back to an actual address in ghidra terms.
        Parameters:
        vertexID - identifier to uniquely identify this vertex
        start - start vertex
        end - end vertex
        Returns:
        a graph edge
      • getVertices

        java.util.Iterator<? extends GraphVertex> getVertices()
        Get an iterator over all defined vertices. Every object in the iterator will be a GraphVertex.
        Returns:
        a vertex iterator
      • getEdges

        java.util.Iterator<? extends GraphEdge> getEdges()
        Get an iterator over all defined edges. Every object in the iterator will be a GraphEdge.