dune-mmesh 1.4.1-git
Loading...
Searching...
No Matches
Dune::MMeshInterfaceGridEntity< 0, dim, GridImp > Class Template Reference

Specialization for codim-0-entities. More...

#include <dune/mmesh/interface/entity.hh>

Inheritance diagram for Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >:
Inheritance graph

Public Types

typedef GridImp::template MMeshInterfaceEntity< 0 > MMeshInterfaceEntity
 
typedef GridImp::template MMeshInterfaceEntity< dimMMeshInterfaceVertex
 
typedef GridImp::template Codim< 0 >::Geometry Geometry
 
typedef GridImp::template Codim< 0 >::LocalGeometry LocalGeometry
 
typedef MMeshInterfaceGridLeafIntersectionIterator< GridImp > LeafIntersectionIterator
 The Iterator over intersections on the leaf level.
 
typedef MMeshHierarchicIterator< GridImp > HierarchicIterator
 Iterator over descendants of the entity.
 
typedef GridImp::template Codim< 0 >::EntitySeed EntitySeed
 The type of the EntitySeed interface class.
 
typedef GridImp::ConnectedComponent ConnectedComponent
 The type of the connected component.
 
using IdType = MMeshImpl::MultiId
 define the type used for persistent indices
 
typedef Geometry::GlobalCoordinate GlobalCoordinate
 
typedef Geometry::LocalCoordinate LocalCoordinate
 
using VertexStorage = std::array< GlobalCoordinate, dim+1 >
 define the type used for storage the vertices of a caching entity
 

Public Member Functions

 MMeshInterfaceGridEntity ()
 
 MMeshInterfaceGridEntity (const GridImp *grid, const MMeshInterfaceEntity &hostEntity)
 
 MMeshInterfaceGridEntity (const GridImp *grid, MMeshInterfaceEntity &&hostEntity)
 
 MMeshInterfaceGridEntity (const GridImp *grid, const MMeshInterfaceEntity &hostEntity, const IdType &id)
 
 MMeshInterfaceGridEntity (const GridImp *grid, const VertexStorage &vertex)
 
 MMeshInterfaceGridEntity (const MMeshInterfaceGridEntity &original)
 
 MMeshInterfaceGridEntity (MMeshInterfaceGridEntity &&original)
 
MMeshInterfaceGridEntityoperator= (const MMeshInterfaceGridEntity &original)
 
MMeshInterfaceGridEntityoperator= (MMeshInterfaceGridEntity &&original)
 
template<int d = dim>
std::enable_if_t< d==1, bool > equals (const MMeshInterfaceGridEntity &other) const
 
template<int d = dim>
std::enable_if_t< d==2, bool > equals (const MMeshInterfaceGridEntity &other) const
 
bool operator== (const MMeshInterfaceGridEntity &other) const
 returns true if host entities are equal
 
bool operator< (const MMeshInterfaceGridEntity &other) const
 returns true if host entities are equal
 
const ConnectedComponentconnectedComponent () const
 returns the connected component
 
bool hasConnectedComponent () const
 returns true if a connected component exists
 
auto father () const
 returns the father entity
 
bool hasFather () const
 returns true if father entity exists
 
void bindFather (const EntityType &father) const
 
LocalGeometry geometryInFather () const
 
const bool isNew () const
 returns true if this entity is new after adaptation
 
void setIsNew (bool isNew) const
 set if this entity is new after adaptation
 
const bool mightVanish () const
 returns true if this entity will vanish after adaptation
 
void setWillVanish (bool mightVanish) const
 set if this entity will vanish after adaptation
 
void mark (int refCount) const
 mark entity for refine or coarse
 
int getMark () const
 get mark of entity
 
EntitySeed seed () const
 Create EntitySeed.
 
int level () const
 Level of this element.
 
PartitionType partitionType () const
 The partition type for parallel computing.
 
Geometry geometry () const
 Geometry of this entity.
 
std::size_t subEntities (std::size_t cc) const
 Return the number of subEntities of codimension cc.
 
template<int cc>
std::enable_if_t< cc==0, typename GridImp::template Codim< cc >::EntitysubEntity (std::size_t i) const
 Provide access to sub entity i of given codimension. Entities are numbered 0 ... subEntities(cc)-1.
 
