public Set<Edge<T>> getOutgoingEdges(Vertex<T> vertex) { return graphVertices.get(vertex).getOutgoingEdges(); }
public Set<Edge<T>> getOutgoingEdges(Vertex<T> vertex) { return graphVertices.get(vertex).getOutgoingEdges(); }
public void remove(Edge<T> edge) { removeEdge(edge); Vertex<T> source = edge.getSource(); Vertex<T> sink = edge.getSink(); VertexHolder sourceHolder = graphVertices.get(source); VertexHolder sinkHolder = graphVertices.get(sink); // remove the edge from the source's outgoing edges sourceHolder.getOutgoingEdges().remove(edge); // remove the edge from the sink's incoming edges sinkHolder.getIncomingEdges().remove(edge); }
public void add(Edge<T> edge) { if (graphEdges.contains(edge)) { return; } Vertex<T> source = edge.getSource(); Vertex<T> sink = edge.getSink(); if (!graphVertices.containsKey(source)) { add(source); } if ((sink != source) && !graphVertices.containsKey(sink)) { add(sink); } Set<Edge<T>> sourceEdges = getOutgoingEdges(source); sourceEdges.add(edge); if (source != sink) { // avoid adding the edge a second time if the edge points back on itself Set<Edge<T>> sinkEdges = getIncomingEdges(sink); sinkEdges.add(edge); } graphEdges.add(edge); VertexHolder sourceHolder = graphVertices.get(edge.getSource()); VertexHolder sinkHolder = graphVertices.get(edge.getSink()); sourceHolder.getOutgoingEdges().add(edge); sinkHolder.getIncomingEdges().add(edge); }
public void add(Edge<T> edge) { if (graphEdges.contains(edge)) { return; } Vertex<T> source = edge.getSource(); Vertex<T> sink = edge.getSink(); if (!graphVertices.containsKey(source)) { add(source); } if ((sink != source) && !graphVertices.containsKey(sink)) { add(sink); } Set<Edge<T>> sourceEdges = getOutgoingEdges(source); sourceEdges.add(edge); if (source != sink) { // avoid adding the edge a second time if the edge points back on itself Set<Edge<T>> sinkEdges = getIncomingEdges(sink); sinkEdges.add(edge); } graphEdges.add(edge); VertexHolder sourceHolder = graphVertices.get(edge.getSource()); VertexHolder sinkHolder = graphVertices.get(edge.getSink()); sourceHolder.getOutgoingEdges().add(edge); sinkHolder.getIncomingEdges().add(edge); }
public void add(Edge<T> edge) { if (graphEdges.contains(edge)) { return; } Vertex<T> source = edge.getSource(); Vertex<T> sink = edge.getSink(); if (!graphVertices.containsKey(source)) { add(source); } if ((sink != source) && !graphVertices.containsKey(sink)) { add(sink); } Set<Edge<T>> sourceEdges = getOutgoingEdges(source); sourceEdges.add(edge); if (source != sink) { // avoid adding the edge a second time if the edge points back on itself Set<Edge<T>> sinkEdges = getIncomingEdges(sink); sinkEdges.add(edge); } graphEdges.add(edge); VertexHolder sourceHolder = graphVertices.get(edge.getSource()); VertexHolder sinkHolder = graphVertices.get(edge.getSink()); sourceHolder.getOutgoingEdges().add(edge); sinkHolder.getIncomingEdges().add(edge); }
public Set<Edge<T>> getOutgoingEdges(Vertex<T> vertex) { return graphVertices.get(vertex).getOutgoingEdges(); }
public void remove(Edge<T> edge) { removeEdge(edge); Vertex<T> source = edge.getSource(); Vertex<T> sink = edge.getSink(); VertexHolder sourceHolder = graphVertices.get(source); VertexHolder sinkHolder = graphVertices.get(sink); // remove the edge from the source's outgoing edges sourceHolder.getOutgoingEdges().remove(edge); // remove the edge from the sink's incoming edges sinkHolder.getIncomingEdges().remove(edge); }
public void remove(Edge<T> edge) { removeEdge(edge); Vertex<T> source = edge.getSource(); Vertex<T> sink = edge.getSink(); VertexHolder sourceHolder = graphVertices.get(source); VertexHolder sinkHolder = graphVertices.get(sink); // remove the edge from the source's outgoing edges sourceHolder.getOutgoingEdges().remove(edge); // remove the edge from the sink's incoming edges sinkHolder.getIncomingEdges().remove(edge); }