|
dune-istl 2.12-git
|
Loading...
Searching...
No Matches
Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C > Class Template Reference
Iterator over all edges starting from a vertex. 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. | |
| typedef std::conditional< isMutable &&C::mutableMatrix, typenameMatrix::row_type::Iterator, typenameMatrix::row_type::ConstIterator >::type | ColIterator |
| The column iterator of the matrix we use. | |
| typedef std::conditional< isMutable &&C::mutableMatrix, typenameM::block_type, consttypenameM::block_type >::type | Weight |
| The matrix block type we use as weights. | |
| 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 | |
| EdgeIteratorT (const VertexDescriptor &source, const ColIterator &block, const ColIterator &end, const EdgeDescriptor &edge) | |
| Constructor. | |
| EdgeIteratorT (const ColIterator &block) | |
| Constructor for the end iterator. | |
| template<class C1 > | |
| EdgeIteratorT (const EdgeIteratorT< C1 > &other) | |
| Copy Constructor. | |
| WeightType & | weight () const |
| Access the edge weight. | |
| EdgeIteratorT< C > & | operator++ () |
| preincrement operator. | |
| bool | operator!= (const EdgeIteratorT< typename std::remove_const< C >::type > &other) const |
| Inequality operator. | |
| bool | operator!= (const EdgeIteratorT< const typename std::remove_const< C >::type > &other) const |
| Inequality operator. | |
| bool | operator== (const EdgeIteratorT< typename std::remove_const< C >::type > &other) const |
| Equality operator. | |
| bool | operator== (const EdgeIteratorT< const typename std::remove_const< C >::type > &other) const |
| Equality operator. | |
| VertexDescriptor | target () const |
| The index of the target vertex of the current edge. | |
| VertexDescriptor | source () const |
| The index of the source vertex of the current edge. | |
| const EdgeDescriptor & | operator* () const |
| Get the edge descriptor. | |
| const EdgeDescriptor * | operator-> () const |
| Get the edge descriptor. | |
Friends | |
| class | EdgeIteratorT< MutableContainer > |
| class | EdgeIteratorT< ConstContainer > |
Detailed Description
Iterator over all edges starting from a vertex.
Member Typedef Documentation
◆ ColIterator
template<class M >
template<class C >
| typedef std::conditional<isMutable&&C::mutableMatrix,typenameMatrix::row_type::Iterator,typenameMatrix::row_type::ConstIterator>::type Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::ColIterator |
The column iterator of the matrix we use.
◆ ConstContainer
template<class M >
template<class C >
| typedef const std::remove_const<C>::type Dune::Amg::MatrixGraph< M >::EdgeIteratorT< 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 >::EdgeIteratorT< C >::MutableContainer |
The mutable type of the container type.
◆ Weight
template<class M >
template<class C >
| typedef std::conditional<isMutable&&C::mutableMatrix,typenameM::block_type,consttypenameM::block_type>::type Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::Weight |
The matrix block type we use as weights.
◆ 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 >::EdgeIteratorT< C >::WeightType |
Member Enumeration Documentation
◆ anonymous enum
Constructor & Destructor Documentation
◆ EdgeIteratorT() [1/3]
template<class M >
template<class C >
| Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::EdgeIteratorT | ( | const VertexDescriptor & | source, |
| const ColIterator & | block, | ||
| const ColIterator & | end, | ||
| const EdgeDescriptor & | edge | ||
| ) |
Constructor.
- Parameters
-
source The source vertex of the edges. block The matrix column block the iterator is initialized to, end The end iterator of the matrix row. edge The edge descriptor of the current edge.
◆ EdgeIteratorT() [2/3]
template<class M >
template<class C >
| Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::EdgeIteratorT | ( | const ColIterator & | block | ) |
Constructor for the end iterator.
Variables not needed by operator== or operator!= will not be initialized.
- Parameters
-
block The matrix column block the iterator is initialized to.
◆ EdgeIteratorT() [3/3]
template<class M >
template<class C >
template<class C1 >
| Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::EdgeIteratorT | ( | const EdgeIteratorT< C1 > & | other | ) |
Copy Constructor.
- Parameters
-
other The iterator to copy.
Member Function Documentation
◆ operator!=() [1/2]
template<class M >
template<class C >
| bool Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::operator!= | ( | const EdgeIteratorT< const typename std::remove_const< C >::type > & | other | ) | const |
Inequality operator.
◆ operator!=() [2/2]
template<class M >
template<class C >
| bool Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::operator!= | ( | const EdgeIteratorT< typename std::remove_const< C >::type > & | other | ) | const |
Inequality operator.
◆ operator*()
template<class M >
template<class C >
| const EdgeDescriptor & Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::operator* | ( | ) | const |
Get the edge descriptor.
◆ operator++()
template<class M >
template<class C >
| EdgeIteratorT< C > & Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::operator++ | ( | ) |
preincrement operator.
◆ operator->()
template<class M >
template<class C >
| const EdgeDescriptor * Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::operator-> | ( | ) | const |
Get the edge descriptor.
◆ operator==() [1/2]
template<class M >
template<class C >
| bool Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::operator== | ( | const EdgeIteratorT< const typename std::remove_const< C >::type > & | other | ) | const |
Equality operator.
◆ operator==() [2/2]
template<class M >
template<class C >
| bool Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::operator== | ( | const EdgeIteratorT< typename std::remove_const< C >::type > & | other | ) | const |
Equality operator.
◆ source()
template<class M >
template<class C >
| VertexDescriptor Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::source | ( | ) | const |
The index of the source vertex of the current edge.
◆ target()
template<class M >
template<class C >
| VertexDescriptor Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::target | ( | ) | const |
The index of the target vertex of the current edge.
◆ weight()
template<class M >
template<class C >
| WeightType & Dune::Amg::MatrixGraph< M >::EdgeIteratorT< C >::weight | ( | ) | const |
Access the edge weight.
Friends And Related Symbol Documentation
◆ EdgeIteratorT< ConstContainer >
◆ EdgeIteratorT< MutableContainer >
The documentation for this class was generated from the following file:
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8