Definition
a variable it of class EdgeIt is a linear edge iterator that iterates over the edge set of a graph; the current edge of an iterator object is said to be ``marked'' by this object.
#include < LEDA/graph/graph_iterator.h >
Creation
EdgeIt | it | introduces a variable it of this class associated with no graph. |
EdgeIt | it(const leda::graph& G) | introduces a variable it of this class associated with G and marked with G.first_edge(). |
EdgeIt | it(const leda::graph& G, leda::edge e) | |
introduces a variable it of this class marked with e and
associated with G.
Precondition: e is an edge of G. |
Operations
void | it.init(const leda::graph& G) | |
associates it with G and marks it with G.first_edge(). | ||
void | it.init(const leda::graph& G, const leda::edge& e) | |
associates it with G and marks it with e. | ||
void | it.update(leda::edge e) | it marks e afterwards. |
void | it.reset() | resets it to G.first_edge() where G is the associated graph. |
void | it.reset_end() | resets it to G.last_edge() where G is the associated graph. |
void | it.make_invalid() | makes it invalid, i.e. it.valid() will be false afterwards and it marks no node. |
void | it.insert(leda::node v1, leda::node v2) | |
creates a new edge from v1 to v2 and it marks it afterwards. | ||
void | it.del() | deletes the marked edge, i.e. it.valid() returns false afterwards.
Precondition: it.valid() returns true. |
EdgeIt& | it = const EdgeIt& it2 | assigns it2 to it. This method returns a reference to it. |
bool | it == const EdgeIt& it2 | returns true if and only if it and it2 are equal, i.e. if the marked edges are equal. |
bool | it.eol() | returns !it.valid() which is true if and only if there is no successor edge left, i.e. if all edges leaving the marked node are passed (eol: end of list). |
bool | it.valid() | returns true if and only if end of sequence not yet passed, i.e. if there is an edge leaving the marked node that was not yet passed. |
leda::edge | it.get_edge() | returns the marked edge or nil if it.valid() returns false. |
const leda::graph& | it.get_graph() | returns the associated graph. |
EdgeIt& | ++it | performs one step forward in the list of edges of the associated graph.
If there is no successor edge, it.eol() will be true afterwards.
This method returns a reference to it.
Precondition: it.valid() returns true. |
EdgeIt& | -it | performs one step backward in the list of edges of the associated graph.
If there is no predecessor edge, it.eol() will be true afterwards.
This method returns a reference to it.
Precondition: it.valid() returns true. |
Implementation
Creation of an iterator and all methods take constant time.