dune-grid
2.3.1
|
#include <dune/grid/common/mapper.hh>
Public Member Functions | |
template<class EntityType > | |
int | map (const EntityType &e) const |
Map entity to array index. | |
int | map (const typename G::Traits::template Codim< 0 >::Entity &e, int i, unsigned int codim) 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. | |
bool | contains (const typename G::Traits::template Codim< 0 >::Entity &e, int i, int cc, 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. |
Mapper interface.
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.
|
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< GV, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< G::LeafGridView, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< GV, MCMGVertexLayout >, Dune::MultipleCodimMultipleGeomTypeMapper< GV, MCMGElementLayout >, Dune::MultipleCodimMultipleGeomTypeMapper< G::LevelGridView, Layout >, Dune::UniversalMapper< G, IDS >, Dune::UniversalMapper< G, G::Traits::GlobalIdSet >, Dune::UniversalMapper< G, G::Traits::LocalIdSet >, Dune::SingleCodimSingleGeomTypeMapper< GV, c >, Dune::SingleCodimSingleGeomTypeMapper< G::LeafGridView, c >, and Dune::SingleCodimSingleGeomTypeMapper< G::LevelGridView, c >.
Referenced by Dune::Mapper< G, UniversalMapper< G, G::Traits::GlobalIdSet > >::contains().
|
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 |
[in] | cc | subentity codim |
[out] | result | Filled with array index if entity is contained |
Reimplemented in Dune::UniversalMapper< G, IDS >, Dune::UniversalMapper< G, G::Traits::GlobalIdSet >, and Dune::UniversalMapper< G, G::Traits::LocalIdSet >.
|
inline |
Map entity to array index.
e | Reference to codim cc entity. The codim is extracted from the entity. |
Reimplemented in Dune::MultipleCodimMultipleGeomTypeMapper< GV, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< G::LeafGridView, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< GV, MCMGVertexLayout >, Dune::MultipleCodimMultipleGeomTypeMapper< GV, MCMGElementLayout >, Dune::MultipleCodimMultipleGeomTypeMapper< G::LevelGridView, Layout >, Dune::UniversalMapper< G, IDS >, Dune::UniversalMapper< G, G::Traits::GlobalIdSet >, Dune::UniversalMapper< G, G::Traits::LocalIdSet >, Dune::SingleCodimSingleGeomTypeMapper< GV, c >, Dune::SingleCodimSingleGeomTypeMapper< G::LeafGridView, c >, and Dune::SingleCodimSingleGeomTypeMapper< G::LevelGridView, c >.
Referenced by Dune::Mapper< G, UniversalMapper< G, G::Traits::GlobalIdSet > >::map().
|
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. |
codim | codimension of subentity of e |
|
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< GV, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< G::LeafGridView, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< GV, MCMGVertexLayout >, Dune::MultipleCodimMultipleGeomTypeMapper< GV, MCMGElementLayout >, Dune::MultipleCodimMultipleGeomTypeMapper< G::LevelGridView, Layout >, Dune::UniversalMapper< G, IDS >, Dune::UniversalMapper< G, G::Traits::GlobalIdSet >, Dune::UniversalMapper< G, G::Traits::LocalIdSet >, Dune::SingleCodimSingleGeomTypeMapper< GV, c >, Dune::SingleCodimSingleGeomTypeMapper< G::LeafGridView, c >, and Dune::SingleCodimSingleGeomTypeMapper< G::LevelGridView, c >.
Referenced by Dune::Mapper< G, UniversalMapper< G, G::Traits::GlobalIdSet > >::size().
|
inline |
Reinitialize mapper after grid has been modified.
Reimplemented in Dune::MultipleCodimMultipleGeomTypeMapper< GV, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< G::LeafGridView, Layout >, Dune::MultipleCodimMultipleGeomTypeMapper< GV, MCMGVertexLayout >, Dune::MultipleCodimMultipleGeomTypeMapper< GV, MCMGElementLayout >, Dune::MultipleCodimMultipleGeomTypeMapper< G::LevelGridView, Layout >, Dune::UniversalMapper< G, IDS >, Dune::UniversalMapper< G, G::Traits::GlobalIdSet >, Dune::UniversalMapper< G, G::Traits::LocalIdSet >, Dune::SingleCodimSingleGeomTypeMapper< GV, c >, Dune::SingleCodimSingleGeomTypeMapper< G::LeafGridView, c >, and Dune::SingleCodimSingleGeomTypeMapper< G::LevelGridView, c >.
Referenced by Dune::Mapper< G, UniversalMapper< G, G::Traits::GlobalIdSet > >::update().