#include <lemon/concept/ugraph.h>
Inherited by ExtendableUGraph.
Inheritance diagram for UGraph:
As all concept describing classes it provides only interface without any sensible implementation. So any algorithm for undirected graph should compile with this class, but it will not run properly, of couse.
In LEMON undirected graphs also fulfill the concept of directed graphs (Graph Concept). For explanation of this and more see also the page Undirected graph structures, a tutorial about undirected graphs.
You can assume that all undirected graph can be handled as a static directed graph. This way it is fully conform to the StaticGraph concept.
Public Types | |
typedef True | UTag |
| |
Public Member Functions | |
Edge | direct (const UEdge &, const Node &) const |
Direct the given undirected edge. | |
Edge | direct (const UEdge &, bool) const |
Direct the given undirected edge. | |
bool | direction (Edge) const |
Returns true if the edge has default orientation. | |
Edge | oppositeEdge (Edge) const |
Returns the opposite directed edge. | |
Node | oppositeNode (Node, UEdge) const |
Opposite node on an edge. | |
Node | source (UEdge) const |
First node of the undirected edge. | |
Node | target (UEdge) const |
Second node of the undirected edge. | |
Node | source (Edge) const |
Source node of the directed edge. | |
Node | target (Edge) const |
Target node of the directed edge. | |
Node | baseNode (OutEdgeIt e) const |
Base node of the iterator. | |
Node | runningNode (OutEdgeIt e) const |
Running node of the iterator. | |
Node | baseNode (InEdgeIt e) const |
Base node of the iterator. | |
Node | runningNode (InEdgeIt e) const |
Running node of the iterator. | |
Node | baseNode (IncEdgeIt) const |
Base node of the iterator. | |
Node | runningNode (IncEdgeIt) const |
Running node of the iterator. | |
Classes | |
class | Edge |
The directed edge type. More... | |
class | EdgeIt |
This iterator goes through each directed edge. More... | |
class | EdgeMap |
Read write map of the directed edges to type T . More... | |
class | IncEdgeIt |
This iterator goes trough the incident undirected edges of a node. More... | |
class | InEdgeIt |
This iterator goes trough the incoming directed edges of a node. More... | |
class | Node |
The base type of node iterators, or in other words, the trivial node iterator. More... | |
class | NodeIt |
This iterator goes through each node. More... | |
class | NodeMap |
Read write map of the nodes to type T . More... | |
class | OutEdgeIt |
This iterator goes trough the outgoing directed edges of a node. More... | |
class | UEdge |
The base type of the undirected edge iterators. More... | |
class | UEdgeIt |
This iterator goes through each undirected edge. More... | |
class | UEdgeMap |
Read write map of the undirected edges to type T . More... |
|
|
|
Direct the given undirected edge. The returned edge source will be the given edge. |
|
Direct the given undirected edge. The returned edge source will be the source of the undirected edge if the given bool is true. |
|
Returns whether the given directed edge is same orientation as the corresponding undirected edge. |
|
Returns the opposite directed edge. |
|
|
|
|
|
Returns the base node (the source in this case) of the iterator |
|
Returns the running node (the target in this case) of the iterator |
|
Returns the base node (the target in this case) of the iterator |
|
Returns the running node (the source in this case) of the iterator |
|
Returns the base node of the iterator |
|
Returns the running node of the iterator |