3 #ifndef DUNE_GRID_ENTITY_HH
4 #define DUNE_GRID_ENTITY_HH
6 #include <dune/common/typetraits.hh>
8 #include "entitypointer.hh"
55 template<
int cd,
int dim,
class Gr
idImp,
template<
int,
int,
class>
class EntityImp>
58 #if DUNE_GRID_EXPERIMENTAL_GRID_EXTENSIONS
64 GridImp::
dimension, GridImp::dimensionworld,
65 typename GridImp::ctype,
66 typename GridImp::GridFamily> ;
92 typedef typename GridImp::template Codim<cd>::Geometry
Geometry;
95 typedef typename GridImp::template Codim<cd>::EntitySeed
EntitySeed;
195 template<
int dim,
class Gr
idImp,
template<
int,
int,
class>
class EntityImp>
198 #if DUNE_GRID_EXPERIMENTAL_GRID_EXTENSIONS
204 GridImp::
dimension, GridImp::dimensionworld,
205 typename GridImp::ctype,
206 typename GridImp::GridFamily> ;
232 typedef typename GridImp::template Codim<0>::Geometry
Geometry;
235 typedef typename GridImp::template Codim<0>::EntitySeed
EntitySeed;
338 template<
int codim >
341 return realEntity.template subEntity< codim >( i );
358 DUNE_DEPRECATED_MSG("Use LeafGridView.ibegin(
Entity) instead.")
373 DUNE_DEPRECATED_MSG("Use LeafGridView.iend(
Entity) instead.")
392 DUNE_DEPRECATED_MSG("Use LevelGridView.ibegin(
Entity) instead.")
407 DUNE_DEPRECATED_MSG("Use LevelGridView.iend(
Entity) instead.")
429 bool hasFather ()
const
551 template<
int cd,
int dim,
class Gr
idImp,
template<
int,
int,
class>
class EntityImp>
583 EntityImp<cd,dim,GridImp>& asImp ()
585 return static_cast<EntityImp<cd,dim,GridImp>&
>(*this);
587 const EntityImp<cd,dim,GridImp>& asImp ()
const
589 return static_cast<const EntityImp<cd,dim,GridImp>&
>(*this);
604 template<
int dim,
class Gr
idImp,
template<
int,
int,
class>
class EntityImp>
632 bool isRegular()
const {
return true; }
641 bool isNew ()
const {
return false; }
651 bool hasBoundaryIntersections ()
const
655 IntersectionIterator end = asImp().ilevelend();
656 for(IntersectionIterator it = asImp().ilevelbegin(); it != end; ++it)
658 if( it->boundary() )
return true;
664 IntersectionIterator end = asImp().ileafend();
665 for(IntersectionIterator it = asImp().ileafbegin(); it != end; ++it)
667 if( it->boundary() )
return true;
676 EntityImp<0,dim,GridImp>& asImp () {
return static_cast<EntityImp<0,dim,GridImp>&
>(*this); }
677 const EntityImp<0,dim,GridImp>& asImp ()
const {
return static_cast<const EntityImp<0,dim,GridImp>&
>(*this); }
682 #endif // DUNE_GRID_ENTITY_HH