#include <scsgmapper.hh>
In this implementation of a mapper the entity set used as domain for the map consists of the entities of a given codimension c for all entities in the given index set. The index set may only contain entities of a single geometry type, otherwise an exception is thrown. This version is usually not used directly but is used to implement versions for leafwise and levelwise entity sets.
Template parameters are:
Public Member Functions | |
SingleCodimSingleGeomTypeMapper (const G &grid, const IS &indexset) | |
Construct mapper from grid and one fo its index sets. | |
template<class EntityType> | |
int | map (const EntityType &e) const |
Map entity to array index. | |
template<int cc> | |
int | map (const typename G::Traits::template Codim< 0 >::Entity &e, int i) const |
Map subentity of codim 0 entity to array index. | |
int | size () const |
Return total number of entities in the entity set managed by the mapper. | |
template<class EntityType> | |
bool | contains (const EntityType &e, int &result) const |
Returns true if the entity is contained in the index set. | |
template<int cc> | |
bool | contains (const typename G::Traits::template Codim< 0 >::Entity &e, int i, int &result) const |
Returns true if the entity is contained in the index set. | |
void | update () |
Recalculates map after mesh adaptation. |
Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >::SingleCodimSingleGeomTypeMapper | ( | const G & | grid, | |
const IS & | indexset | |||
) | [inline] |
int Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >::map | ( | const EntityType & | e | ) | const [inline] |
Map entity to array index.
e | Reference to codim cc entity, where cc is the template parameter of the function. |
Reimplemented from Dune::Mapper< G, MapperImp >.
Referenced by Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >::contains().
int Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >::map | ( | const typename G::Traits::template Codim< 0 >::Entity & | e, | |
int | i | |||
) | const [inline] |
Map subentity of codim 0 entity to array index.
e | Reference to codim 0 entity. | |
i | Number of codim cc subentity of e, where cc is the template parameter of the function. |
Reimplemented from Dune::Mapper< G, MapperImp >.
int Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >::size | ( | ) | const [inline] |
Return total number of entities in the entity set managed by the mapper.
This number can be used to allocate a vector of data elements associated with the entities of the set. In the parallel case this number is per process (i.e. it may be different in different processes).
Reimplemented from Dune::Mapper< G, MapperImp >.
bool Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >::contains | ( | const EntityType & | e, | |
int & | result | |||
) | const [inline] |
Returns true if the entity is contained in the index set.
e | Reference to entity | |
result | integer reference where corresponding index is stored if true |
Reimplemented from Dune::Mapper< G, MapperImp >.
References Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >::map().
bool Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >::contains | ( | const typename G::Traits::template Codim< 0 >::Entity & | e, | |
int | i, | |||
int & | result | |||
) | const [inline] |
Returns true if the entity is contained in the index set.
e | Reference to codim 0 entity | |
i | subentity number | |
result | integer reference where corresponding index is stored if true |
Reimplemented from Dune::Mapper< G, MapperImp >.