public abstract class AbstractLabeledGraph<T,U> extends AbstractGraph<T> implements LabeledGraph<T,U>
Constructor and Description |
---|
AbstractLabeledGraph() |
Modifier and Type | Method and Description |
---|---|
void |
addEdge(T src,
T dst,
U label)
adds an edge with some label
|
Set<? extends U> |
getEdgeLabels(T src,
T dst)
Returns a set of all labeled edges between node src and node dst
|
protected abstract LabeledEdgeManager<T,U> |
getEdgeManager() |
Iterator<? extends U> |
getPredLabels(T N) |
int |
getPredNodeCount(T N,
U label)
Return the number of
immediate predecessor nodes of this Node in the Graph on edges with some label. |
Iterator<T> |
getPredNodes(T N,
U label)
Return an Iterator over the immediate predecessor nodes of this Node in the Graph on edges with some label.
|
Iterator<? extends U> |
getSuccLabels(T N) |
int |
getSuccNodeCount(T N,
U label)
Return the number of
immediate successor nodes of this Node in the Graph |
Iterator<? extends T> |
getSuccNodes(T N,
U label)
Return an Iterator over the immediate successor nodes of this Node in the Graph on edges with some label.
|
boolean |
hasEdge(T src,
T dst,
U label) |
void |
removeEdge(T src,
T dst,
U label) |
addEdge, addNode, containsNode, getNodeManager, getNumberOfNodes, getPredNodeCount, getPredNodes, getSuccNodeCount, getSuccNodes, hasEdge, iterator, removeAllIncidentEdges, removeEdge, removeIncomingEdges, removeNode, removeNodeAndEdges, removeOutgoingEdges, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
removeNodeAndEdges
addNode, containsNode, getNumberOfNodes, iterator, removeNode
forEach, spliterator
getDefaultLabel
addEdge, getPredNodeCount, getPredNodes, getSuccNodeCount, getSuccNodes, hasEdge, removeAllIncidentEdges, removeEdge, removeIncomingEdges, removeOutgoingEdges
protected abstract LabeledEdgeManager<T,U> getEdgeManager()
getEdgeManager
in class AbstractGraph<T>
public void addEdge(T src, T dst, U label)
LabeledEdgeManager
addEdge
in interface LabeledEdgeManager<T,U>
public Iterator<? extends U> getPredLabels(T N)
getPredLabels
in interface LabeledEdgeManager<T,U>
public int getPredNodeCount(T N, U label)
LabeledEdgeManager
immediate predecessor
nodes of this Node in the Graph on edges with some label.getPredNodeCount
in interface LabeledEdgeManager<T,U>
public Iterator<T> getPredNodes(T N, U label)
LabeledEdgeManager
null
.getPredNodes
in interface LabeledEdgeManager<T,U>
public Iterator<? extends U> getSuccLabels(T N)
getSuccLabels
in interface LabeledEdgeManager<T,U>
public int getSuccNodeCount(T N, U label)
LabeledEdgeManager
immediate successor
nodes of this Node in the GraphgetSuccNodeCount
in interface LabeledEdgeManager<T,U>
public Iterator<? extends T> getSuccNodes(T N, U label)
LabeledEdgeManager
This method never returns null
.
getSuccNodes
in interface LabeledEdgeManager<T,U>
public boolean hasEdge(T src, T dst, U label)
hasEdge
in interface LabeledEdgeManager<T,U>
public void removeEdge(T src, T dst, U label)
removeEdge
in interface LabeledEdgeManager<T,U>
public Set<? extends U> getEdgeLabels(T src, T dst)
LabeledEdgeManager
getEdgeLabels
in interface LabeledEdgeManager<T,U>
src
- source node of the edgedst
- target node of the edge