3 #ifndef DUNE_UNIVERSALMAPPER_HH
4 #define DUNE_UNIVERSALMAPPER_HH
36 template <
typename G,
typename IDS>
38 public Mapper<G,UniversalMapper<G,IDS> >
40 typedef typename IDS::IdType IdType;
55 : g(grid), ids(idset), index()
67 template<
class EntityType>
68 int map (
const EntityType& e)
const
70 IdType
id = ids.id(e);
71 typename std::map<IdType,int>::iterator it = index.find(
id);
72 if (it!=index.end())
return it->second;
87 int map (
const typename G::Traits::template Codim<0>::Entity& e,
int i,
int cc)
const
89 IdType
id = ids.subId(e,i,cc);
90 typename std::map<IdType,int>::iterator it = index.find(
id);
91 if (it!=index.end())
return it->second;
117 template<
class EntityType>
118 bool contains (
const EntityType& e,
int& result)
const
120 IdType
id = ids.id(e);
121 typename std::map<IdType,int>::iterator it = index.find(
id);
139 bool contains (
const typename G::Traits::template Codim<0>::Entity& e,
int i,
int cc,
int& result)
const
141 IdType
id = ids.subId(e,i,cc);
142 typename std::map<IdType,int>::iterator it = index.find(
id);
169 mutable std::map<IdType,int> index;
182 template <
typename G>
190 :
UniversalMapper<G,typename G::Traits::GlobalIdSet>(grid,grid.globalIdSet())
201 template <
typename G>
209 :
UniversalMapper<G,typename G::Traits::LocalIdSet>(grid,grid.localIdSet())