From e3ba7e1c828ca33edd3882a5976f007e41ff94a6 Mon Sep 17 00:00:00 2001
From: Max Kahnt <max.kahnt@fu-berlin.de>
Date: Wed, 28 Oct 2015 16:20:08 +0100
Subject: [PATCH] Removing lbegin/lend for methods inserting elements from
 containers.

---
 dune/subgrid/subgrid.hh | 30 ++++++------------------------
 1 file changed, 6 insertions(+), 24 deletions(-)

diff --git a/dune/subgrid/subgrid.hh b/dune/subgrid/subgrid.hh
index dcae063..8849cb1 100644
--- a/dune/subgrid/subgrid.hh
+++ b/dune/subgrid/subgrid.hh
@@ -1068,19 +1068,10 @@ class SubGrid :
         template <class Container>
         void insertSet(const Container& idContainer)
         {
-            typedef typename HostGrid::Traits::template Codim<0>::LevelIterator HostElementLevelIterator;
-
             for(int level=0; level <= hostgrid_->maxLevel(); ++level)
-            {
-                HostElementLevelIterator it = hostgrid_->lbegin<0>(level);
-                HostElementLevelIterator end = hostgrid_->lend<0>(level);
-                for (;it!=end; ++it)
-                {
-                    typename Container::const_iterator contained = idContainer.find(hostgrid_->globalIdSet().id(*it));
-                    if (contained != idContainer.end())
-                        insert(*it);
-                }
-            }
+                for (const auto& e: elements(hostgrid_->levelGridView(level)))
+                    if (idContainer.find(hostgrid_->globalIdSet().id(e)) != idContainer.end())
+                        insert(e);
         }
 
 
@@ -1096,19 +1087,10 @@ class SubGrid :
             std::cout << "subgrid.insertSetPartial(): " << std::endl << "{" << std::endl;
             #endif
 
-            typedef typename HostGrid::Traits::template Codim<0>::LevelIterator HostElementLevelIterator;
-
             for(int level=0; level <= hostgrid_->maxLevel(); ++level)
-            {
-                HostElementLevelIterator it = hostgrid_->template lbegin<0>(level);
-                HostElementLevelIterator end = hostgrid_->template lend<0>(level);
-                for (;it!=end; ++it)
-                {
-                    typename Container::const_iterator contained = idContainer.find(hostgrid_->globalIdSet().id(*it));
-                    if (contained != idContainer.end())
-                        insertPartial(*it);
-                }
-            }
+                for (const auto& e : elements(hostgrid_->levelGridView(level)))
+                    if (idContainer.find(hostgrid_->globalIdSet().id(e)) != idContainer.end())
+                        insertPartial(e);
 
             #ifdef SUBGRID_TIME
             std::cout << "}" << std::endl << " -> " << timer.elapsed() << std::endl;
-- 
GitLab