4#ifndef DUNE_GRID_IO_FILE_VTK_POINTITERATOR_HH
5#define DUNE_GRID_IO_FILE_VTK_POINTITERATOR_HH
10#include <dune/common/iteratorfacades.hh>
11#include <dune/common/typetraits.hh>
47 template<
typename CellIterator,
typename IS>
49 :
public ForwardIteratorFacade
50 < PointIterator<CellIterator, IS>,
51 const Corner<typename std::remove_const<typename std::iterator_traits<
52 CellIterator>::value_type>::type>,
53 const Corner<typename std::remove_const<typename std::iterator_traits<
54 CellIterator>::value_type>::type>&,
55 typename std::iterator_traits<CellIterator>::difference_type>
58 typedef VTK::Corner<
typename std::remove_const<
typename std::iterator_traits<
59 CellIterator>::value_type>::type>
Corner;
65 typedef typename std::iterator_traits<CellIterator>::difference_type
68 static const unsigned mydim = std::iterator_traits<CellIterator>::
69 value_type::mydimension;
77 std::vector<bool> seen;
89 return cornerit == other.cornerit;
94 typename IS::IndexType index =
95 is->subIndex(cornerit->cell(), cornerit->duneIndex(),
mydim);
112 : cornerit(cellit, cellend), is(&is_), seen(is->size(
mydim), false)
119 : cornerit(cellend_), is(0)
Include standard header files.
Definition agrid.hh:60
simple class representing a corner of a cell
Definition corner.hh:23
iterate over the corners of some cell range
Definition corneriterator.hh:37
bool isDereferencable() const
Definition corneriterator.hh:67
iterate over the points of some corner range
Definition pointiterator.hh:56
PointIterator(const CellIterator &cellit, const CellIterator &cellend, const IS &is_)
construct a CornerIterator
Definition pointiterator.hh:110
void increment()
Definition pointiterator.hh:92
VTK::Corner< typename std::remove_const< typename std::iterator_traits< CellIterator >::value_type >::type > Corner
Definition pointiterator.hh:59
Reference dereference() const
Definition pointiterator.hh:80
std::iterator_traits< CellIterator >::difference_type DifferenceType
Definition pointiterator.hh:66
static const unsigned mydim
Definition pointiterator.hh:68
PointIterator(const CellIterator &cellend_)
construct a CornerIterator
Definition pointiterator.hh:118
bool equals(const DerivedType &other) const
Definition pointiterator.hh:88
PointIterator< CellIterator, IS > DerivedType
Definition pointiterator.hh:62
const Corner Value
Definition pointiterator.hh:63
Value & Reference
Definition pointiterator.hh:64
bool isDereferencable() const
Definition pointiterator.hh:84