3 #ifndef DUNE_ADAPTCALLBACK_HH
4 #define DUNE_ADAPTCALLBACK_HH
18 template<
class Gr
id,
class Impl >
29 template<
class Gr
id,
class Impl >
37 typedef typename Grid::template Codim< 0 >::Entity
Entity;
44 This &operator= (
const This & );
54 asImp().preCoarsening( father );
64 asImp().postRefinement( father );
69 asImp().restrictLocal( father, son, initialize );
74 asImp().prolongLocal( father, son, initialize );
78 const Impl &
asImp ()
const {
return static_cast< const Impl &
>( *this ); }
79 Impl &
asImp () {
return static_cast< Impl &
>( *this ); }
87 template<
class Gr
id,
class Impl >
89 :
public AdaptDataHandleInterface< Grid, Impl >
92 typedef AdaptDataHandleInterface< Grid, Impl > Base;
103 This &operator= (
const This & );
105 void preCoarsening (
const Entity &father );
106 void postRefinement (
const Entity &father );
114 template <
class A,
class B >
126 template <
class Entity>
129 _a.restrictLocal(father,son,initialize);
130 _b.restrictLocal(father,son,initialize);
134 template <
class Entity>
137 _a.prolongLocal(father,son,initialize);
138 _b.prolongLocal(father,son,initialize);
AdaptDataHandle()
Definition: adaptcallback.hh:98
void postRefinement(const Entity &father)
call back for activity to take place on newly created elements below the father element.
Definition: adaptcallback.hh:62
friend class AdaptDataHandle< Grid, Impl >
Definition: adaptcallback.hh:34
Grid::template Codim< 0 >::Entity Entity
Definition: adaptcallback.hh:37
void restrictLocal(const Entity &father, const Entity &son, bool initialize)
Definition: adaptcallback.hh:67
void prolongLocal(const Entity &father, const Entity &son, bool initialize)
Definition: adaptcallback.hh:72
Wrapper class for entities.
Definition: common/entity.hh:61
CombinedAdaptProlongRestrict(A &a, B &b)
constructor storing the two references
Definition: adaptcallback.hh:122
Definition: adaptcallback.hh:19
Base::Entity Entity
Definition: adaptcallback.hh:95
Grid abstract base classThis class is the base class for all grid implementations. Although no virtual functions are used we call it abstract since its methods do not contain an implementation but forward to the methods of the derived class via the Barton-Nackman trick.
Definition: common/grid.hh:388
const Impl & asImp() const
Definition: adaptcallback.hh:78
Impl & asImp()
Definition: adaptcallback.hh:79
class for combining 2 index sets together for adaptation process
Definition: adaptcallback.hh:115
void prolongLocal(const Entity &father, const Entity &son, bool initialize)
prolong data to children
Definition: adaptcallback.hh:135
void restrictLocal(const Entity &father, const Entity &son, bool initialize)
restrict data to father
Definition: adaptcallback.hh:127
void preCoarsening(const Entity &father)
call back for activity to take place on father and all decendants before the decendants are removed ...
Definition: adaptcallback.hh:52
Interface class for the Grid's adapt method where the parameter is a AdaptDataHandleInterface.
Definition: adaptcallback.hh:30