Loading...
Searching...
No Matches
Dune::Amg::MatrixGraph< M >::VertexIteratorT< C > Class Template Reference

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

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

Inheritance diagram for Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >:

## 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.
typedef std::conditional< std::is_same< C, typenamestd::remove_const< C >::type >::value &&C::mutableMatrix, typenameM::block_type, consttypenameM::block_type >::type | WeightType

## Public Member Functions

| VertexIteratorT (C *graph, const VertexDescriptor &current)
| Constructor.
| VertexIteratorT (const VertexDescriptor &current)
| Constructor for the end iterator.
| VertexIteratorT (const VertexIteratorT< MutableContainer > &other)
VertexIteratorT< C > & | operator++ ()
| Move to the next vertex.
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 VertexDescriptor & | operator* () const
| Get the descriptor of the current vertex.
EdgeIteratorT< C > | begin () const
| Get an iterator over all edges starting at the current vertex.
EdgeIteratorT< C > | end () const
| Get an iterator over all edges starting at the current vertex.

## Friends

class | VertexIteratorT< MutableContainer >
class | VertexIteratorT< ConstContainer >

## Detailed Description

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

The vertex iterator type of the graph.

## Member Typedef Documentation

## ConstContainer

template<class M>
template<class C>

typedef const std::remove_const<C>::type Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::ConstContainer

The constant type of the container type.

## MutableContainer

template<class M>
template<class C>

typedef std::remove_const<C>::type Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::MutableContainer

The mutable type of the container type.

## WeightType

template<class M>
template<class C>

typedef std::conditional<std::is_same<C,typenamestd::remove_const<C>::type>::value&&C::mutableMatrix,typenameM::block_type,consttypenameM::block_type>::type Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::WeightType

## Member Enumeration Documentation

## anonymous enum

template<class M>
template<class C>

anonymous enum

Enumerator
isMutable | whether C is mutable.

## Constructor & Destructor Documentation

## VertexIteratorT() [1/3]

template<class M>
template<class C>

Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::VertexIteratorT | ( | C * | graph,
|  | const VertexDescriptor & | current )

explicit

Constructor.

Parameters

  graph | The graph we are a vertex iterator for.
  current | The current vertex to position on.

## VertexIteratorT() [2/3]

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

  current | The current vertex to position on.

## VertexIteratorT() [3/3]

template<class M>
template<class C>

Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::VertexIteratorT | ( | const VertexIteratorT< MutableContainer > & | other | ) |

## 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!=() [1/2]

template<class M>
template<class C>

bool Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::operator!= | ( | const VertexIteratorT< ConstContainer > & | other | ) | const

Inequality operator.

## operator!=() [2/2]

template<class M>
template<class C>

bool Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::operator!= | ( | const VertexIteratorT< MutableContainer > & | other | ) | const

Inequality operator.

## 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.

## operator==() [1/2]

template<class M>
template<class C>

bool Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::operator== | ( | const VertexIteratorT< ConstContainer > & | other | ) | const

Equality operator.

## operator==() [2/2]

template<class M>
template<class C>

bool Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::operator== | ( | const VertexIteratorT< MutableContainer > & | other | ) | const

Equality operator.

## weight()

template<class M>
template<class C>

WeightType & Dune::Amg::MatrixGraph< M >::VertexIteratorT< C >::weight | ( |  | ) | const

Access the weight of the vertex.

## Friends And Related Symbol Documentation

## VertexIteratorT< ConstContainer >

template<class M>
template<class C>

friend class VertexIteratorT< ConstContainer >

friend

## VertexIteratorT< MutableContainer >

template<class M>
template<class C>

friend class VertexIteratorT< MutableContainer >

friend

The documentation for this class was generated from the following file:

- graph.hh