Go to the documentation of this file.
3 #ifndef DUNE_GRID_YASPGRIDPERSISTENTCONTAINER_HH
4 #define DUNE_GRID_YASPGRIDPERSISTENTCONTAINER_HH
15 #include "../yaspgrid.hh"
31 template<
typename Gr
id>
32 class YaspPersistentContainerIndex
37 : _grid(grid), _codim(codim)
46 template<
class Entity>
50 std::size_t level = e.
level();
51 return _grid.indexsets[level]->template index<cc>(e) + _offsets[level];
55 template<
class Entity >
60 std::size_t level = e.
level();
61 return _grid.indexsets[level]->template subIndex<cc>(e,i,codim) + _offsets[level];
65 std::size_t
size (
int codim)
const
67 if (_grid.indexsets.
size()+1 != _offsets.size())
69 return _offsets.back();
73 void recomputeOffsets()
const
75 _offsets.resize(_grid.indexsets.
size()+1,0);
77 for (std::size_t i=0; i<_grid.indexsets.
size(); i++)
78 _offsets[i+1] = _offsets[i] + _grid.indexsets[i]->
size(_codim);
83 mutable std::vector<std::size_t> _offsets;
92 template<
int dim,
class CoordCont,
class T>
100 YaspPersistentContainerIndex< const YaspGrid<dim, CoordCont> >,
114 Base(*this, codim, value)
120 #endif // end DUNE_GRID_YASPGRIDPERSISTENTCONTAINER_HH
Include standard header files.
Definition: agrid.hh:59
std::size_t IndexType
The type used for the indices.
Definition: yaspgridpersistentcontainer.hh:43
Know your own codimension.
Definition: common/entity.hh:104
int size(int level, int codim) const
Return number of grid entities of a given codim on a given level in this process.
Definition: common/grid.hh:542
Definition: yaspgrid.hh:67
A class for storing data during an adaptation cycle.
Definition: utility/persistentcontainer.hh:18
Base::Grid Grid
Definition: yaspgridpersistentcontainer.hh:107
std::size_t size(int codim) const
Return total number of entities of given geometry type in entity set .
Definition: yaspgridpersistentcontainer.hh:65
Wrapper class for entities.
Definition: common/entity.hh:61
PersistentContainer(const Grid &grid, int codim, const Value &value=Value())
Definition: yaspgridpersistentcontainer.hh:112
const Grid & grid() const
Definition: persistentcontainermap.hh:112
Grid abstract base class.
Definition: common/grid.hh:373
[ provides Dune::Grid ]
Definition: yaspgrid.hh:56
Size size() const
Definition: persistentcontainermap.hh:84
IndexType subIndex(const Entity &e, int i, unsigned int codim) const
Map a subentity to an index.
Definition: yaspgridpersistentcontainer.hh:56
YaspPersistentContainerIndex(const Grid &grid, int codim)
Definition: yaspgridpersistentcontainer.hh:36
int level() const
The level of this entity.
Definition: common/entity.hh:125
IndexType index(const Entity &e) const
Map entity to index. The result of calling this method with an entity that is not in the index set is...
Definition: yaspgridpersistentcontainer.hh:47
G Grid
Definition: persistentcontainervector.hh:53
Vector::value_type Value
Definition: persistentcontainervector.hh:55
Base::Value Value
Definition: yaspgridpersistentcontainer.hh:108
vector-based implementation of the PersistentContainer
Definition: persistentcontainervector.hh:48
Base::Value Value
Definition: utility/persistentcontainer.hh:25