3#ifndef DUNE_ALBERTAGRIDDATAHANDLE_HH 
    4#define DUNE_ALBERTAGRIDDATAHANDLE_HH 
   10#include <dune/grid/albertagrid/misc.hh> 
   11#include <dune/grid/albertagrid/albertaheader.hh> 
   23    template< 
class Gr
id, 
class RestrictPro
longOperator >
 
   24    class AdaptRestrictProlongHandler
 
   28      typedef typename Grid::template Codim< 0 >::Entity Entity;
 
   30      typedef typename EntityObject::ImplementationType EntityImp;
 
   32      typedef Alberta::ElementInfo< dimension > ElementInfo;
 
   33      typedef Alberta::Patch< dimension > Patch;
 
   36      RestrictProlongOperator &rpOp_;
 
   40      AdaptRestrictProlongHandler ( Grid &grid, RestrictProlongOperator &rpOp )
 
   43          father_( EntityImp( grid_ ) )
 
   46      void restrictLocal ( 
const Patch &patch, 
int i )
 
   48        ElementInfo fatherInfo = patch.elementInfo( i, grid_.levelProvider() );
 
   49        Grid::getRealImplementation( father_ ).setElement( fatherInfo, 0 );
 
   50        rpOp_.preCoarsening( (
const Entity &)father_ );
 
   53      void prolongLocal ( 
const Patch &patch, 
int i )
 
   55        ElementInfo fatherInfo = patch.elementInfo( i, grid_.levelProvider() );
 
   56        Grid::getRealImplementation( father_ ).setElement( fatherInfo, 0 );
 
   57        rpOp_.postRefinement( (
const Entity &)father_ );
 
@ dimension
The dimension of the grid.
Definition: grid.hh:402
 
Different resources needed by all grid implementations.
 
provides a wrapper for ALBERTA's refinement patches and the corners for geometryInFather
 
provides a wrapper for ALBERTA's el_info structure
 
Dune namespace.
Definition: alignment.hh:10