1#ifndef DUNE_MULTIDOMAINGRID_ENTITY_HH
2#define DUNE_MULTIDOMAINGRID_ENTITY_HH
4#include <dune/common/deprecated.hh>
6#include <dune/grid/common/entity.hh>
7#include <dune/grid/common/gridenums.hh>
13template<
int codim,
int dim,
typename Gr
idImp>
16template<
typename Gr
idImp>
19template<
typename Gr
idImp>
22template<
typename Gr
idImp>
25template<
typename,
typename>
28template<
typename HostGr
id,
typename MDGr
idTraits>
38template<
typename HostES>
42 typedef HostES HostEntitySeed;
44 template<
typename,
typename>
47 template<
int,
int,
typename>
52 static const std::size_t
codimension = HostEntitySeed::codimension;
76template<
int codim,
int dim,
typename Gr
idImp>
78 public EntityDefaultImplementation<codim,dim,GridImp,EntityWrapper>
81 template<
typename,
typename>
84 typedef typename GridImp::HostGrid::Traits::template Codim<codim>::Entity HostEntity;
88 typedef typename GridImp::template Codim<codim>::Geometry
Geometry;
100 : _hostEntity(std::move(e))
104 return _hostEntity.level();
108 return _hostEntity.partitionType();
112 return _hostEntity.subEntities(codimSubEntitiy);
116 return Geometry(_hostEntity.geometry());
130 HostEntity _hostEntity;
141template<
int codim,
int dim,
typename Gr
idImp>
148 template<
typename,
typename>
158template<
int dim,
typename Gr
idImp>
165 template<
typename,
typename>
191 typename GridImp::template Codim<cc>::Entity
subEntity(
int i)
const {
195 typename GridImp::template Codim<0>::Entity
father()
const {
226 typename GridImp::HostGrid::LevelGridView::IntersectionIterator
235 typename GridImp::HostGrid::LevelGridView::IntersectionIterator
244 typename GridImp::HostGrid::LeafGridView::IntersectionIterator
253 typename GridImp::HostGrid::LeafGridView::IntersectionIterator
269 return hostEntity().hasBoundaryIntersections();
Definition: multidomaingrid.hh:8
@ other
Definition: multidomaingrid/multidomaingrid.hh:1292
Definition: entity.hh:144
Definition: hierarchiciterator.hh:13
Definition: intersectioniterator.hh:16
A meta grid for dividing an existing DUNE grid into subdomains that can be accessed as a grid in thei...
Definition: multidomaingrid/multidomaingrid.hh:241
Definition: gridview.hh:17
Definition: gridview.hh:63
EntitySeedWrapper(const HostEntitySeed &hostEntitySeed)
Definition: entity.hh:57
EntitySeedWrapper()
Definition: entity.hh:54
bool isValid() const
Definition: entity.hh:66
const HostEntitySeed & hostEntitySeed() const
Definition: entity.hh:61
static const std::size_t codimension
Definition: entity.hh:52
HostEntitySeed _hostEntitySeed
Definition: entity.hh:71
GridImp::template Codim< codim >::Geometry Geometry
Definition: entity.hh:88
EntityWrapperBase(HostEntity &&e)
Definition: entity.hh:99
bool equals(const EntityWrapperBase &other) const
Definition: entity.hh:123
EntityWrapperBase()
Definition: entity.hh:92
const HostEntity & hostEntity() const
Definition: entity.hh:134
EntitySeedWrapper< typename HostEntity::EntitySeed > EntitySeed
Definition: entity.hh:90
PartitionType partitionType() const
Definition: entity.hh:107
Geometry geometry() const
Definition: entity.hh:115
unsigned int subEntities(unsigned int codimSubEntitiy) const
Definition: entity.hh:111
EntitySeed seed() const
Definition: entity.hh:119
int level() const
Definition: entity.hh:103
EntityWrapperBase(const HostEntity &e)
Definition: entity.hh:95
GridImp::template Codim< cc >::Entity subEntity(int i) const
Definition: entity.hh:191
bool isRegular() const
Definition: entity.hh:207
LevelIntersectionIterator ilevelend() const
Definition: entity.hh:232
unsigned int subEntities(unsigned int codim) const
Definition: entity.hh:186
typename GridImp::template Codim< 0 >::LocalGeometry LocalGeometry
Definition: entity.hh:178
bool isNew() const
Definition: entity.hh:259
bool hasBoundaryIntersections() const
Definition: entity.hh:267
LeafIntersectionIterator ileafbegin() const
Definition: entity.hh:241
LevelIntersectionIterator ilevelbegin() const
Definition: entity.hh:223
LocalGeometry geometryInFather() const
Definition: entity.hh:211
typename GridImp::Traits::LeafIntersectionIterator LeafIntersectionIterator
Definition: entity.hh:179
bool mightVanish() const
Definition: entity.hh:263
bool hasFather() const
Definition: entity.hh:199
HierarchicIterator hbegin(int maxLevel) const
Definition: entity.hh:215
typename GridImp::Traits::LevelIntersectionIterator LevelIntersectionIterator
Definition: entity.hh:180
GridImp::template Codim< 0 >::Entity father() const
Definition: entity.hh:195
typename GridImp::Traits::HierarchicIterator HierarchicIterator
Definition: entity.hh:181
bool isLeaf() const
Definition: entity.hh:203
HierarchicIterator hend(int maxLevel) const
Definition: entity.hh:219
LeafIntersectionIterator ileafend() const
Definition: entity.hh:250