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>
,java.io.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:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class ghidra.graph.graphs.DefaultVisualGraph
focusedVertex
-
-
Constructor Summary
Constructors Constructor Description GroupingVisualGraph()
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract V
findMatchingVertex(V v)
Finds a vertex that matches the given vertex.abstract V
findMatchingVertex(V v, java.util.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
-
-
-
-
Method Detail
-
findMatchingVertex
public abstract V findMatchingVertex(V v)
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
public abstract V findMatchingVertex(V v, java.util.Collection<V> ignore)
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
-
-