#include <mapper.hh>
This class template is used as a base class for all mapper implementations. It uses the Barton-Nackman trick to ensure conformity to the interface.
Template parameters are:
G
Type that is a model of Dune::Grid.MapperImp
Type that is a model of Dune::Mapper. Public Member Functions | |
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 i of codim cc of a 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 and at the same time the array index is returned. | |
template<int cc> | |
bool | contains (const typename G::Traits::template Codim< 0 >::Entity &e, int i, int &result) const |
Returns true if the subentity is contained in the index set and at the same time the array index is returned. | |
void | update () |
Reinitialize mapper after grid has been modified. |
int Dune::Mapper< G, MapperImp >::map | ( | const EntityType & | e | ) | const [inline] |
Map entity to array index.
e | Reference to codim cc entity. The codim is extracted from the entity. |
Reimplemented in Dune::MultipleCodimMultipleGeomTypeMapper< G, IS, Layout >, Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >, Dune::UniversalMapper< G, IDS >, Dune::MultipleCodimMultipleGeomTypeMapper< Dune::Grid< dim, dimworld, ct, GridFamily >, Dune::IndexSet< GridImp, IndexSetImp, IndexSetTypes >, Dune::VTKWriter< GridView >::P0Layout< dim > >, Dune::MultipleCodimMultipleGeomTypeMapper< G, G::Traits::LeafIndexSet, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< G, G::Traits::LevelIndexSet, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< Dune::Grid< dim, dimworld, ct, GridFamily >, Dune::IndexSet< GridImp, IndexSetImp, IndexSetTypes >, Dune::VTKWriter< GridView >::P1Layout< dim > >, Dune::SingleCodimSingleGeomTypeMapper< G, G::Traits::LevelIndexSet, c >, Dune::SingleCodimSingleGeomTypeMapper< G, G::Traits::LeafIndexSet, c >, Dune::UniversalMapper< G, G::Traits::GlobalIdSet >, and Dune::UniversalMapper< G, G::Traits::LocalIdSet >.
Referenced by Dune::Mapper< G, Dune::MultipleCodimMultipleGeomTypeMapper< G, IS, Layout > >::map().
int Dune::Mapper< G, MapperImp >::map | ( | const typename G::Traits::template Codim< 0 >::Entity & | e, | |
int | i | |||
) | const [inline] |
Map subentity i of codim cc of a 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 in Dune::MultipleCodimMultipleGeomTypeMapper< G, IS, Layout >, Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >, Dune::UniversalMapper< G, IDS >, Dune::MultipleCodimMultipleGeomTypeMapper< G, G::Traits::LeafIndexSet, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< G, G::Traits::LevelIndexSet, Layout >, Dune::SingleCodimSingleGeomTypeMapper< G, G::Traits::LevelIndexSet, c >, Dune::SingleCodimSingleGeomTypeMapper< G, G::Traits::LeafIndexSet, c >, Dune::UniversalMapper< G, G::Traits::GlobalIdSet >, and Dune::UniversalMapper< G, G::Traits::LocalIdSet >.
int Dune::Mapper< G, MapperImp >::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 in Dune::MultipleCodimMultipleGeomTypeMapper< G, IS, Layout >, Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >, Dune::UniversalMapper< G, IDS >, Dune::MultipleCodimMultipleGeomTypeMapper< Dune::Grid< dim, dimworld, ct, GridFamily >, Dune::IndexSet< GridImp, IndexSetImp, IndexSetTypes >, Dune::VTKWriter< GridView >::P0Layout< dim > >, Dune::MultipleCodimMultipleGeomTypeMapper< G, G::Traits::LeafIndexSet, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< G, G::Traits::LevelIndexSet, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< Dune::Grid< dim, dimworld, ct, GridFamily >, Dune::IndexSet< GridImp, IndexSetImp, IndexSetTypes >, Dune::VTKWriter< GridView >::P1Layout< dim > >, Dune::SingleCodimSingleGeomTypeMapper< G, G::Traits::LevelIndexSet, c >, Dune::SingleCodimSingleGeomTypeMapper< G, G::Traits::LeafIndexSet, c >, Dune::UniversalMapper< G, G::Traits::GlobalIdSet >, and Dune::UniversalMapper< G, G::Traits::LocalIdSet >.
Referenced by Dune::Mapper< G, Dune::MultipleCodimMultipleGeomTypeMapper< G, IS, Layout > >::size().
bool Dune::Mapper< G, MapperImp >::contains | ( | const EntityType & | e, | |
int & | result | |||
) | const [inline] |
Returns true if the entity is contained in the index set and at the same time the array index is returned.
[in] | e | Reference to entity |
[out] | result | Filled with array index if entity is contained |
Reimplemented in Dune::MultipleCodimMultipleGeomTypeMapper< G, IS, Layout >, Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >, Dune::UniversalMapper< G, IDS >, Dune::MultipleCodimMultipleGeomTypeMapper< Dune::Grid< dim, dimworld, ct, GridFamily >, Dune::IndexSet< GridImp, IndexSetImp, IndexSetTypes >, Dune::VTKWriter< GridView >::P0Layout< dim > >, Dune::MultipleCodimMultipleGeomTypeMapper< G, G::Traits::LeafIndexSet, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< G, G::Traits::LevelIndexSet, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< Dune::Grid< dim, dimworld, ct, GridFamily >, Dune::IndexSet< GridImp, IndexSetImp, IndexSetTypes >, Dune::VTKWriter< GridView >::P1Layout< dim > >, Dune::SingleCodimSingleGeomTypeMapper< G, G::Traits::LevelIndexSet, c >, Dune::SingleCodimSingleGeomTypeMapper< G, G::Traits::LeafIndexSet, c >, Dune::UniversalMapper< G, G::Traits::GlobalIdSet >, and Dune::UniversalMapper< G, G::Traits::LocalIdSet >.
Referenced by Dune::Mapper< G, Dune::MultipleCodimMultipleGeomTypeMapper< G, IS, Layout > >::contains().
bool Dune::Mapper< G, MapperImp >::contains | ( | const typename G::Traits::template Codim< 0 >::Entity & | e, | |
int | i, | |||
int & | result | |||
) | const [inline] |
Returns true if the subentity is contained in the index set and at the same time the array index is returned.
[in] | e | Reference to codim 0 entity |
[in] | i | subentity number |
[out] | result | Filled with array index if entity is contained |
Reimplemented in Dune::MultipleCodimMultipleGeomTypeMapper< G, IS, Layout >, Dune::SingleCodimSingleGeomTypeMapper< G, IS, c >, Dune::UniversalMapper< G, IDS >, Dune::MultipleCodimMultipleGeomTypeMapper< G, G::Traits::LeafIndexSet, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< G, G::Traits::LevelIndexSet, Layout >, Dune::SingleCodimSingleGeomTypeMapper< G, G::Traits::LevelIndexSet, c >, Dune::SingleCodimSingleGeomTypeMapper< G, G::Traits::LeafIndexSet, c >, Dune::UniversalMapper< G, G::Traits::GlobalIdSet >, and Dune::UniversalMapper< G, G::Traits::LocalIdSet >.