5#ifndef DUNE_GRID_COMMON_ENTITYITERATOR_HH
6#define DUNE_GRID_COMMON_ENTITYITERATOR_HH
30 template<
int codim,
class Gr
id,
class IteratorImp >
57 typedef typename Grid::template Codim< codim >::Entity
Entity;
60 typedef typename std::conditional<
61 std::is_lvalue_reference<
104 typename std::conditional<
105 std::is_lvalue_reference<
117 decltype(handle_proxy_member_access(
realIterator.dereference()))
120 return handle_proxy_member_access(
realIterator.dereference());
129 return this->realIterator.equals(rhs.realIterator);
135 return !this->realIterator.equals(rhs.realIterator);
160 template<
int codim,
class Gr
id,
class IteratorImp >
161 struct iterator_traits<
Dune::EntityIterator< codim, Grid, IteratorImp > >
Include standard header files.
Definition agrid.hh:60
interface class for an iterator over grid entities
Definition common/grid.hh:344
Implementation & impl()
access to the underlying implementation
Definition common/entityiterator.hh:49
IteratorImp Implementation
type of underlying implementation
Definition common/entityiterator.hh:42
IteratorImp realIterator
Definition common/entityiterator.hh:34
EntityIterator(const IteratorImp &imp)
copy constructor from implementation
Definition common/entityiterator.hh:148
const Entity & operator*() const
Dereferencing operator.
Grid::template Codim< codim >::Entity Entity
Definition common/entityiterator.hh:57
bool operator!=(const EntityIterator &rhs) const
Checks for inequality.
Definition common/entityiterator.hh:133
EntityIterator()
default construct (undefined) iterator
Definition common/entityiterator.hh:144
EntityIterator & operator++()
prefix increment operator
Definition common/entityiterator.hh:69
std::conditional< std::is_lvalue_reference< decltype(realIterator.dereference())>::value, constEntity &, Entity >::type Reference
Type of the reference used when dereferencing the Ptr.
Definition common/entityiterator.hh:66
const Implementation & impl() const
access to the underlying implementation
Definition common/entityiterator.hh:55
bool operator==(const EntityIterator &rhs) const
Checks for equality.
Definition common/entityiterator.hh:127
const Entity & operator->() const
Pointer operator.
forward_iterator_tag iterator_category
Definition common/entityiterator.hh:167
ptrdiff_t difference_type
Definition common/entityiterator.hh:163
const IteratorImp::Entity value_type
Definition common/entityiterator.hh:164
value_type * pointer
Definition common/entityiterator.hh:165
value_type & reference
Definition common/entityiterator.hh:166