From 32a0c804acb0698f40de56e25f795da4f91c560a Mon Sep 17 00:00:00 2001 From: David Wells Date: Sat, 5 Mar 2016 15:13:28 -0500 Subject: [PATCH] Forward declare things where they are used. --- include/deal.II/dofs/dof_handler.h | 3 +++ include/deal.II/dofs/dof_handler_policy.h | 1 - include/deal.II/dofs/dof_iterator_selector.h | 3 --- include/deal.II/grid/grid_tools.h | 7 +++++++ include/deal.II/grid/tria.h | 2 +- include/deal.II/grid/tria_accessor.templates.h | 10 ---------- include/deal.II/grid/tria_iterator_selector.h | 1 - include/deal.II/hp/dof_handler.h | 2 ++ include/deal.II/matrix_free/dof_info.h | 2 ++ include/deal.II/matrix_free/helper_functions.h | 3 --- 10 files changed, 15 insertions(+), 19 deletions(-) diff --git a/include/deal.II/dofs/dof_handler.h b/include/deal.II/dofs/dof_handler.h index 1e98e5cb14..c205f316a0 100644 --- a/include/deal.II/dofs/dof_handler.h +++ b/include/deal.II/dofs/dof_handler.h @@ -39,6 +39,9 @@ DEAL_II_NAMESPACE_OPEN +template class FiniteElement; +template class Triangulation; + namespace internal { namespace DoFHandler diff --git a/include/deal.II/dofs/dof_handler_policy.h b/include/deal.II/dofs/dof_handler_policy.h index 91f2126438..b278a71380 100644 --- a/include/deal.II/dofs/dof_handler_policy.h +++ b/include/deal.II/dofs/dof_handler_policy.h @@ -30,7 +30,6 @@ DEAL_II_NAMESPACE_OPEN -template class FiniteElement; template class DoFHandler; diff --git a/include/deal.II/dofs/dof_iterator_selector.h b/include/deal.II/dofs/dof_iterator_selector.h index d5a8ef7e3d..e9c5b6d462 100644 --- a/include/deal.II/dofs/dof_iterator_selector.h +++ b/include/deal.II/dofs/dof_iterator_selector.h @@ -26,12 +26,9 @@ template class InvalidAccessor; template class DoFAccessor; template class DoFCellAccessor; -template class FiniteElement; template class TriaRawIterator; template class TriaIterator; template class TriaActiveIterator; -template class Triangulation; - namespace internal { diff --git a/include/deal.II/grid/grid_tools.h b/include/deal.II/grid/grid_tools.h index 7a8c4e407d..d42576ee2f 100644 --- a/include/deal.II/grid/grid_tools.h +++ b/include/deal.II/grid/grid_tools.h @@ -32,6 +32,13 @@ DEAL_II_NAMESPACE_OPEN +namespace parallel +{ + namespace distributed + { + template class Triangulation; + } +} namespace hp { diff --git a/include/deal.II/grid/tria.h b/include/deal.II/grid/tria.h index 9857013cbe..ba09331327 100644 --- a/include/deal.II/grid/tria.h +++ b/include/deal.II/grid/tria.h @@ -48,7 +48,7 @@ template class Manifold; template class TriaAccessor; template class TriaAccessor<0,1,spacedim>; - +template class TriaAccessorBase; namespace internal { diff --git a/include/deal.II/grid/tria_accessor.templates.h b/include/deal.II/grid/tria_accessor.templates.h index 2c3de29894..3ad66acd10 100644 --- a/include/deal.II/grid/tria_accessor.templates.h +++ b/include/deal.II/grid/tria_accessor.templates.h @@ -35,16 +35,6 @@ DEAL_II_NAMESPACE_OPEN namespace parallel { template class Triangulation; - - namespace distributed - { - template class Triangulation; - } - - namespace shared - { - template class Triangulation; - } } diff --git a/include/deal.II/grid/tria_iterator_selector.h b/include/deal.II/grid/tria_iterator_selector.h index 29c48a1272..80c434f5e8 100644 --- a/include/deal.II/grid/tria_iterator_selector.h +++ b/include/deal.II/grid/tria_iterator_selector.h @@ -22,7 +22,6 @@ DEAL_II_NAMESPACE_OPEN template class CellAccessor; -template class TriaAccessorBase; template class InvalidAccessor; template class TriaAccessor; template class TriaAccessor<0, dim, spacedim>; diff --git a/include/deal.II/hp/dof_handler.h b/include/deal.II/hp/dof_handler.h index 0577b0f170..66847b6595 100644 --- a/include/deal.II/hp/dof_handler.h +++ b/include/deal.II/hp/dof_handler.h @@ -36,6 +36,8 @@ DEAL_II_NAMESPACE_OPEN +template class Triangulation; + namespace internal { namespace hp diff --git a/include/deal.II/matrix_free/dof_info.h b/include/deal.II/matrix_free/dof_info.h index 49d2599ba2..752b9036c4 100644 --- a/include/deal.II/matrix_free/dof_info.h +++ b/include/deal.II/matrix_free/dof_info.h @@ -37,6 +37,8 @@ namespace internal { namespace MatrixFreeFunctions { + template class ConstraintValues; + /** * The class that stores the indices of the degrees of freedom for all the * cells. Essentially, this is a smart number cache in the style of a diff --git a/include/deal.II/matrix_free/helper_functions.h b/include/deal.II/matrix_free/helper_functions.h index f828027476..eaaf05b3d5 100644 --- a/include/deal.II/matrix_free/helper_functions.h +++ b/include/deal.II/matrix_free/helper_functions.h @@ -33,9 +33,6 @@ namespace internal { namespace MatrixFreeFunctions { - // forward declaration of internal data structure - template struct ConstraintValues; - /** * A struct that collects all information related to parallelization with * threads: The work is subdivided into tasks that can be done -- 2.39.5