template<int cc>
std::enable_if_t< cc==dim, typename GridImp::template Codim< cc >::EntitysubEntity (std::size_t i) const
 Provide access to sub entity i of given codimension. Entities are numbered 0 ... subEntities(cc)-1.
 
template<int cc>
std::enable_if_t< cc==1 &&dim==2, typename GridImp::template Codim< cc >::EntitysubEntity (std::size_t i) const
 Provide access to sub entity i of given codimension. Entities are numbered 0 ... subEntities(cc)-1.
 
MMeshInterfaceGridLeafIntersectionIterator< GridImp > ileafbegin () const
 First leaf intersection.
 
MMeshInterfaceGridLeafIntersectionIterator< GridImp > ileafend () const
 Reference to one past the last leaf intersection.
 
MMeshInterfaceGridLeafIntersectionIterator< GridImp > ilevelbegin () const
 We only have one level.
 
MMeshInterfaceGridLeafIntersectionIterator< GridImp > ilevelend () const
 
MMeshInterfaceGridHierarchicIterator< GridImp > hbegin (int maxlevel) const
 First hierarchic entity, i.e. this entity, because we only have one level.
 
MMeshInterfaceGridHierarchicIterator< GridImp > hend (int maxlevel) const
 Reference to one past the last hierarchic entity.
 
bool isLeaf () const
 returns true if Entity has no children
 
bool wasRefined () const
 returns if grid was refined
 
bool mightBeCoarsened () const
 returns if grid might be coarsened
 
GeometryType type () const
 returns the geometry type
 
const MMeshInterfaceEntityhostEntity () const
 returns the host entity
 
const GridImp & grid () const
 returns the host entity
 
IdType id () const
 return cached id
 

Protected Attributes

VertexStorage vertex_
 the vertices of the host entity object of this entity (for caching entity)
 
const EntityTypefather_
 

Friends

struct HostGridAccess< typename std::remove_const< GridImp >::type >
 

Detailed Description

template<int dim, class GridImp>
class Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >

Specialization for codim-0-entities.

This class embodies the topological parts of elements of the grid. It has an extended interface compared to the general entity class. For example, Entities of codimension 0 allow to visit all neighbors.

Member Typedef Documentation

◆ ConnectedComponent

template<int dim, class GridImp >
typedef GridImp::ConnectedComponent Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::ConnectedComponent

The type of the connected component.

◆ EntitySeed

template<int dim, class GridImp >
typedef GridImp::template Codim<0>::EntitySeed Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::EntitySeed

The type of the EntitySeed interface class.

◆ Geometry

template<int dim, class GridImp >
typedef GridImp::template Codim<0>::Geometry Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::Geometry

◆ GlobalCoordinate

template<int dim, class GridImp >
typedef Geometry::GlobalCoordinate Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::GlobalCoordinate

◆ HierarchicIterator

template<int dim, class GridImp >
typedef MMeshHierarchicIterator<GridImp> Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::HierarchicIterator

Iterator over descendants of the entity.

◆ IdType

template<int dim, class GridImp >
using Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::IdType = MMeshImpl::MultiId

define the type used for persistent indices

◆ LeafIntersectionIterator

template<int dim, class GridImp >
typedef MMeshInterfaceGridLeafIntersectionIterator<GridImp> Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::LeafIntersectionIterator

The Iterator over intersections on the leaf level.

◆ LocalCoordinate

template<int dim, class GridImp >
typedef Geometry::LocalCoordinate Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::LocalCoordinate

◆ LocalGeometry

template<int dim, class GridImp >
typedef GridImp::template Codim<0>::LocalGeometry Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::LocalGeometry

◆ MMeshInterfaceEntity

template<int dim, class GridImp >
typedef GridImp::template MMeshInterfaceEntity<0> Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::MMeshInterfaceEntity

◆ MMeshInterfaceVertex

template<int dim, class GridImp >
typedef GridImp::template MMeshInterfaceEntity<dim> Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::MMeshInterfaceVertex

◆ VertexStorage

template<int dim, class GridImp >
using Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::VertexStorage = std::array<GlobalCoordinate, dim + 1>

define the type used for storage the vertices of a caching entity

Constructor & Destructor Documentation

◆ MMeshInterfaceGridEntity() [1/7]

template<int dim, class GridImp >
Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::MMeshInterfaceGridEntity ( )
inline

◆ MMeshInterfaceGridEntity() [2/7]

