From: Matthias Maier Date: Tue, 11 Dec 2012 15:46:31 +0000 (+0000) Subject: Change to virtual inheritance of Subscriptor X-Git-Tag: v8.0.0~1079^2~211 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ff1e91e7b32d90c6a8f92c8b1f99a7d80f387111;p=dealii.git Change to virtual inheritance of Subscriptor This way, multiple inheritance of deal.II classes still provide only one Subscriptor base class. git-svn-id: https://svn.dealii.org/branches/branch_cmake@27790 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/include/deal.II/algorithms/operator.h b/deal.II/include/deal.II/algorithms/operator.h index f4e407d1e1..54c6b78a6b 100644 --- a/deal.II/include/deal.II/algorithms/operator.h +++ b/deal.II/include/deal.II/algorithms/operator.h @@ -52,7 +52,7 @@ namespace Algorithms * @author Guido Kanschat, 2010 */ template - class Operator : public Subscriptor + class Operator : public virtual Subscriptor { public: /** @@ -94,7 +94,7 @@ namespace Algorithms * @author Guido Kanschat, 2010 */ template - class OutputOperator : public Subscriptor + class OutputOperator : public virtual Subscriptor { OutputOperator(const OutputOperator &); public: diff --git a/deal.II/include/deal.II/algorithms/timestep_control.h b/deal.II/include/deal.II/algorithms/timestep_control.h index 4a2b28a874..e5938b660f 100644 --- a/deal.II/include/deal.II/algorithms/timestep_control.h +++ b/deal.II/include/deal.II/algorithms/timestep_control.h @@ -45,7 +45,7 @@ namespace Algorithms * The variable @p print_step can be used to control the amount of * output generated by the timestepping scheme. */ - class TimestepControl : public Subscriptor + class TimestepControl : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/base/function.h b/deal.II/include/deal.II/base/function.h index fc79c7f79a..0cc2039c2e 100644 --- a/deal.II/include/deal.II/base/function.h +++ b/deal.II/include/deal.II/base/function.h @@ -99,7 +99,7 @@ template class Vector; */ template class Function : public FunctionTime, - public Subscriptor + public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/base/logstream.h b/deal.II/include/deal.II/base/logstream.h index cb50979e38..8255e96c60 100644 --- a/deal.II/include/deal.II/base/logstream.h +++ b/deal.II/include/deal.II/base/logstream.h @@ -83,7 +83,7 @@ DEAL_II_NAMESPACE_OPEN * @ingroup textoutput * @author Guido Kanschat, Wolfgang Bangerth, 1999, 2003, 2011 */ -class LogStream : public Subscriptor +class LogStream : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/base/mg_level_object.h b/deal.II/include/deal.II/base/mg_level_object.h index 89dae1ab30..7b03088a96 100644 --- a/deal.II/include/deal.II/base/mg_level_object.h +++ b/deal.II/include/deal.II/base/mg_level_object.h @@ -35,7 +35,7 @@ DEAL_II_NAMESPACE_OPEN * @author Wolfgang Bangerth, Guido Kanschat, 1999, 2005, 2010 */ template -class MGLevelObject : public Subscriptor +class MGLevelObject : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/base/named_data.h b/deal.II/include/deal.II/base/named_data.h index 6d4c7b3af1..e239894376 100644 --- a/deal.II/include/deal.II/base/named_data.h +++ b/deal.II/include/deal.II/base/named_data.h @@ -40,7 +40,7 @@ DEAL_II_NAMESPACE_OPEN * @author Guido Kanschat, 2007, 2008, 2009 */ template -class NamedData : public Subscriptor +class NamedData : public virtual Subscriptor { public: /** Standard constructor creating diff --git a/deal.II/include/deal.II/base/parameter_handler.h b/deal.II/include/deal.II/base/parameter_handler.h index f19849ef96..269cdf9282 100644 --- a/deal.II/include/deal.II/base/parameter_handler.h +++ b/deal.II/include/deal.II/base/parameter_handler.h @@ -1783,7 +1783,7 @@ namespace Patterns * @ingroup input * @author Wolfgang Bangerth, October 1997, revised February 1998, 2010, 2011 */ -class ParameterHandler : public Subscriptor +class ParameterHandler : public virtual Subscriptor { private: /** diff --git a/deal.II/include/deal.II/base/polynomial.h b/deal.II/include/deal.II/base/polynomial.h index 8897467e04..3df54af07d 100644 --- a/deal.II/include/deal.II/base/polynomial.h +++ b/deal.II/include/deal.II/base/polynomial.h @@ -46,7 +46,7 @@ namespace Polynomials * @author Ralf Hartmann, Guido Kanschat, 2000, 2006 */ template - class Polynomial : public Subscriptor + class Polynomial : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/base/quadrature.h b/deal.II/include/deal.II/base/quadrature.h index cfe06b50fc..5b9b575ad7 100644 --- a/deal.II/include/deal.II/base/quadrature.h +++ b/deal.II/include/deal.II/base/quadrature.h @@ -77,7 +77,7 @@ DEAL_II_NAMESPACE_OPEN * @author Wolfgang Bangerth, Guido Kanschat, 1998, 1999, 2000, 2005, 2009 */ template -class Quadrature : public Subscriptor +class Quadrature : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/base/table.h b/deal.II/include/deal.II/base/table.h index fc28f61f82..bdab58b6f2 100644 --- a/deal.II/include/deal.II/base/table.h +++ b/deal.II/include/deal.II/base/table.h @@ -459,7 +459,7 @@ namespace internal * @author Wolfgang Bangerth, 2002. */ template -class TableBase : public Subscriptor +class TableBase : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/base/tensor_function.h b/deal.II/include/deal.II/base/tensor_function.h index 81b0dc008c..7592460199 100644 --- a/deal.II/include/deal.II/base/tensor_function.h +++ b/deal.II/include/deal.II/base/tensor_function.h @@ -53,7 +53,7 @@ DEAL_II_NAMESPACE_OPEN */ template class TensorFunction : public FunctionTime, - public Subscriptor + public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/dofs/block_info.h b/deal.II/include/deal.II/dofs/block_info.h index 9738685202..fa175def88 100644 --- a/deal.II/include/deal.II/dofs/block_info.h +++ b/deal.II/include/deal.II/dofs/block_info.h @@ -86,7 +86,7 @@ namespace hp * @ingroup dofs * @author Guido Kanschat, 2009 */ -class BlockInfo : public Subscriptor +class BlockInfo : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/dofs/dof_handler.h b/deal.II/include/deal.II/dofs/dof_handler.h index 707eaedf8e..0593a28a3e 100644 --- a/deal.II/include/deal.II/dofs/dof_handler.h +++ b/deal.II/include/deal.II/dofs/dof_handler.h @@ -168,7 +168,7 @@ namespace internal * @author Wolfgang Bangerth */ template -class DoFHandler : public Subscriptor +class DoFHandler : public virtual Subscriptor { typedef dealii::internal::DoFHandler::Iterators > IteratorSelector; public: diff --git a/deal.II/include/deal.II/fe/fe.h b/deal.II/include/deal.II/fe/fe.h index 6c018ffbe3..54c65aa663 100644 --- a/deal.II/include/deal.II/fe/fe.h +++ b/deal.II/include/deal.II/fe/fe.h @@ -338,7 +338,7 @@ namespace hp * @author Wolfgang Bangerth, Guido Kanschat, Ralf Hartmann, 1998, 2000, 2001, 2005 */ template -class FiniteElement : public Subscriptor, +class FiniteElement : public virtual Subscriptor, public FiniteElementData { public: diff --git a/deal.II/include/deal.II/fe/fe_values.h b/deal.II/include/deal.II/fe/fe_values.h index 9cb34a481f..647ec442c8 100644 --- a/deal.II/include/deal.II/fe/fe_values.h +++ b/deal.II/include/deal.II/fe/fe_values.h @@ -1611,7 +1611,7 @@ public: */ template class FEValuesBase : protected FEValuesData, - public Subscriptor + public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/fe/mapping.h b/deal.II/include/deal.II/fe/mapping.h index 73a327eded..efe96109f5 100644 --- a/deal.II/include/deal.II/fe/mapping.h +++ b/deal.II/include/deal.II/fe/mapping.h @@ -216,7 +216,7 @@ enum MappingType * @author Guido Kanschat, Ralf Hartmann 2000, 2001 */ template -class Mapping : public Subscriptor +class Mapping : public virtual Subscriptor { public: @@ -316,7 +316,7 @@ public: * has access to the precomputed * values stored there. */ - class InternalDataBase: public Subscriptor + class InternalDataBase: public virtual Subscriptor { private: /** diff --git a/deal.II/include/deal.II/grid/intergrid_map.h b/deal.II/include/deal.II/grid/intergrid_map.h index 04bf97c917..47b11195fb 100644 --- a/deal.II/include/deal.II/grid/intergrid_map.h +++ b/deal.II/include/deal.II/grid/intergrid_map.h @@ -112,7 +112,7 @@ DEAL_II_NAMESPACE_OPEN * @author Wolfgang Bangerth, 1999 */ template -class InterGridMap : public Subscriptor +class InterGridMap : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/grid/tria.h b/deal.II/include/deal.II/grid/tria.h index e47add785f..a69a21bfaa 100644 --- a/deal.II/include/deal.II/grid/tria.h +++ b/deal.II/include/deal.II/grid/tria.h @@ -1201,7 +1201,7 @@ namespace internal * @author Wolfgang Bangerth, 1998; Ralf Hartmann, 2005 */ template -class Triangulation : public Subscriptor +class Triangulation : public virtual Subscriptor { private: diff --git a/deal.II/include/deal.II/grid/tria_boundary.h b/deal.II/include/deal.II/grid/tria_boundary.h index ef462423f8..b124f7f2d0 100644 --- a/deal.II/include/deal.II/grid/tria_boundary.h +++ b/deal.II/include/deal.II/grid/tria_boundary.h @@ -75,7 +75,7 @@ template class Triangulation; * @author Wolfgang Bangerth, 1999, 2001, 2009, Ralf Hartmann, 2001, 2008 */ template -class Boundary : public Subscriptor +class Boundary : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/hp/dof_handler.h b/deal.II/include/deal.II/hp/dof_handler.h index 57c53edc7a..843e04b265 100644 --- a/deal.II/include/deal.II/hp/dof_handler.h +++ b/deal.II/include/deal.II/hp/dof_handler.h @@ -73,7 +73,7 @@ namespace hp * @ingroup hp */ template - class DoFHandler : public Subscriptor + class DoFHandler : public virtual Subscriptor { typedef dealii::internal::DoFHandler::Iterators > IteratorSelector; public: diff --git a/deal.II/include/deal.II/hp/fe_collection.h b/deal.II/include/deal.II/hp/fe_collection.h index ddafe78b13..3147efe3da 100644 --- a/deal.II/include/deal.II/hp/fe_collection.h +++ b/deal.II/include/deal.II/hp/fe_collection.h @@ -45,7 +45,7 @@ namespace hp * @author Wolfgang Bangerth, 2003 */ template - class FECollection : public Subscriptor + class FECollection : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/hp/mapping_collection.h b/deal.II/include/deal.II/hp/mapping_collection.h index 3e5b925727..c72190b920 100644 --- a/deal.II/include/deal.II/hp/mapping_collection.h +++ b/deal.II/include/deal.II/hp/mapping_collection.h @@ -48,7 +48,7 @@ namespace hp * @author Oliver Kayser-Herold, 2005 */ template - class MappingCollection : public Subscriptor + class MappingCollection : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/hp/q_collection.h b/deal.II/include/deal.II/hp/q_collection.h index 23f6b4df7c..db17db53a2 100644 --- a/deal.II/include/deal.II/hp/q_collection.h +++ b/deal.II/include/deal.II/hp/q_collection.h @@ -37,7 +37,7 @@ namespace hp * @author Oliver Kayser-Herold, 2005 */ template - class QCollection : public Subscriptor + class QCollection : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/arpack_solver.h b/deal.II/include/deal.II/lac/arpack_solver.h index b569834e21..36579bf988 100644 --- a/deal.II/include/deal.II/lac/arpack_solver.h +++ b/deal.II/include/deal.II/lac/arpack_solver.h @@ -73,7 +73,7 @@ extern "C" void dneupd_(int *rvec, char *howmany, int *select, double *d, * Class to interface with the ARPACK routines. */ -class ArpackSolver : public Subscriptor +class ArpackSolver : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/block_indices.h b/deal.II/include/deal.II/lac/block_indices.h index 5a8264c52b..19320d144a 100644 --- a/deal.II/include/deal.II/lac/block_indices.h +++ b/deal.II/include/deal.II/lac/block_indices.h @@ -46,7 +46,7 @@ DEAL_II_NAMESPACE_OPEN * @see @ref GlossBlockLA "Block (linear algebra)" * @author Wolfgang Bangerth, Guido Kanschat, 2000, 2007, 2011 */ -class BlockIndices : public Subscriptor +class BlockIndices : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/lac/block_list.h b/deal.II/include/deal.II/lac/block_list.h index d40c9c9814..8f4fb7ebcc 100644 --- a/deal.II/include/deal.II/lac/block_list.h +++ b/deal.II/include/deal.II/lac/block_list.h @@ -45,7 +45,7 @@ DEAL_II_NAMESPACE_OPEN * @date 2010 */ class BlockList : - public Subscriptor + public virtual Subscriptor { public: /// The container for each index set diff --git a/deal.II/include/deal.II/lac/block_matrix.h b/deal.II/include/deal.II/lac/block_matrix.h index 7325b5db6a..16f8fcd921 100644 --- a/deal.II/include/deal.II/lac/block_matrix.h +++ b/deal.II/include/deal.II/lac/block_matrix.h @@ -39,7 +39,7 @@ DEAL_II_NAMESPACE_OPEN * @author Guido Kanschat, 2000 */ template -class BlockDiagonalMatrix : public Subscriptor +class BlockDiagonalMatrix : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/block_matrix_array.h b/deal.II/include/deal.II/lac/block_matrix_array.h index 028ead966e..d014d472db 100644 --- a/deal.II/include/deal.II/lac/block_matrix_array.h +++ b/deal.II/include/deal.II/lac/block_matrix_array.h @@ -120,7 +120,7 @@ template class Vector; * @date 2000-2005, 2010 */ template -class BlockMatrixArray : public Subscriptor +class BlockMatrixArray : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/block_matrix_base.h b/deal.II/include/deal.II/lac/block_matrix_base.h index 8cd475e641..f16d611262 100644 --- a/deal.II/include/deal.II/lac/block_matrix_base.h +++ b/deal.II/include/deal.II/lac/block_matrix_base.h @@ -354,7 +354,7 @@ namespace BlockMatrixIterators * @author Wolfgang Bangerth, 2000, 2004 */ template -class BlockMatrixBase : public Subscriptor +class BlockMatrixBase : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/block_sparse_matrix_ez.h b/deal.II/include/deal.II/lac/block_sparse_matrix_ez.h index c42d51ece1..b659766120 100644 --- a/deal.II/include/deal.II/lac/block_sparse_matrix_ez.h +++ b/deal.II/include/deal.II/lac/block_sparse_matrix_ez.h @@ -44,7 +44,7 @@ template class BlockVector; * @author Guido Kanschat, 2002, 2003 */ template -class BlockSparseMatrixEZ : public Subscriptor +class BlockSparseMatrixEZ : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/block_sparsity_pattern.h b/deal.II/include/deal.II/lac/block_sparsity_pattern.h index ef700e9218..7e32376cfd 100644 --- a/deal.II/include/deal.II/lac/block_sparsity_pattern.h +++ b/deal.II/include/deal.II/lac/block_sparsity_pattern.h @@ -79,7 +79,7 @@ namespace TrilinosWrappers * @author Wolfgang Bangerth, 2000, 2001 */ template -class BlockSparsityPatternBase : public Subscriptor +class BlockSparsityPatternBase : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/block_vector_base.h b/deal.II/include/deal.II/lac/block_vector_base.h index a36f8daf8c..9ac3a838e3 100644 --- a/deal.II/include/deal.II/lac/block_vector_base.h +++ b/deal.II/include/deal.II/lac/block_vector_base.h @@ -708,7 +708,7 @@ namespace internal * @author Wolfgang Bangerth, Guido Kanschat, 1999, 2000, 2001, 2002, 2004 */ template -class BlockVectorBase : public Subscriptor +class BlockVectorBase : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/chunk_sparsity_pattern.h b/deal.II/include/deal.II/lac/chunk_sparsity_pattern.h index 8a41854df8..fba7da6b31 100644 --- a/deal.II/include/deal.II/lac/chunk_sparsity_pattern.h +++ b/deal.II/include/deal.II/lac/chunk_sparsity_pattern.h @@ -43,7 +43,7 @@ template class ChunkSparseMatrix; * * @author Wolfgang Bangerth, 2008 */ -class ChunkSparsityPattern : public Subscriptor +class ChunkSparsityPattern : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/lac/compressed_set_sparsity_pattern.h b/deal.II/include/deal.II/lac/compressed_set_sparsity_pattern.h index 5f23cb011c..c890e06515 100644 --- a/deal.II/include/deal.II/lac/compressed_set_sparsity_pattern.h +++ b/deal.II/include/deal.II/lac/compressed_set_sparsity_pattern.h @@ -103,7 +103,7 @@ template class SparseMatrix; * * @author Oliver Kayser-Herold, 2007 */ -class CompressedSetSparsityPattern : public Subscriptor +class CompressedSetSparsityPattern : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/compressed_simple_sparsity_pattern.h b/deal.II/include/deal.II/lac/compressed_simple_sparsity_pattern.h index 09a9bffa7a..94b551722b 100644 --- a/deal.II/include/deal.II/lac/compressed_simple_sparsity_pattern.h +++ b/deal.II/include/deal.II/lac/compressed_simple_sparsity_pattern.h @@ -84,7 +84,7 @@ template class SparseMatrix; * * @author Timo Heister, 2008 */ -class CompressedSimpleSparsityPattern : public Subscriptor +class CompressedSimpleSparsityPattern : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/compressed_sparsity_pattern.h b/deal.II/include/deal.II/lac/compressed_sparsity_pattern.h index ffb6333054..787deea320 100644 --- a/deal.II/include/deal.II/lac/compressed_sparsity_pattern.h +++ b/deal.II/include/deal.II/lac/compressed_sparsity_pattern.h @@ -85,7 +85,7 @@ template class SparseMatrix; * * @author Wolfgang Bangerth, 2001 */ -class CompressedSparsityPattern : public Subscriptor +class CompressedSparsityPattern : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/constraint_matrix.h b/deal.II/include/deal.II/lac/constraint_matrix.h index 87a4c3c42d..3877077407 100644 --- a/deal.II/include/deal.II/lac/constraint_matrix.h +++ b/deal.II/include/deal.II/lac/constraint_matrix.h @@ -136,7 +136,7 @@ namespace internals * @ingroup constraints * @author Wolfgang Bangerth, Martin Kronbichler, 1998, 2004, 2008, 2009 */ -class ConstraintMatrix : public Subscriptor +class ConstraintMatrix : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/filtered_matrix.h b/deal.II/include/deal.II/lac/filtered_matrix.h index 8a1ee43bf7..e060c537b3 100644 --- a/deal.II/include/deal.II/lac/filtered_matrix.h +++ b/deal.II/include/deal.II/lac/filtered_matrix.h @@ -201,7 +201,7 @@ template class FilteredMatrixBlock; * @author Wolfgang Bangerth 2001, Luca Heltai 2006, Guido Kanschat 2007, 2008 */ template -class FilteredMatrix : public Subscriptor +class FilteredMatrix : public virtual Subscriptor { public: class const_iterator; diff --git a/deal.II/include/deal.II/lac/iterative_inverse.h b/deal.II/include/deal.II/lac/iterative_inverse.h index 4104a547a8..acfa815f64 100644 --- a/deal.II/include/deal.II/lac/iterative_inverse.h +++ b/deal.II/include/deal.II/lac/iterative_inverse.h @@ -73,7 +73,7 @@ DEAL_II_NAMESPACE_OPEN * @date 2010 */ template -class IterativeInverse : public Subscriptor +class IterativeInverse : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/lapack_full_matrix.h b/deal.II/include/deal.II/lac/lapack_full_matrix.h index fa6636a912..d4c2495261 100644 --- a/deal.II/include/deal.II/lac/lapack_full_matrix.h +++ b/deal.II/include/deal.II/lac/lapack_full_matrix.h @@ -680,7 +680,7 @@ private: template class PreconditionLU : - public Subscriptor + public virtual Subscriptor { public: void initialize(const LAPACKFullMatrix &); diff --git a/deal.II/include/deal.II/lac/matrix_block.h b/deal.II/include/deal.II/lac/matrix_block.h index e2eb43ef72..f0fd7d7eca 100644 --- a/deal.II/include/deal.II/lac/matrix_block.h +++ b/deal.II/include/deal.II/lac/matrix_block.h @@ -98,7 +98,7 @@ namespace internal */ template class MatrixBlock - : public Subscriptor + : public virtual Subscriptor { public: /** @@ -482,7 +482,7 @@ public: */ template class MGMatrixBlockVector - : public Subscriptor + : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/matrix_lib.h b/deal.II/include/deal.II/lac/matrix_lib.h index 06b1df2e1a..782a649a4d 100644 --- a/deal.II/include/deal.II/lac/matrix_lib.h +++ b/deal.II/include/deal.II/lac/matrix_lib.h @@ -154,7 +154,7 @@ private: * @author Guido Kanschat, 2007 */ template -class ScaledMatrix : public Subscriptor +class ScaledMatrix : public virtual Subscriptor { public: /** @@ -323,7 +323,7 @@ private: * * @author Guido Kanschat, 2002, 2003 */ -class MeanValueFilter : public Subscriptor +class MeanValueFilter : public virtual Subscriptor { public: /** @@ -418,7 +418,7 @@ private: * @author Guido Kanschat, 2005 */ template -class InverseMatrixRichardson : public Subscriptor +class InverseMatrixRichardson : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/parallel_vector.h b/deal.II/include/deal.II/lac/parallel_vector.h index e1c53ceb32..ccbbe1c439 100644 --- a/deal.II/include/deal.II/lac/parallel_vector.h +++ b/deal.II/include/deal.II/lac/parallel_vector.h @@ -81,7 +81,7 @@ namespace parallel * @author Katharina Kormann, Martin Kronbichler, 2010, 2011 */ template - class Vector : public Subscriptor + class Vector : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/petsc_matrix_base.h b/deal.II/include/deal.II/lac/petsc_matrix_base.h index 634ac7baf0..f6fd66a47d 100644 --- a/deal.II/include/deal.II/lac/petsc_matrix_base.h +++ b/deal.II/include/deal.II/lac/petsc_matrix_base.h @@ -284,7 +284,7 @@ namespace PETScWrappers * @ingroup Matrix1 * @author Wolfgang Bangerth, 2004 */ - class MatrixBase : public Subscriptor + class MatrixBase : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/petsc_vector_base.h b/deal.II/include/deal.II/lac/petsc_vector_base.h index 25c36dc628..3595d68ca6 100644 --- a/deal.II/include/deal.II/lac/petsc_vector_base.h +++ b/deal.II/include/deal.II/lac/petsc_vector_base.h @@ -240,7 +240,7 @@ namespace PETScWrappers * @ingroup PETScWrappers * @author Wolfgang Bangerth, 2004 */ - class VectorBase : public Subscriptor + class VectorBase : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/pointer_matrix.h b/deal.II/include/deal.II/lac/pointer_matrix.h index 0a193b2c78..f92617b3e5 100644 --- a/deal.II/include/deal.II/lac/pointer_matrix.h +++ b/deal.II/include/deal.II/lac/pointer_matrix.h @@ -45,7 +45,7 @@ template class TridiagonalMatrix; * @author Guido Kanschat, 2000, 2001, 2002 */ template -class PointerMatrixBase : public Subscriptor +class PointerMatrixBase : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/precondition.h b/deal.II/include/deal.II/lac/precondition.h index 497a0c153c..a708c75035 100644 --- a/deal.II/include/deal.II/lac/precondition.h +++ b/deal.II/include/deal.II/lac/precondition.h @@ -52,7 +52,7 @@ template class SparseMatrix; * * @author Guido Kanschat, 1999 */ -class PreconditionIdentity : public Subscriptor +class PreconditionIdentity : public virtual Subscriptor { public: @@ -139,7 +139,7 @@ public: * * @author Guido Kanschat, 2005 */ -class PreconditionRichardson : public Subscriptor +class PreconditionRichardson : public virtual Subscriptor { public: /** @@ -280,7 +280,7 @@ private: * @author Guido Kanschat, Wolfgang Bangerth, 1999 */ template, class VECTOR = Vector > -class PreconditionUseMatrix : public Subscriptor +class PreconditionUseMatrix : public virtual Subscriptor { public: /** @@ -333,7 +333,7 @@ private: * @author Guido Kanschat, 2000 */ template > -class PreconditionRelaxation : public Subscriptor +class PreconditionRelaxation : public virtual Subscriptor { public: /** @@ -761,7 +761,7 @@ private: * @author Guido Kanschat, 1999 */ template, class PRECONDITION = PreconditionIdentity> -class PreconditionLACSolver : public Subscriptor +class PreconditionLACSolver : public virtual Subscriptor { public: /** @@ -819,7 +819,7 @@ private: * @author Guido Kanschat, 2000 */ template -class PreconditionedMatrix : public Subscriptor +class PreconditionedMatrix : public virtual Subscriptor { public: /** @@ -881,7 +881,7 @@ private: * @author Martin Kronbichler, 2009 */ template , class VECTOR=Vector > -class PreconditionChebyshev : public Subscriptor +class PreconditionChebyshev : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/precondition_selector.h b/deal.II/include/deal.II/lac/precondition_selector.h index 12d6c4ce05..4d376e9022 100644 --- a/deal.II/include/deal.II/lac/precondition_selector.h +++ b/deal.II/include/deal.II/lac/precondition_selector.h @@ -90,7 +90,7 @@ template class SparseMatrix; */ template , class VECTOR = dealii::Vector > -class PreconditionSelector : public Subscriptor +class PreconditionSelector : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/lac/relaxation_block.h b/deal.II/include/deal.II/lac/relaxation_block.h index 6a2d94fc25..cc2f408625 100644 --- a/deal.II/include/deal.II/lac/relaxation_block.h +++ b/deal.II/include/deal.II/lac/relaxation_block.h @@ -66,7 +66,7 @@ public: /** * Parameters for block relaxation methods. */ - class AdditionalData : public Subscriptor + class AdditionalData : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/schur_matrix.h b/deal.II/include/deal.II/lac/schur_matrix.h index 8b59d15765..97ce3c718e 100644 --- a/deal.II/include/deal.II/lac/schur_matrix.h +++ b/deal.II/include/deal.II/lac/schur_matrix.h @@ -90,7 +90,7 @@ DEAL_II_NAMESPACE_OPEN * @author Guido Kanschat, 2000, 2001, 2002 */ template -class SchurMatrix : public Subscriptor +class SchurMatrix : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/lac/solver.h b/deal.II/include/deal.II/lac/solver.h index ac1c2942e5..ce643822d0 100644 --- a/deal.II/include/deal.II/lac/solver.h +++ b/deal.II/include/deal.II/lac/solver.h @@ -139,7 +139,7 @@ class SolverControl; * @author Wolfgang Bangerth, Guido Kanschat, Ralf Hartmann, 1997-2001, 2005 */ template > -class Solver : public Subscriptor +class Solver : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/solver_control.h b/deal.II/include/deal.II/lac/solver_control.h index 0ad4ac21fc..04bb66ca7a 100644 --- a/deal.II/include/deal.II/lac/solver_control.h +++ b/deal.II/include/deal.II/lac/solver_control.h @@ -58,7 +58,7 @@ class ParameterHandler; * * @author Guido Kanschat */ -class SolverControl : public Subscriptor +class SolverControl : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/lac/solver_selector.h b/deal.II/include/deal.II/lac/solver_selector.h index cb9149e6c2..afd3e96963 100644 --- a/deal.II/include/deal.II/lac/solver_selector.h +++ b/deal.II/include/deal.II/lac/solver_selector.h @@ -92,7 +92,7 @@ DEAL_II_NAMESPACE_OPEN * @author Ralf Hartmann, 1999 */ template > -class SolverSelector : public Subscriptor +class SolverSelector : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/lac/sparse_direct.h b/deal.II/include/deal.II/lac/sparse_direct.h index 03b3e1ce07..78281bc256 100644 --- a/deal.II/include/deal.II/lac/sparse_direct.h +++ b/deal.II/include/deal.II/lac/sparse_direct.h @@ -188,7 +188,7 @@ DEAL_II_NAMESPACE_OPEN * * @author Wolfgang Bangerth, 2000, 2001, 2002 */ -class SparseDirectMA27 : public Subscriptor +class SparseDirectMA27 : public virtual Subscriptor { public: /** @@ -678,7 +678,7 @@ private: * * @author Wolfgang Bangerth, 2000, 2001 */ -class SparseDirectMA47 : public Subscriptor +class SparseDirectMA47 : public virtual Subscriptor { public: /** @@ -1057,7 +1057,7 @@ private: * * @author Wolfgang Bangerth, 2004 */ -class SparseDirectUMFPACK : public Subscriptor +class SparseDirectUMFPACK : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/sparse_matrix_ez.h b/deal.II/include/deal.II/lac/sparse_matrix_ez.h index 08718a1c62..860bc42ccc 100644 --- a/deal.II/include/deal.II/lac/sparse_matrix_ez.h +++ b/deal.II/include/deal.II/lac/sparse_matrix_ez.h @@ -94,7 +94,7 @@ template class FullMatrix; * @date 2002, 2010 */ template -class SparseMatrixEZ : public Subscriptor +class SparseMatrixEZ : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/sparsity_pattern.h b/deal.II/include/deal.II/lac/sparsity_pattern.h index 5c13c278e0..c3daaf603d 100644 --- a/deal.II/include/deal.II/lac/sparsity_pattern.h +++ b/deal.II/include/deal.II/lac/sparsity_pattern.h @@ -254,7 +254,7 @@ namespace SparsityPatternIterators * * @author Wolfgang Bangerth, Guido Kanschat and others */ -class SparsityPattern : public Subscriptor +class SparsityPattern : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/trilinos_precondition.h b/deal.II/include/deal.II/lac/trilinos_precondition.h index 4c349b1531..7b5fba7b80 100644 --- a/deal.II/include/deal.II/lac/trilinos_precondition.h +++ b/deal.II/include/deal.II/lac/trilinos_precondition.h @@ -69,7 +69,7 @@ namespace TrilinosWrappers * @ingroup Preconditioners * @author Martin Kronbichler, 2008 */ - class PreconditionBase : public Subscriptor + class PreconditionBase : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/lac/trilinos_sparse_matrix.h b/deal.II/include/deal.II/lac/trilinos_sparse_matrix.h index e522461661..ce727d10e5 100644 --- a/deal.II/include/deal.II/lac/trilinos_sparse_matrix.h +++ b/deal.II/include/deal.II/lac/trilinos_sparse_matrix.h @@ -302,7 +302,7 @@ namespace TrilinosWrappers * @ingroup Matrix1 * @author Martin Kronbichler, Wolfgang Bangerth, 2008, 2009 */ - class SparseMatrix : public Subscriptor + class SparseMatrix : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/trilinos_sparsity_pattern.h b/deal.II/include/deal.II/lac/trilinos_sparsity_pattern.h index 0967442a6f..355e8987fb 100644 --- a/deal.II/include/deal.II/lac/trilinos_sparsity_pattern.h +++ b/deal.II/include/deal.II/lac/trilinos_sparsity_pattern.h @@ -266,7 +266,7 @@ namespace TrilinosWrappers * @ingroup Sparsity * @author Martin Kronbichler, 2008 */ - class SparsityPattern : public Subscriptor + class SparsityPattern : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/lac/trilinos_vector_base.h b/deal.II/include/deal.II/lac/trilinos_vector_base.h index 76bee84634..90101eb753 100644 --- a/deal.II/include/deal.II/lac/trilinos_vector_base.h +++ b/deal.II/include/deal.II/lac/trilinos_vector_base.h @@ -252,7 +252,7 @@ namespace TrilinosWrappers * @ingroup Vectors * @author Martin Kronbichler, 2008 */ - class VectorBase : public Subscriptor + class VectorBase : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/vector.h b/deal.II/include/deal.II/lac/vector.h index f4a65a839a..a7fe53d495 100644 --- a/deal.II/include/deal.II/lac/vector.h +++ b/deal.II/include/deal.II/lac/vector.h @@ -101,7 +101,7 @@ struct VectorOperation * @author Guido Kanschat, Franz-Theo Suttmeier, Wolfgang Bangerth */ template -class Vector : public Subscriptor +class Vector : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/lac/vector_memory.h b/deal.II/include/deal.II/lac/vector_memory.h index ec8926a42c..203e735d40 100644 --- a/deal.II/include/deal.II/lac/vector_memory.h +++ b/deal.II/include/deal.II/lac/vector_memory.h @@ -66,7 +66,7 @@ DEAL_II_NAMESPACE_OPEN * @author Guido Kanschat, 1998-2003 */ template > -class VectorMemory : public Subscriptor +class VectorMemory : public virtual Subscriptor { public: diff --git a/deal.II/include/deal.II/meshworker/local_integrator.h b/deal.II/include/deal.II/meshworker/local_integrator.h index c46173eb21..d192bc70f9 100644 --- a/deal.II/include/deal.II/meshworker/local_integrator.h +++ b/deal.II/include/deal.II/meshworker/local_integrator.h @@ -40,7 +40,7 @@ namespace MeshWorker * @date 2012 */ template - class LocalIntegrator : public Subscriptor + class LocalIntegrator : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/meshworker/vector_selector.h b/deal.II/include/deal.II/meshworker/vector_selector.h index 0edf1df4f6..cc378e0367 100644 --- a/deal.II/include/deal.II/meshworker/vector_selector.h +++ b/deal.II/include/deal.II/meshworker/vector_selector.h @@ -40,7 +40,7 @@ namespace MeshWorker * @author Guido Kanschat 2009 */ class VectorSelector : - public Subscriptor + public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/multigrid/mg_base.h b/deal.II/include/deal.II/multigrid/mg_base.h index 095eae0ed2..a180c7a259 100644 --- a/deal.II/include/deal.II/multigrid/mg_base.h +++ b/deal.II/include/deal.II/multigrid/mg_base.h @@ -46,7 +46,7 @@ template class MGLevelObject; * @author Guido Kanschat, 2002 */ template -class MGMatrixBase : public Subscriptor +class MGMatrixBase : public virtual Subscriptor { public: /* @@ -98,7 +98,7 @@ public: * @author Guido Kanschat, 2002 */ template -class MGCoarseGridBase : public Subscriptor +class MGCoarseGridBase : public virtual Subscriptor { public: /** @@ -163,7 +163,7 @@ public: * @author Wolfgang Bangerth, Guido Kanschat, 1999, 2002, 2007 */ template -class MGTransferBase : public Subscriptor +class MGTransferBase : public virtual Subscriptor { public: /** @@ -233,7 +233,7 @@ public: * @author Guido Kanschat, 2002 */ template -class MGSmootherBase : public Subscriptor +class MGSmootherBase : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/multigrid/mg_constrained_dofs.h b/deal.II/include/deal.II/multigrid/mg_constrained_dofs.h index 29fcf76ca1..34b4946fe1 100644 --- a/deal.II/include/deal.II/multigrid/mg_constrained_dofs.h +++ b/deal.II/include/deal.II/multigrid/mg_constrained_dofs.h @@ -32,7 +32,7 @@ template struct FunctionMap; * * @ingroup mg */ -class MGConstrainedDoFs : public Subscriptor +class MGConstrainedDoFs : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/multigrid/multigrid.h b/deal.II/include/deal.II/multigrid/multigrid.h index cf674c41f2..9a6807249f 100644 --- a/deal.II/include/deal.II/multigrid/multigrid.h +++ b/deal.II/include/deal.II/multigrid/multigrid.h @@ -60,7 +60,7 @@ DEAL_II_NAMESPACE_OPEN * @author Guido Kanschat, 1999 - 2005 */ template -class Multigrid : public Subscriptor +class Multigrid : public virtual Subscriptor { public: /** @@ -503,7 +503,7 @@ private: * @author Guido Kanschat, 1999, 2000, 2001, 2002 */ template -class PreconditionMG : public Subscriptor +class PreconditionMG : public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/numerics/data_postprocessor.h b/deal.II/include/deal.II/numerics/data_postprocessor.h index 912b65fc7d..7a533b96d3 100644 --- a/deal.II/include/deal.II/numerics/data_postprocessor.h +++ b/deal.II/include/deal.II/numerics/data_postprocessor.h @@ -95,7 +95,7 @@ DEAL_II_NAMESPACE_OPEN * @author Tobias Leicht, 2007 */ template -class DataPostprocessor: public Subscriptor +class DataPostprocessor: public virtual Subscriptor { public: /** diff --git a/deal.II/include/deal.II/numerics/time_dependent.h b/deal.II/include/deal.II/numerics/time_dependent.h index d9257fd470..071e1a2dc0 100644 --- a/deal.II/include/deal.II/numerics/time_dependent.h +++ b/deal.II/include/deal.II/numerics/time_dependent.h @@ -754,7 +754,7 @@ private: * * @author Wolfgang Bangerth, 1999 */ -class TimeStepBase : public Subscriptor +class TimeStepBase : public virtual Subscriptor { public: /**