dune-grid  2.3.0
common/leafiterator.hh
Go to the documentation of this file.
1 // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 // vi: set et ts=4 sw=2 sts=2:
3 #ifndef DUNE_GRID_LEAFITERATOR_HH
4 #define DUNE_GRID_LEAFITERATOR_HH
5 
6 #include <cstddef>
7 #include <iterator>
8 
11 
12 namespace Dune
13 {
14 
15  /**********************************************************************/
26  template<int codim, PartitionIteratorType pitype, class GridImp,
27  template<int,PartitionIteratorType,class> class LeafIteratorImp>
29  : public EntityIterator< codim, GridImp, LeafIteratorImp< codim, pitype, GridImp > >
30  {
32 
33  public:
36  {
37  ++static_cast< Base & >( *this );
38  this->realIterator.increment();
39  return *this;
40  }
41 
42  };
43 
44 }
45 
46 namespace std {
47 
48  template
49  < int codim, Dune::PartitionIteratorType pitype, class GridImp,
50  template<int,Dune::PartitionIteratorType,class> class LeafIteratorImp>
51  struct iterator_traits<Dune::LeafIterator<codim, pitype, GridImp,
52  LeafIteratorImp> > {
53  typedef ptrdiff_t difference_type;
54  typedef const typename Dune::LeafIterator<codim, pitype, GridImp,
55  LeafIteratorImp>::Entity value_type;
56  typedef value_type* pointer;
58  typedef forward_iterator_tag iterator_category;
59  };
60 
61 } // namespace std
62 
63 #endif // DUNE_GRID_LEAFITERATOR_HH
PartitionIteratorType
Parameter to be used for the parallel level- and leaf iterators.
Definition: gridenums.hh:130
const Dune::LeafIterator< codim, pitype, GridImp, LeafIteratorImp >::Entity value_type
Definition: common/leafiterator.hh:55
LeafIterator & operator++()
Preincrement operator.
Definition: common/leafiterator.hh:35
interface class for an iterator over grid entitiesAn entity iterator is an iterator over a subset of ...
Definition: entityiterator.hh:35
Implementation realIterator
Definition: common/entitypointer.hh:116
Enables iteration over all leaf entities of a codimension zero of a grid. See also the documentation ...
Definition: common/leafiterator.hh:28
forward_iterator_tag iterator_category
Definition: common/leafiterator.hh:58