3#ifndef DUNE_GRID_HOSTGRIDACCESS_HH 
    4#define DUNE_GRID_HOSTGRIDACCESS_HH 
    8#include <dune/grid/geometrygrid/intersection.hh> 
   16  template< 
class HostGr
id, 
class CoordFunction, 
class Allocator >
 
   26  template< 
class Gr
id >
 
   27  struct HostGridAccess;
 
   38  template< 
class HG, 
class CoordFunction, 
class Allocator >
 
   39  struct HostGridAccess< GeometryGrid< HG, CoordFunction, Allocator > >
 
   44    typedef GeometryGrid< HG, CoordFunction, Allocator > Grid;
 
   47    typedef typename Grid::HostGrid HostGrid;
 
   70    typedef typename Grid::Traits::LeafIntersection LeafIntersection;
 
   72    typedef typename Grid::Traits::LevelIntersection LevelIntersection;
 
   75    typedef typename HostGrid::Traits::LeafIntersection HostLeafIntersection;
 
   77    typedef typename HostGrid::Traits::LevelIntersection HostLevelIntersection;
 
   83    static const HostGrid &hostGrid ( 
const Grid &grid )
 
   85      return grid.hostGrid();
 
   88    template< 
class Entity >
 
   90    hostEntity ( 
const Entity &entity )
 
   92      return hostEntity< Entity::codimension >( entity );
 
   96    static const typename Codim< codim >::HostEntity &
 
   97    hostEntity ( 
const typename Codim< codim >::Entity &entity )
 
   99      return Grid::getRealImplementation( entity ).hostEntity();
 
  102    template< 
class HostIntersection >
 
  103    static const HostIntersection &
 
  104    hostIntersection ( 
const Intersection< 
const Grid, GeoGrid::Intersection< const Grid, HostIntersection > > &intersection )
 
  106      return Grid::getRealImplementation( intersection ).hostIntersection();
 
  119  struct HostGridAccess< IdentityGrid< HG > >
 
  124    typedef IdentityGrid< HG > Grid;
 
  135    template< 
int codim >
 
  155    typedef typename HostGrid::Traits::LeafIntersection HostLeafIntersection;
 
  157    typedef typename HostGrid::Traits::LevelIntersection HostLevelIntersection;
 
  163    static const HostGrid &hostGrid ( 
const Grid &grid )
 
  168    template< 
class Entity >
 
  170    hostEntity ( 
const Entity &entity )
 
  172      return hostEntity< Entity::codimension >( entity );
 
  175    template< 
int codim >
 
  176    static const typename Codim< codim >::HostEntity &
 
  177    hostEntity ( 
const typename Codim< codim >::Entity &entity )
 
  179      return *Grid::getRealImplementation( entity ).hostEntity_;
 
  182    static const HostLeafIntersection &
 
  183    hostIntersection ( 
const LeafIntersection &intersection )
 
  185      return *Grid::getRealImplementation( intersection ).hostIterator_;
 
  188    static const HostLevelIntersection &
 
  189    hostIntersection ( 
const LevelIntersection &intersection )
 
  191      return *Grid::getRealImplementation( intersection ).hostIterator_;
 
Wrapper class for entities.
Definition: entity.hh:62
 
grid wrapper replacing the geometries
Definition: grid.hh:83
 
GridFamily::Traits::LeafIntersection LeafIntersection
A type that is a model of Dune::Intersection, an intersections of two codimension 1 of two codimensio...
Definition: grid.hh:486
 
GridFamily::Traits::LevelIntersection LevelIntersection
A type that is a model of Dune::Intersection, an intersections of two codimension 1 of two codimensio...
Definition: grid.hh:491
 
Provides a meta grid that is identical to its host.
Definition: identitygrid.hh:136
 
HostGridType & getHostGrid() const
Returns the hostgrid this IdentityGrid lives in.
Definition: identitygrid.hh:491
 
Dune namespace.
Definition: alignment.hh:10
 
Static tag representing a codimension.
Definition: dimension.hh:22
 
Grid::template Codim< codim >::EntityPointer EntityPointer
type of the GeometryGrid entity pointer
Definition: hostgridaccess.hh:61
 
HostGrid::template Codim< codim >::Entity HostEntity
type of the host entity
Definition: hostgridaccess.hh:64
 
Grid::template Codim< codim >::Entity Entity
type of the GeometryGrid entity
Definition: hostgridaccess.hh:59
 
HostGrid::template Codim< codim >::EntityPointer HostEntityPointer
type of the host entity pointer
Definition: hostgridaccess.hh:66
 
Grid::template Codim< codim >::Entity Entity
type of the IdGrid entity
Definition: hostgridaccess.hh:139
 
HostGrid::template Codim< codim >::EntityPointer HostEntityPointer
type of the host entity pointer
Definition: hostgridaccess.hh:146
 
Grid::template Codim< codim >::EntityPointer EntityPointer
type of the IdGrid entity pointer
Definition: hostgridaccess.hh:141
 
HostGrid::template Codim< codim >::Entity HostEntity
type of the host entity
Definition: hostgridaccess.hh:144