From: Marc Fehling <mafehling.git@gmail.com>
Date: Sat, 22 May 2021 23:53:25 +0000 (-0600)
Subject: Treat `hp::DoFHandler` as alias. Clean up template-arguments.in from `hp::DoFHandler`.
X-Git-Tag: v9.4.0-rc1~1329^2
X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F11221%2Fhead;p=dealii.git

Treat `hp::DoFHandler` as alias. Clean up template-arguments.in from `hp::DoFHandler`.
---

diff --git a/cmake/config/template-arguments.in b/cmake/config/template-arguments.in
index 15007e7f08..055c25c230 100644
--- a/cmake/config/template-arguments.in
+++ b/cmake/config/template-arguments.in
@@ -208,18 +208,11 @@ GENERAL_CONTAINER_TYPES := { std::vector;
                              ArrayView
                            }
 
-// DoFHandler (for iterators!)
-DOFHANDLER_TEMPLATE := { DoFHandler }
-
-// DoFHandler and hp::DoFHandler templates
-DOFHANDLER_TEMPLATES := { DoFHandler; hp::DoFHandler }
-
 // Triangulation and DoFHandler templates
 TRIANGULATION_AND_DOFHANDLER_TEMPLATES := { Triangulation;
                                             parallel::shared::Triangulation;
                                             parallel::distributed::Triangulation;
-                                            DoFHandler;
-                                            hp::DoFHandler }
+                                            DoFHandler }
 
 // concrete sequential Triangulation and DoFHandler with hard-coded
 // <deal_II_dimension, deal_II_space_dimension> (for iterators!)
@@ -229,16 +222,14 @@ SEQUENTIAL_TRIANGULATION_AND_DOFHANDLER := { Triangulation<deal_II_dimension, de
 // concrete sequential Triangulation and DoFHandler types with hard-coded
 // <deal_II_dimension, deal_II_space_dimension>
 SEQUENTIAL_TRIANGULATION_AND_DOFHANDLERS := { Triangulation<deal_II_dimension, deal_II_space_dimension>;
-                                              DoFHandler<deal_II_dimension, deal_II_space_dimension>;
-                                              hp::DoFHandler<deal_II_dimension, deal_II_space_dimension> }
+                                              DoFHandler<deal_II_dimension, deal_II_space_dimension> }
 
 // concrete Triangulation and DoFHandler types (all types you can iterate over cells from)
 // with hard-coded <deal_II_dimension, deal_II_space_dimension>
 TRIANGULATION_AND_DOFHANDLERS := { Triangulation<deal_II_dimension, deal_II_space_dimension>;
                                    parallel::shared::Triangulation<deal_II_dimension, deal_II_space_dimension>;
                                    parallel::distributed::Triangulation<deal_II_dimension, deal_II_space_dimension>;
-                                   DoFHandler<deal_II_dimension, deal_II_space_dimension>;
-                                   hp::DoFHandler<deal_II_dimension, deal_II_space_dimension> }
+                                   DoFHandler<deal_II_dimension, deal_II_space_dimension> }
 
 // concrete Triangulation types (all types you can iterate over cells from)
 // with hard-coded <deal_II_dimension, deal_II_space_dimension>
diff --git a/include/deal.II/grid/grid_tools.h b/include/deal.II/grid/grid_tools.h
index 7115b4016a..5b3e934f4a 100644
--- a/include/deal.II/grid/grid_tools.h
+++ b/include/deal.II/grid/grid_tools.h
@@ -112,17 +112,6 @@ namespace internal
       TriaActiveIterator<dealii::DoFCellAccessor<dim, spacedim, false>>;
   };
 #  endif
