5#ifndef DUNE_ALBERTAGRIDDATAHANDLE_HH 
    6#define DUNE_ALBERTAGRIDDATAHANDLE_HH 
   12#include <dune/grid/albertagrid/misc.hh> 
   13#include <dune/grid/albertagrid/albertaheader.hh> 
   25    template< 
class Gr
id, 
class RestrictPro
longOperator >
 
   26    class AdaptRestrictProlongHandler
 
   30      typedef typename Grid::template Codim< 0 >::Entity Entity;
 
   32      typedef typename EntityObject::ImplementationType EntityImp;
 
   34      typedef Alberta::ElementInfo< dimension > ElementInfo;
 
   35      typedef Alberta::Patch< dimension > Patch;
 
   38      RestrictProlongOperator &rpOp_;
 
   42      AdaptRestrictProlongHandler ( Grid &grid, RestrictProlongOperator &rpOp )
 
   45          father_( EntityImp( grid_ ) )
 
   48      void restrictLocal ( 
const Patch &patch, 
int i )
 
   50        ElementInfo fatherInfo = patch.elementInfo( i, grid_.levelProvider() );
 
   51        father_.impl().setElement( fatherInfo, 0 );
 
   52        rpOp_.preCoarsening( (
const Entity &)father_ );
 
   55      void prolongLocal ( 
const Patch &patch, 
int i )
 
   57        ElementInfo fatherInfo = patch.elementInfo( i, grid_.levelProvider() );
 
   58        father_.impl().setElement( fatherInfo, 0 );
 
   59        rpOp_.postRefinement( (
const Entity &)father_ );
 
static constexpr int dimension
The dimension of the grid.
Definition: grid.hh:387
 
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: alignedallocator.hh:13