1#ifndef DUNE_FEM_DOFITERATOR_HH
2#define DUNE_FEM_DOFITERATOR_HH
19 template<
class DofImp,
class DofIteratorImp >
45 CHECK_AND_CALL_INTERFACE_IMPLEMENTATION(
asImp().
operator=( other ) );
55 CHECK_INTERFACE_IMPLEMENTATION( *
asImp() );
65 CHECK_INTERFACE_IMPLEMENTATION( *
asImp() );
71 CHECK_INTERFACE_IMPLEMENTATION(
asImp()[ n ] );
77 CHECK_INTERFACE_IMPLEMENTATION(
asImp()[ n ] );
89 CHECK_AND_CALL_INTERFACE_IMPLEMENTATON(
asImp().
operator++() );
101 CHECK_INTERFACE_IMPLEMENTATION(
asImp().
operator==( other ) );
102 return asImp().operator==( other );
113 CHECK_INTERFACE_IMPLEMENTATION(
asImp().
operator!=( other ) );
114 return asImp().operator!=( other );
123 CHECK_INTERFACE_IMPLEMENTATION(
asImp().
index() );
124 return asImp().index();
130 CHECK_AND_CALL_INTERFACE_IMPLEMENTATION(
asImp().
reset() );
140 template<
class DofImp,
class DofIteratorImp >
163 for(
int i = 0; i < n; ++i )
171 for(
int i = 0; i < n; ++i )
185 return !
asImp().operator==( other );
195 for( ; it != *
this; ++it )
207 template<
class DofIteratorImp >
217 typedef typename WrappedDofIteratorType :: DofType
DofType;
270 return (
it_ == other.
it_);
276 return (
it_ != other.
it_);
Definition: bindguard.hh:11
interface for DoF iterators of discrete functions
Definition: dofiterator.hh:23
DofType & operator*()
obtain reference to current DoF
Definition: dofiterator.hh:53
DofIteratorImp DofIteratorType
type of the implementation (Barton-Nackman)
Definition: dofiterator.hh:29
DofImp DofType
type of the DoFs
Definition: dofiterator.hh:26
const DofImp & operator[](const int n) const
Definition: dofiterator.hh:69
bool operator==(const DofIteratorType &other) const
check for equality
Definition: dofiterator.hh:99
DofIteratorType & operator=(const DofIteratorType &other)
assign another DoF iterator to this one
Definition: dofiterator.hh:43
bool operator!=(const DofIteratorType &other) const
check for inequality
Definition: dofiterator.hh:111
int index() const
get the global number of the current DoF
Definition: dofiterator.hh:121
DofIteratorType & operator++()
increment the iterator
Definition: dofiterator.hh:87
void reset()
reset iterator to the first position
Definition: dofiterator.hh:128
default implementation of DofManagerInterface
Definition: dofiterator.hh:143
int index() const
Definition: dofiterator.hh:189
bool operator!=(const DofIteratorType &other) const
Definition: dofiterator.hh:183
const DofImp & operator[](const int n) const
Definition: dofiterator.hh:159
DofIteratorImp DofIteratorType
type of the implementation (Barton-Nackman)
Definition: dofiterator.hh:149
DofImp DofType
type of the DoFs
Definition: dofiterator.hh:146
Definition: dofiterator.hh:211
ConstDofIteratorDefault(const ThisType &other)
Definition: dofiterator.hh:231
const DofType & operator*() const
obtain reference to current DoF
Definition: dofiterator.hh:244
ThisType & operator++()
increment the iterator
Definition: dofiterator.hh:261
DofIteratorDefault< DofType, ThisType > BaseType
Definition: dofiterator.hh:220
const DofType & operator[](const int n) const
Definition: dofiterator.hh:249
void reset()
reset iterator to the first position
Definition: dofiterator.hh:280
bool operator!=(const ThisType &other) const
check for inequality
Definition: dofiterator.hh:274
DofIteratorImp WrappedDofIteratorType
type of the wrapped DoF iterator
Definition: dofiterator.hh:214
ConstDofIteratorDefault(const WrappedDofIteratorType &it)
Definition: dofiterator.hh:226
WrappedDofIteratorType it_
Definition: dofiterator.hh:223
const DofType * vector() const
Definition: dofiterator.hh:286
ConstDofIteratorDefault< WrappedDofIteratorType > ThisType
Definition: dofiterator.hh:219
bool operator==(const ThisType &other) const
check for equality
Definition: dofiterator.hh:268
int index() const
get the global number of the current DoF
Definition: dofiterator.hh:255
WrappedDofIteratorType::DofType DofType
type of the DoFs
Definition: dofiterator.hh:217
const ThisType & operator=(const ThisType &other)
assign another DoF iterator to this one
Definition: dofiterator.hh:237
Definition: bartonnackmaninterface.hh:17
const DofIteratorImp & asImp() const
Definition: bartonnackmaninterface.hh:37