-
-
-#  ifdef _MSC_VER
-  template <int dim, int spacedim>
-  class ActiveCellIterator<dim, spacedim, dealii::hp::DoFHandler<dim, spacedim>>
-  {
-  public:
-    using type =
-      TriaActiveIterator<dealii::DoFCellAccessor<dim, spacedim, false>>;
-  };
-#  endif
 } // namespace internal
 
 /**
diff --git a/include/deal.II/grid/tria.h b/include/deal.II/grid/tria.h
index bd293a26b8..b954f00508 100644
--- a/include/deal.II/grid/tria.h
+++ b/include/deal.II/grid/tria.h
@@ -108,12 +108,6 @@ namespace internal
     struct Implementation;
   }
 } // namespace internal
-
-namespace hp
-{
-  template <int dim, int spacedim>
-  class DoFHandler;
-}
 #endif
 
 
diff --git a/include/deal.II/hp/dof_handler.h b/include/deal.II/hp/dof_handler.h
index 26fd3e93cb..859afe726f 100644
--- a/include/deal.II/hp/dof_handler.h
+++ b/include/deal.II/hp/dof_handler.h
@@ -117,17 +117,11 @@ namespace hp
    *
    *
    * @ingroup dofs
-   * @ingroup hp
    *
    * @deprecated The basic dealii::DoFHandler is capable of hp-adaptation now.
    */
   template <int dim, int spacedim = dim>
-  class DEAL_II_DEPRECATED DoFHandler : public dealii::DoFHandler<dim, spacedim>
-  {
-    using dealii::DoFHandler<dim, spacedim>::DoFHandler;
-    using dealii::DoFHandler<dim, spacedim>::operator=;
-  };
-
+  using DoFHandler DEAL_II_DEPRECATED = dealii::DoFHandler<dim, spacedim>;
 } // namespace hp
 
 DEAL_II_NAMESPACE_CLOSE
diff --git a/include/deal.II/numerics/matrix_tools.h b/include/deal.II/numerics/matrix_tools.h
index 52169804de..32ab7006e0 100644
--- a/include/deal.II/numerics/matrix_tools.h
+++ b/include/deal.II/numerics/matrix_tools.h
@@ -62,8 +62,6 @@ namespace hp
   class QCollection;
   template <int, int>
   class MappingCollection;
-  template <int, int>
-  class DoFHandler;
 } // namespace hp
 
 
