From 563f5966ee1c04dc1841576a14f3d0f08b16944c Mon Sep 17 00:00:00 2001
From: Oliver Sander <sander@igpm.rwth-aachen.de>
Date: Wed, 5 Nov 2014 08:47:55 +0000
Subject: [PATCH] Add 'contains' methods just like the mappers in dune-grid
 have them.

[[Imported from SVN: r9955]]
---
 dune/gfe/parallel/globalp1mapper.hh |  9 +++++++++
 dune/gfe/parallel/globalp2mapper.hh | 10 ++++++++++
 2 files changed, 19 insertions(+)

diff --git a/dune/gfe/parallel/globalp1mapper.hh b/dune/gfe/parallel/globalp1mapper.hh
index 0ad3d7a0..af880708 100644
--- a/dune/gfe/parallel/globalp1mapper.hh
+++ b/dune/gfe/parallel/globalp1mapper.hh
@@ -76,6 +76,15 @@ namespace Dune {
       return localGlobalMap_.find(localIndex)->second;
     }
 
+    template <class Entity>
+    bool contains(const Entity& entity, uint i, uint codim, Index& result) const
+    {
+      if (codim != GridView::dimension)
+        return false;
+      result = subIndex(entity,i,codim);
+      return true;
+    }
+
     Index localIndex(const int& globalIndex) const {
       return globalLocalMap_.find(globalIndex)->second;
     }
diff --git a/dune/gfe/parallel/globalp2mapper.hh b/dune/gfe/parallel/globalp2mapper.hh
index 5dc676b5..789ad77f 100644
--- a/dune/gfe/parallel/globalp2mapper.hh
+++ b/dune/gfe/parallel/globalp2mapper.hh
@@ -108,6 +108,16 @@ namespace Dune {
       return localGlobalMap_.find(localIndex)->second;
     }
 
+    template <class Entity>
+    bool contains(const Entity& entity, uint i, uint codim, Index& result) const
+    {
+      Index localIndex;
+      if (not p2Mapper_.contains(entity, i, codim,localIndex))
+        return false;
+      result = localGlobalMap_.find(localIndex)->second;
+      return true;
+    }
+
     Index localIndex(const int& globalIndex) const {
       return globalLocalMap_.find(globalIndex)->second;
     }
-- 
GitLab