template<int dim, class GridImp >
Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::MMeshInterfaceGridEntity ( const GridImp *  grid,
const MMeshInterfaceEntity hostEntity 
)
inline

◆ MMeshInterfaceGridEntity() [3/7]

template<int dim, class GridImp >
Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::MMeshInterfaceGridEntity ( const GridImp *  grid,
MMeshInterfaceEntity &&  hostEntity 
)
inline

◆ MMeshInterfaceGridEntity() [4/7]

template<int dim, class GridImp >
Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::MMeshInterfaceGridEntity ( const GridImp *  grid,
const MMeshInterfaceEntity hostEntity,
const IdType id 
)
inline

◆ MMeshInterfaceGridEntity() [5/7]

template<int dim, class GridImp >
Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::MMeshInterfaceGridEntity ( const GridImp *  grid,
const VertexStorage vertex 
)
inline

◆ MMeshInterfaceGridEntity() [6/7]

template<int dim, class GridImp >
Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::MMeshInterfaceGridEntity ( const MMeshInterfaceGridEntity< 0, dim, GridImp > &  original)
inline

◆ MMeshInterfaceGridEntity() [7/7]

template<int dim, class GridImp >
Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::MMeshInterfaceGridEntity ( MMeshInterfaceGridEntity< 0, dim, GridImp > &&  original)
inline

Member Function Documentation

◆ bindFather()

template<int dim, class GridImp >
void Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::bindFather ( const EntityType father) const
inline

◆ connectedComponent()

template<int dim, class GridImp >
const ConnectedComponent & Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::connectedComponent ( ) const
inline

returns the connected component

◆ equals() [1/2]

template<int dim, class GridImp >
template<int d = dim>
std::enable_if_t< d==1, bool > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::equals ( const MMeshInterfaceGridEntity< 0, dim, GridImp > &  other) const
inline

◆ equals() [2/2]

template<int dim, class GridImp >
template<int d = dim>
std::enable_if_t< d==2, bool > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::equals ( const MMeshInterfaceGridEntity< 0, dim, GridImp > &  other) const
inline

◆ father()

template<int dim, class GridImp >
auto Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::father ( ) const
inline

returns the father entity

◆ geometry()

template<int dim, class GridImp >
Geometry Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::geometry ( ) const
inline

Geometry of this entity.

◆ geometryInFather()

template<int dim, class GridImp >
LocalGeometry Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::geometryInFather ( ) const
inline

Geometry of this entity in bounded father entity ( assumption: this \subset father )

◆ getMark()

template<int dim, class GridImp >
int Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::getMark ( ) const
inline

get mark of entity

◆ grid()

template<int dim, class GridImp >
const GridImp & Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::grid ( ) const
inline

returns the host entity

◆ hasConnectedComponent()

template<int dim, class GridImp >
bool Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::hasConnectedComponent ( ) const
inline

returns true if a connected component exists

◆ hasFather()

template<int dim, class GridImp >
bool Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::hasFather ( ) const
inline

returns true if father entity exists

◆ hbegin()

template<int dim, class GridImp >
MMeshInterfaceGridHierarchicIterator< GridImp > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::hbegin ( int  maxlevel) const
inline

First hierarchic entity, i.e. this entity, because we only have one level.

◆ hend()

template<int dim, class GridImp >
MMeshInterfaceGridHierarchicIterator< GridImp > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::hend ( int  maxlevel) const
inline

Reference to one past the last hierarchic entity.

◆ hostEntity()

template<int dim, class GridImp >
const MMeshInterfaceEntity & Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::hostEntity ( ) const
inline

returns the host entity

◆ id()

template<int dim, class GridImp >
IdType Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::id ( ) const
inline

return cached id

◆ ileafbegin()

template<int dim, class GridImp >
MMeshInterfaceGridLeafIntersectionIterator< GridImp > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::ileafbegin ( ) const
inline

First leaf intersection.

◆ ileafend()

template<int dim, class GridImp >
MMeshInterfaceGridLeafIntersectionIterator< GridImp > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::ileafend ( ) const
inline

Reference to one past the last leaf intersection.

◆ ilevelbegin()

template<int dim, class GridImp >
MMeshInterfaceGridLeafIntersectionIterator< GridImp > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::ilevelbegin ( ) const
inline

We only have one level.

◆ ilevelend()

