3 #ifndef DUNE_GEOGRID_IDSET_HH
4 #define DUNE_GEOGRID_IDSET_HH
17 template<
class Gr
id,
class HostIdSet >
19 :
public Dune::IdSet< Grid, IdSet< Grid, HostIdSet >, typename HostIdSet::IdType >
24 typedef typename remove_const< Grid >::type::Traits Traits;
27 typedef typename HostIdSet::IdType
IdType;
35 explicit IdSet (
const HostIdSet &hostIdSet )
36 : hostIdSet_( &hostIdSet )
40 : hostIdSet_( other.hostIdSet_ )
45 hostIdSet_ = other.hostIdSet_;
50 IdType id (
const typename Traits::template Codim< codim >::Entity &entity )
const
52 return Grid::getRealImplementation( entity ).id( hostIdSet() );
55 template<
class Entity >
58 return id< Entity::codimension >( entity );
61 IdType subId (
const typename Traits::template Codim< 0 >::Entity &entity,
int i,
unsigned int codim )
const
63 return hostIdSet().subId( Grid::template getHostEntity< 0 >( entity ), i, codim );
66 operator bool ()
const {
return bool( hostIdSet_ ); }
69 const HostIdSet &hostIdSet ()
const
75 const HostIdSet *hostIdSet_;
82 #endif // #ifndef DUNE_GEOGRID_IDSET_HH
const This & operator=(const This &other)
Definition: idset.hh:43
HostIdSet::IdType IdType
Definition: idset.hh:27
IdType id(const Entity &entity) const
Definition: idset.hh:56
IdType subId(const typename remove_const< GridImp >::type::Traits::template Codim< 0 >::Entity &e, int i, unsigned int codim) const
Get id of subentity i of co-dimension codim of a co-dimension 0 entity.
Definition: indexidset.hh:430
DUNE-conform implementation of the entityThis class merely changes the template parameters of the ent...
Definition: geometrygrid/entity.hh:49
Provides base classes for index and id sets.
IdSet(const This &other)
Definition: idset.hh:39
IdType id(const typename Traits::template Codim< codim >::Entity &entity) const
Definition: idset.hh:50
IdSet()
Definition: idset.hh:31
IdType subId(const typename Traits::template Codim< 0 >::Entity &entity, int i, unsigned int codim) const
Definition: idset.hh:61
IdSet(const HostIdSet &hostIdSet)
Definition: idset.hh:35
Id Set Interface.
Definition: common/grid.hh:360