3 #ifndef DUNE_POLYHEDRALGRID_INTERSECTIONITERATOR_HH 4 #define DUNE_POLYHEDRALGRID_INTERSECTIONITERATOR_HH 6 #include <dune/grid/polyhedralgrid/intersection.hh> 14 template<
class Gr
id >
20 typedef typename Grid::Traits Traits;
21 typedef typename Traits::template Codim<0>::Entity Element;
22 static const bool isLeafIntersection =
true;
25 typedef typename Traits::template Codim<0>::EntitySeed EntitySeed;
27 typedef typename std::conditional< isLeafIntersection,
28 typename Traits :: LeafIntersection,
29 typename Traits :: LevelIntersection > :: type Intersection ;
30 typedef typename Intersection :: Implementation IntersectionImpl ;
32 typedef typename Traits :: ExtraData ExtraData;
34 typedef typename Grid::template Codim< 0 >::EntityPointer EntityPointer;
37 : intersection_( IntersectionImpl( data, seed, isBegin?0:data->subEntities(seed, 1) ) )
41 : intersection_( IntersectionImpl( other.intersectionImpl()) )
46 intersectionImpl() = other.intersectionImpl();
50 bool equals (
const This &other )
const 52 return intersectionImpl().equals( other.intersectionImpl() );
57 ++(intersectionImpl()).intersectionIdx_;
60 const Intersection &dereference ()
const 65 ExtraData data()
const {
return intersectionImpl().data(); }
68 IntersectionImpl &intersectionImpl ()
const 70 return Grid::getRealImplementation( intersection_ );
73 mutable Intersection intersection_;
78 #endif // #ifndef DUNE_POLYHEDRALGRID_INTERSECTIONITERATOR_HH Holds the implementation of the CpGrid as a pimple.
Definition: OpmParserIncludes.hpp:42
Definition: intersectioniterator.hh:15