template<int dim, class GridImp >
MMeshInterfaceGridLeafIntersectionIterator< GridImp > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::ilevelend ( ) const
inline

◆ isLeaf()

template<int dim, class GridImp >
bool Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::isLeaf ( ) const
inline

returns true if Entity has no children

◆ isNew()

template<int dim, class GridImp >
const bool Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::isNew ( ) const
inline

returns true if this entity is new after adaptation

◆ level()

template<int dim, class GridImp >
int Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::level ( ) const
inline

Level of this element.

◆ mark()

template<int dim, class GridImp >
void Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::mark ( int  refCount) const
inline

mark entity for refine or coarse

◆ mightBeCoarsened()

template<int dim, class GridImp >
bool Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::mightBeCoarsened ( ) const
inline

returns if grid might be coarsened

◆ mightVanish()

template<int dim, class GridImp >
const bool Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::mightVanish ( ) const
inline

returns true if this entity will vanish after adaptation

◆ operator<()

template<int dim, class GridImp >
bool Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::operator< ( const MMeshInterfaceGridEntity< 0, dim, GridImp > &  other) const
inline

returns true if host entities are equal

◆ operator=() [1/2]

template<int dim, class GridImp >
MMeshInterfaceGridEntity & Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::operator= ( const MMeshInterfaceGridEntity< 0, dim, GridImp > &  original)
inline

◆ operator=() [2/2]

template<int dim, class GridImp >
MMeshInterfaceGridEntity & Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::operator= ( MMeshInterfaceGridEntity< 0, dim, GridImp > &&  original)
inline

◆ operator==()

template<int dim, class GridImp >
bool Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::operator== ( const MMeshInterfaceGridEntity< 0, dim, GridImp > &  other) const
inline

returns true if host entities are equal

◆ partitionType()

template<int dim, class GridImp >
PartitionType Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::partitionType ( ) const
inline

The partition type for parallel computing.

◆ seed()

template<int dim, class GridImp >
EntitySeed Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::seed ( ) const
inline

Create EntitySeed.

◆ setIsNew()

template<int dim, class GridImp >
void Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::setIsNew ( bool  isNew) const
inline

set if this entity is new after adaptation

◆ setWillVanish()

template<int dim, class GridImp >
void Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::setWillVanish ( bool  mightVanish) const
inline

set if this entity will vanish after adaptation

◆ subEntities()

template<int dim, class GridImp >
std::size_t Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::subEntities ( std::size_t  cc) const
inline

Return the number of subEntities of codimension cc.

◆ subEntity() [1/3]

template<int dim, class GridImp >
template<int cc>
std::enable_if_t< cc==0, typename GridImp::template Codim< cc >::Entity > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::subEntity ( std::size_t  i) const
inline

Provide access to sub entity i of given codimension. Entities are numbered 0 ... subEntities(cc)-1.

◆ subEntity() [2/3]

template<int dim, class GridImp >
template<int cc>
std::enable_if_t< cc==dim, typename GridImp::template Codim< cc >::Entity > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::subEntity ( std::size_t  i) const
inline

Provide access to sub entity i of given codimension. Entities are numbered 0 ... subEntities(cc)-1.

◆ subEntity() [3/3]

template<int dim, class GridImp >
template<int cc>
std::enable_if_t< cc==1 &&dim==2, typename GridImp::template Codim< cc >::Entity > Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::subEntity ( std::size_t  i) const
inline

Provide access to sub entity i of given codimension. Entities are numbered 0 ... subEntities(cc)-1.

◆ type()

template<int dim, class GridImp >
GeometryType Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::type ( ) const
inline

returns the geometry type

◆ wasRefined()

template<int dim, class GridImp >
bool Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::wasRefined ( ) const
inline

returns if grid was refined

Friends And Related Symbol Documentation

◆ HostGridAccess< typename std::remove_const< GridImp >::type >

template<int dim, class GridImp >
friend struct HostGridAccess< typename std::remove_const< GridImp >::type >
friend

Member Data Documentation

◆ father_

template<int dim, class GridImp >
const EntityType* Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::father_
mutableprotected

◆ vertex_

template<int dim, class GridImp >
VertexStorage Dune::MMeshInterfaceGridEntity< 0, dim, GridImp >::vertex_
protected

the vertices of the host entity object of this entity (for caching entity)


The documentation for this class was generated from the following file: