Package ghidra.graph.graphs
Class GroupingVisualGraph<V extends VisualVertex,E extends VisualEdge<V>>
java.lang.Object
edu.uci.ics.jung.graph.AbstractGraph<V,E>
edu.uci.ics.jung.graph.AbstractTypedGraph<V,E>
edu.uci.ics.jung.graph.DirectedSparseGraph<V,E>
ghidra.graph.jung.JungDirectedGraph<V,E>
ghidra.graph.graphs.JungDirectedVisualGraph<V,E>
ghidra.graph.graphs.DefaultVisualGraph<V,E>
ghidra.graph.graphs.GroupingVisualGraph<V,E>
- Type Parameters:
V
- the vertex typeE
- the edge type
- All Implemented Interfaces:
edu.uci.ics.jung.graph.DirectedGraph<V,
,E> edu.uci.ics.jung.graph.Graph<V,
,E> edu.uci.ics.jung.graph.Hypergraph<V,
,E> GDirectedGraph<V,
,E> GImplicitDirectedGraph<V,
,E> VisualGraph<V,
,E> Serializable
public abstract class GroupingVisualGraph<V extends VisualVertex,E extends VisualEdge<V>>
extends DefaultVisualGraph<V,E>
A visual graph with methods needed to facilitate grouping of vertices.
- See Also:
-
Field Summary
Fields inherited from class ghidra.graph.graphs.DefaultVisualGraph
focusedVertex
Fields inherited from class edu.uci.ics.jung.graph.DirectedSparseGraph
edges, vertices
Fields inherited from class edu.uci.ics.jung.graph.AbstractTypedGraph
edge_type
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionabstract V
Finds a vertex that matches the given vertex.abstract V
findMatchingVertex
(V v, Collection<V> ignore) The same asfindMatchingVertex(VisualVertex)
, except that you can provide a collection of vertices to be ignored.Methods inherited from class ghidra.graph.graphs.DefaultVisualGraph
addEdge, addGraphChangeListener, addVertex, clearSelectedVertices, copy, dispose, fireEdgesAdded, fireEdgesRemoved, fireVerticesAdded, fireVerticesRemoved, getAllEdges, getEdges, getFocusedVertex, getSelectedVertices, initializeLocation, removeEdge, removeGraphChangeListener, removeVertex, removeVertices, setSelectedVertices, setVertexFocused, vertexLocationChanged, verticesAdded, verticesRemoved
Methods inherited from class ghidra.graph.jung.JungDirectedGraph
addEdge, containsEdge, emptyCopy, isEmpty, removeEdges
Methods inherited from class edu.uci.ics.jung.graph.DirectedSparseGraph
containsEdge, containsVertex, findEdge, findEdgeSet, getDest, getEdgeCount, getEdges, getEndpoints, getFactory, getIncidentEdges, getIncoming_internal, getInEdges, getNeighbors, getOutEdges, getOutgoing_internal, getPredecessors, getPreds_internal, getSource, getSuccessors, getSuccs_internal, getVertexCount, getVertices, isDest, isSource
Methods inherited from class edu.uci.ics.jung.graph.AbstractTypedGraph
getDefaultEdgeType, getEdgeCount, getEdges, getEdgeType, hasEqualEdgeType, validateEdgeType
Methods inherited from class edu.uci.ics.jung.graph.AbstractGraph
addEdge, addEdge, addEdge, addEdge, addEdge, degree, getIncidentCount, getIncidentVertices, getNeighborCount, getOpposite, getPredecessorCount, getSuccessorCount, getValidatedEndpoints, inDegree, isIncident, isNeighbor, isPredecessor, isSuccessor, outDegree, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface ghidra.graph.GDirectedGraph
addEdge, containsEdge, containsEdge, containsVertex, emptyCopy, findEdge, getEdgeCount, getEdges, getIncidentEdges, getInEdges, getOutEdges, getPredecessors, getSuccessors, getVertexCount, getVertices, isEmpty, removeEdges
Methods inherited from interface edu.uci.ics.jung.graph.Graph
addEdge, addEdge, getOpposite, getPredecessorCount, getSuccessorCount, inDegree, isPredecessor, isSuccessor, outDegree
Methods inherited from interface edu.uci.ics.jung.graph.Hypergraph
addEdge, addEdge, degree, getDefaultEdgeType, getEdgeCount, getEdges, getEdgeType, getIncidentCount, getIncidentVertices, getNeighborCount, isIncident, isNeighbor
Methods inherited from interface ghidra.graph.VisualGraph
getLayout
-
Constructor Details
-
GroupingVisualGraph
public GroupingVisualGraph()
-
-
Method Details
-
findMatchingVertex
Finds a vertex that matches the given vertex.Grouping can trigger vertex adds and removals. This method is a way for subclasses to search for a vertex that matches the given vertex, but may or may not be the same instance.
- Parameters:
v
- the vertex- Returns:
- the matching vertex or null
-
findMatchingVertex
The same asfindMatchingVertex(VisualVertex)
, except that you can provide a collection of vertices to be ignored.This is useful during graph transformations when duplicate vertices may be in the graph at the same time.
- Parameters:
v
- the vertexignore
- vertices to ignore when searching- Returns:
- the matching vertex or null
-