From 198792bc0a6ab36d413591a9117bc733893ab171 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Robert=20Kl=C3=B6fkorn?= <robertk@dune-project.org>
Date: Tue, 17 May 2005 12:11:48 +0000
Subject: [PATCH] added resetRefinementRequest to postAdapt method. The mark
 method now set nospilt if marker is 0.

[[Imported from SVN: r2065]]
---
 grid/alu3dgrid/alu3dgrid.cc | 23 +++++++++++++++--------
 1 file changed, 15 insertions(+), 8 deletions(-)

diff --git a/grid/alu3dgrid/alu3dgrid.cc b/grid/alu3dgrid/alu3dgrid.cc
index 5072d7d48..9640a7af4 100644
--- a/grid/alu3dgrid/alu3dgrid.cc
+++ b/grid/alu3dgrid/alu3dgrid.cc
@@ -627,6 +627,9 @@ namespace Dune {
       {
         if(w->item().level() > maxlevel_ ) maxlevel_ = w->item().level();
         w->item ().resetRefinedTag();
+
+        // note, resetRefinementRequest sets the request to coarsen
+        w->item ().resetRefinementRequest();
       }
     }
     //#ifdef _ALU3DGRID_PARALLEL_
@@ -654,6 +657,9 @@ namespace Dune {
       {
         if(w->item().level() > maxlevel_ ) maxlevel_ = w->item().level();
         w->item ().resetRefinedTag();
+
+        // note, resetRefinementRequest sets the request to coarsen
+        w->item ().resetRefinementRequest();
       }
     }
 #endif
@@ -1360,13 +1366,13 @@ namespace Dune {
       needSetup_      = true;
       twist_          = org.twist_;
       initInterGl_    = false;
-      interSelfGlobal_  = (org.interSelfGlobal_) ? this->grid_.geometryProvider_.getNewObjectEntity( grid_ , walkLevel_ ) : 0;
+      interSelfGlobal_  = (org.interSelfGlobal_) ? this->grid_.geometryProvider_.getNewObjectEntity( this->grid_ , walkLevel_ ) : 0;
       initInterLocal_ = false;
       interSelfLocal_ = (org.interSelfLocal_) ?
-                        this->grid_.geometryProvider_.getNewObjectEntity(grid_, walkLevel_) : 0;
+                        this->grid_.geometryProvider_.getNewObjectEntity(this->grid_, walkLevel_) : 0;
       interNeighLocal_ = (org.interNeighLocal_) ?
-                         this->grid_.geometryProvider_.getNewObjectEntity(grid_, walkLevel_) : 0;
-      bndEntity_      = (org.bndEntity_) ? this->grid_.bndProvider_.getNewObjectEntity( grid_ , walkLevel_ ) : 0;
+                         this->grid_.geometryProvider_.getNewObjectEntity(this->grid_, walkLevel_) : 0;
+      bndEntity_      = (org.bndEntity_) ? this->grid_.bndProvider_.getNewObjectEntity( this->grid_ , walkLevel_ ) : 0;
     }
     else
     {
@@ -1577,7 +1583,7 @@ namespace Dune {
 
 
   template <class GridImp>
-  inline const ALU3dGridIntersectionIterator<GridImp>::LocalGeometry &
+  inline const typename ALU3dGridIntersectionIterator<GridImp>::LocalGeometry &
   ALU3dGridIntersectionIterator<GridImp>::intersectionSelfLocal() const {
     initLocals();
     return *interSelfLocal_;
@@ -1612,7 +1618,7 @@ namespace Dune {
   }
 
   template <class GridImp>
-  inline const ALU3dGridIntersectionIterator<GridImp>::LocalGeometry &
+  inline const typename ALU3dGridIntersectionIterator<GridImp>::LocalGeometry &
   ALU3dGridIntersectionIterator<GridImp>::intersectionNeighborLocal() const {
     assert(!boundary());
 
@@ -2180,6 +2186,7 @@ namespace Dune {
       return true;
     }
 
+    (*item_).request( nosplit_element_t );
     return false;
   }
 
@@ -2560,7 +2567,7 @@ namespace Dune {
     enum { dim = 2 };
     enum { dimworld = 3};
 
-    const Geometry<3, 3, const ALU3dGrid<3, 3, tetra>, ALU3dGridGeometry>&
+    const Geometry<3, 3, const ALU3dGrid<3, 3, tetra>, Dune::ALU3dGridGeometry> &
     refElem =
       ALU3dGridGeometry<3, 3, const ALU3dGrid<3, 3, tetra> >::refelem();
 
@@ -3110,7 +3117,7 @@ namespace Dune {
     enum { dim = 2 };
     enum { dimworld = 3 };
 
-    const Geometry<3, 3, const ALU3dGrid<3, 3, hexa>, ALU3dGridGeometry >&
+    const Geometry<3, 3, const ALU3dGrid<3, 3, hexa>, Dune::ALU3dGridGeometry >&
     refElem =
       ALU3dGridGeometry<3, 3, const ALU3dGrid<3, 3, hexa> >::refelem();
 
-- 
GitLab