org.jgrapht.graph
Class DirectedSubgraph<V,E>

java.lang.Object
  extended by org.jgrapht.graph.AbstractGraph<V,E>
      extended by org.jgrapht.graph.Subgraph<V,E,DirectedGraph<V,E>>
          extended by org.jgrapht.graph.DirectedSubgraph<V,E>
All Implemented Interfaces:
java.io.Serializable, DirectedGraph<V,E>, Graph<V,E>
Direct Known Subclasses:
DirectedWeightedSubgraph

public class DirectedSubgraph<V,E>
extends Subgraph<V,E,DirectedGraph<V,E>>
implements DirectedGraph<V,E>

A directed graph that is a subgraph on other graph.

See Also:
Subgraph, Serialized Form

Constructor Summary
DirectedSubgraph(DirectedGraph<V,E> base, java.util.Set<V> vertexSubset, java.util.Set<E> edgeSubset)
          Creates a new directed subgraph.
 
Method Summary
 java.util.Set<E> incomingEdgesOf(V vertex)
          Returns a set of all edges incoming into the specified vertex.
 int inDegreeOf(V vertex)
          Returns the "in degree" of the specified vertex.
 int outDegreeOf(V vertex)
          Returns the "out degree" of the specified vertex.
 java.util.Set<E> outgoingEdgesOf(V vertex)
          Returns a set of all edges outgoing from the specified vertex.
 
Methods inherited from class org.jgrapht.graph.Subgraph
addEdge, addEdge, addVertex, containsEdge, containsVertex, edgeSet, edgesOf, getAllEdges, getBase, getEdge, getEdgeFactory, getEdgeSource, getEdgeTarget, getEdgeWeight, removeEdge, removeEdge, removeVertex, setEdgeWeight, vertexSet
 
Methods inherited from class org.jgrapht.graph.AbstractGraph
assertVertexExist, containsEdge, removeAllEdges, removeAllEdges, removeAllEdges, removeAllVertices, toString, toStringFromSets
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.jgrapht.Graph
addEdge, addEdge, addVertex, containsEdge, containsEdge, containsVertex, edgeSet, edgesOf, getAllEdges, getEdge, getEdgeFactory, getEdgeSource, getEdgeTarget, getEdgeWeight, removeAllEdges, removeAllEdges, removeAllVertices, removeEdge, removeEdge, removeVertex, vertexSet
 

Constructor Detail

DirectedSubgraph

public DirectedSubgraph(DirectedGraph<V,E> base,
                        java.util.Set<V> vertexSubset,
                        java.util.Set<E> edgeSubset)
Creates a new directed subgraph.

Parameters:
base - the base (backing) graph on which the subgraph will be based.
vertexSubset - vertices to include in the subgraph. If null then all vertices are included.
edgeSubset - edges to in include in the subgraph. If null then all the edges whose vertices found in the graph are included.
Method Detail

inDegreeOf

public int inDegreeOf(V vertex)
Description copied from interface: DirectedGraph
Returns the "in degree" of the specified vertex. An in degree of a vertex in a directed graph is the number of inward directed edges from that vertex. See http://mathworld.wolfram.com/Indegree.html.

Specified by:
inDegreeOf in interface DirectedGraph<V,E>
Parameters:
vertex - vertex whose degree is to be calculated.
Returns:
the degree of the specified vertex.
See Also:
DirectedGraph.inDegreeOf(Object)

incomingEdgesOf

public java.util.Set<E> incomingEdgesOf(V vertex)
Description copied from interface: DirectedGraph
Returns a set of all edges incoming into the specified vertex.

Specified by:
incomingEdgesOf in interface DirectedGraph<V,E>
Parameters:
vertex - the vertex for which the list of incoming edges to be returned.
Returns:
a set of all edges incoming into the specified vertex.
See Also:
DirectedGraph.incomingEdgesOf(Object)

outDegreeOf

public int outDegreeOf(V vertex)
Description copied from interface: DirectedGraph
Returns the "out degree" of the specified vertex. An out degree of a vertex in a directed graph is the number of outward directed edges from that vertex. See http://mathworld.wolfram.com/Outdegree.html.

Specified by:
outDegreeOf in interface DirectedGraph<V,E>
Parameters:
vertex - vertex whose degree is to be calculated.
Returns:
the degree of the specified vertex.
See Also:
DirectedGraph.outDegreeOf(Object)

outgoingEdgesOf

public java.util.Set<E> outgoingEdgesOf(V vertex)
Description copied from interface: DirectedGraph
Returns a set of all edges outgoing from the specified vertex.

Specified by:
outgoingEdgesOf in interface DirectedGraph<V,E>
Parameters:
vertex - the vertex for which the list of outgoing edges to be returned.
Returns:
a set of all edges outgoing from the specified vertex.
See Also:
DirectedGraph.outgoingEdgesOf(Object)