diff --git a/include/deal.II/numerics/vector_tools_integrate_difference.h b/include/deal.II/numerics/vector_tools_integrate_difference.h
index 6dde3baf68..09b07f2ba0 100644
--- a/include/deal.II/numerics/vector_tools_integrate_difference.h
+++ b/include/deal.II/numerics/vector_tools_integrate_difference.h
@@ -35,8 +35,6 @@ template <int dim, int spacedim>
 class Triangulation;
 namespace hp
 {
-  template <int dim, int spacedim>
-  class DoFHandler;
   template <int dim, int spacedim>
   class MappingCollection;
   template <int dim>
diff --git a/include/deal.II/numerics/vector_tools_point_gradient.h b/include/deal.II/numerics/vector_tools_point_gradient.h
index 9093f93648..c756235f7c 100644
--- a/include/deal.II/numerics/vector_tools_point_gradient.h
+++ b/include/deal.II/numerics/vector_tools_point_gradient.h
@@ -38,8 +38,6 @@ template <typename Number>
 class Vector;
 namespace hp
 {
-  template <int dim, int spacedim>
-  class DoFHandler;
   template <int dim, int spacedim>
   class MappingCollection;
 } // namespace hp
diff --git a/include/deal.II/numerics/vector_tools_point_value.h b/include/deal.II/numerics/vector_tools_point_value.h
index 3636aa34ea..0a4c487111 100644
--- a/include/deal.II/numerics/vector_tools_point_value.h
+++ b/include/deal.II/numerics/vector_tools_point_value.h
@@ -33,8 +33,6 @@ template <typename Number>
 class Vector;
 namespace hp
 {
-  template <int dim, int spacedim>
-  class DoFHandler;
   template <int dim, int spacedim>
   class MappingCollection;
 } // namespace hp
diff --git a/include/deal.II/numerics/vector_tools_project.h b/include/deal.II/numerics/vector_tools_project.h
index 91d58588b2..5f2eba5186 100644
--- a/include/deal.II/numerics/vector_tools_project.h
+++ b/include/deal.II/numerics/vector_tools_project.h
@@ -42,8 +42,6 @@ template <typename Number, std::size_t width>
 class VectorizedArray;
 namespace hp
 {
-  template <int dim, int spacedim>
-  class DoFHandler;
   template <int dim, int spacedim>
   class MappingCollection;
   template <int dim>
diff --git a/include/deal.II/numerics/vector_tools_rhs.h b/include/deal.II/numerics/vector_tools_rhs.h
index 7516611332..18a06632f7 100644
--- a/include/deal.II/numerics/vector_tools_rhs.h
+++ b/include/deal.II/numerics/vector_tools_rhs.h
@@ -34,8 +34,6 @@ template <int dim>
 class Quadrature;
 namespace hp
 {
-  template <int dim, int spacedim>
-  class DoFHandler;
   template <int dim, int spacedim>
   class MappingCollection;
   template <int dim>
diff --git a/source/dofs/dof_tools_constraints.inst.in b/source/dofs/dof_tools_constraints.inst.in
index 6578089909..f583f5abf3 100644
--- a/source/dofs/dof_tools_constraints.inst.in
+++ b/source/dofs/dof_tools_constraints.inst.in
@@ -117,8 +117,7 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS)
 #endif
   }
 
-for (DoFHandler : DOFHANDLER_TEMPLATE; deal_II_dimension : DIMENSIONS;
-     deal_II_space_dimension : SPACE_DIMENSIONS;
+for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS;
      S : REAL_AND_COMPLEX_SCALARS)
   {
 #if deal_II_dimension <= deal_II_space_dimension
diff --git a/source/hp/CMakeLists.txt b/source/hp/CMakeLists.txt
index 92aaef43cc..c814a910df 100644
--- a/source/hp/CMakeLists.txt
+++ b/source/hp/CMakeLists.txt
@@ -23,7 +23,6 @@ SET(_unity_include_src
   )
 
 SET(_separate_src
-  dof_handler.cc
   )
 
 # concatenate all unity inclusion files in one file
@@ -36,7 +35,6 @@ SETUP_SOURCE_LIST("${_unity_include_src}"
   )
 
 SET(_inst
-  dof_handler.inst.in
   fe_collection.inst.in
   fe_values.inst.in
   mapping_collection.inst.in
diff --git a/source/hp/dof_handler.cc b/source/hp/dof_handler.cc
deleted file mode 100644
index 598e6476c7..0000000000
--- a/source/hp/dof_handler.cc
+++ /dev/null
@@ -1,25 +0,0 @@
-// ---------------------------------------------------------------------
-//
-// Copyright (C) 2003 - 2020 by the deal.II authors
-//
-// This file is part of the deal.II library.
-//
-// The deal.II library is free software; you can use it, redistribute
-// it, and/or modify it under the terms of the GNU Lesser General
-// Public License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-// The full text of the license can be found in the file LICENSE.md at
-// the top level directory of deal.II.
-//
-// ---------------------------------------------------------------------
-
-#include <deal.II/hp/dof_handler.h>
-
-DEAL_II_NAMESPACE_OPEN
-
-
-/*-------------- Explicit Instantiations -------------------------------*/
-#include "dof_handler.inst"
-
-
-DEAL_II_NAMESPACE_CLOSE
diff --git a/source/hp/dof_handler.inst.in b/source/hp/dof_handler.inst.in
deleted file mode 100644
index 79f9faa9ae..0000000000
--- a/source/hp/dof_handler.inst.in
+++ /dev/null
@@ -1,24 +0,0 @@
-// ---------------------------------------------------------------------
-//
-// Copyright (C) 2010 - 2020 by the deal.II authors
-//
-// This file is part of the deal.II library.
-//
-// The deal.II library is free software; you can use it, redistribute
-// it, and/or modify it under the terms of the GNU Lesser General
-// Public License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-// The full text of the license can be found in the file LICENSE.md at
-// the top level directory of deal.II.
-//
-// ---------------------------------------------------------------------
-
-for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS)
-  {
-#if deal_II_dimension <= deal_II_space_dimension
-    namespace hp
-    \{
-      template class DoFHandler<deal_II_dimension, deal_II_space_dimension>;
-    \}
-#endif
-  }