|
latest version v1.9 - last update 10 Apr 2010 |
|
The edge iterator iterates on all outgoing edges of a node. More...
#include <ltiAdjacencyGraph.h>
Public Member Functions | |
| edge_iterator () | |
| edge_iterator (const edge_iterator &other) | |
| edge_iterator & | operator++ () |
| edge_iterator | operator++ (int) |
| edge_iterator & | operator-- () |
| edge_iterator | operator-- (int) |
| bool | operator== (const edge_iterator &other) const |
| bool | operator!= (const edge_iterator &other) const |
| edge_data_type & | operator* () |
| const edge_data_type & | operator* () const |
| edge_iterator & | operator= (const edge_iterator &other) |
Protected Member Functions | |
| edge_iterator (const typename row_type::iterator &startPos, const id_type node) | |
| const row_type::iterator & | getPos () const |
| entry_type & | getRWEntry () const |
| const entry_type & | getEntry () const |
| id_type | getNode () const |
The edge iterator iterates on all outgoing edges of a node.
This class is similar to the usual iterators of the STL. The iterator allows you to access the data the edge, but you can also get the next node's id for other kind of processing.
Since you got this iterator, you should know somehow which is the starting edge node.
To access the edge's data, use the operator* (for example, if it is an edge_iterator, get the data with (*it) ). To get the ids of the nodes or the weight of the edge, use the corresponding methods in the adjacencyGraph class.
| lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::edge_iterator | ( | ) | [inline] |
Default constructor.
| lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::edge_iterator | ( | const edge_iterator & | other | ) | [inline] |
copy constructor
| lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::edge_iterator | ( | const typename row_type::iterator & | startPos, | |
| const id_type | node | |||
| ) | [inline, explicit, protected] |
protected constructor (for internal use only)
| startPos | map iterator | |
| node | id of the current node |
| const entry_type& lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::getEntry | ( | ) | const [inline, protected] |
get complete matrix element entry for internal use only!!!
| id_type lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::getNode | ( | ) | const [inline, protected] |
for internal use only!!!
Referenced by lti::adjacencyGraph< N, W, D, F, E >::const_edge_iterator::operator=().
| const row_type::iterator& lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::getPos | ( | ) | const [inline, protected] |
| entry_type& lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::getRWEntry | ( | ) | const [inline, protected] |
get complete matrix element entry for internal use only!!!
| bool lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::operator!= | ( | const edge_iterator & | other | ) | const [inline] |
compare if both pointed positions are different
| const edge_data_type& lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::operator* | ( | ) | const [inline] |
get pointed data
| edge_data_type& lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::operator* | ( | ) | [inline] |
get pointed data
| edge_iterator lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::operator++ | ( | int | ) | [inline] |
advance to next item
| edge_iterator& lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::operator++ | ( | ) | [inline] |
advance to next item
| edge_iterator lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::operator-- | ( | int | ) | [inline] |
recede to previous item
| edge_iterator& lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::operator-- | ( | ) | [inline] |
recede to previous item // prefix
| edge_iterator& lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::operator= | ( | const edge_iterator & | other | ) | [inline] |
copy member
| bool lti::adjacencyGraph< N, W, D, F, E >::edge_iterator::operator== | ( | const edge_iterator & | other | ) | const [inline] |
compare if both pointed positions are the same