Dune Core Modules (unstable)

Dune::Amg::MatrixGraph< M >::VertexIteratorT< C > Class Template Reference

The vertex iterator type of the graph. More...

#include <dune/istl/paamg/graph.hh>

Public Types

enum  { isMutable = std::is_same<C, MutableContainer>::value }
 
typedef std::remove_const< C >::type MutableContainer
 The mutable type of the container type.
 
typedef const std::remove_const< C >::type ConstContainer
 The constant type of the container type.
 

Public Member Functions

 VertexIteratorT (C *graph, const VertexDescriptor &current)
 Constructor. More...
 
 VertexIteratorT (const VertexDescriptor &current)
 Constructor for the end iterator. More...
 
VertexIteratorT< C > & operator++ ()
 Move to the next vertex. More...
 
bool operator!= (const VertexIteratorT< ConstContainer > &other) const
 Inequality operator.
 
bool operator== (const VertexIteratorT< ConstContainer > &other) const
 Equality operator.
 
bool operator!= (const VertexIteratorT< MutableContainer > &other) const
 Inequality operator.
 
bool operator== (const VertexIteratorT< MutableContainer > &other) const
 Equality operator.
 
WeightType & weight () const
 Access the weight of the vertex.
 
const VertexDescriptoroperator* () const
 Get the descriptor of the current vertex. More...
 
EdgeIteratorT< C > begin () const
 Get an iterator over all edges starting at the current vertex. More...
 
EdgeIteratorT< C > end () const
 Get an iterator over all edges starting at the current vertex. More...
 

Detailed Description

template<class M>
template<class C>
class Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >

The vertex iterator type of the graph.

Member Enumeration Documentation

◆ anonymous enum

template<class M >
template<class C >
anonymous enum
Enumerator
isMutable 

whether C is mutable.

Constructor & Destructor Documentation

◆ VertexIteratorT() [1/2]

template<class M >
template<class C >
Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::VertexIteratorT ( C *  graph,
const VertexDescriptor current 
)
explicit

Constructor.

Parameters
graphThe graph we are a vertex iterator for.
currentThe current vertex to position on.

◆ VertexIteratorT() [2/2]

template<class M >
template<class C >
Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::VertexIteratorT ( const VertexDescriptor current)
explicit

Constructor for the end iterator.

only operator== or operator!= may be called safely on an iterator constructed this way.

Parameters
currentThe current vertex to position on.

Member Function Documentation

◆ begin()

template<class M >
template<class C >
EdgeIteratorT< C > Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::begin ( ) const

Get an iterator over all edges starting at the current vertex.

Returns
Iterator position on the first edge to another vertex.

◆ end()

template<class M >
template<class C >
EdgeIteratorT< C > Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::end ( ) const

Get an iterator over all edges starting at the current vertex.

Returns
Iterator position on the first edge to another vertex.

◆ operator*()

template<class M >
template<class C >
const VertexDescriptor & Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::operator* ( ) const

Get the descriptor of the current vertex.

Returns
The index of the currently referenced vertex.

◆ operator++()

template<class M >
template<class C >
VertexIteratorT< C > & Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::operator++ ( )

Move to the next vertex.

Returns
This iterator positioned at the next vertex.

The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Dec 21, 23:30, 2024)