diff --git a/packages/tpetra/core/src/Tpetra_BlockMultiVector_decl.hpp b/packages/tpetra/core/src/Tpetra_BlockMultiVector_decl.hpp index a2277dc77ac9..ccd28b22b8ae 100644 --- a/packages/tpetra/core/src/Tpetra_BlockMultiVector_decl.hpp +++ b/packages/tpetra/core/src/Tpetra_BlockMultiVector_decl.hpp @@ -326,7 +326,8 @@ class BlockMultiVector : /// /// This is how you can give a BlockMultiVector to Trilinos' solvers /// and preconditioners. - mv_type getMultiVectorView () const; + const mv_type & getMultiVectorView () const; + mv_type & getMultiVectorView (); //@} //! \name Coarse-grained operations diff --git a/packages/tpetra/core/src/Tpetra_BlockMultiVector_def.hpp b/packages/tpetra/core/src/Tpetra_BlockMultiVector_def.hpp index 415a27dc6437..633d7c502618 100644 --- a/packages/tpetra/core/src/Tpetra_BlockMultiVector_def.hpp +++ b/packages/tpetra/core/src/Tpetra_BlockMultiVector_def.hpp @@ -10,6 +10,7 @@ #ifndef TPETRA_BLOCKMULTIVECTOR_DEF_HPP #define TPETRA_BLOCKMULTIVECTOR_DEF_HPP +#include "Tpetra_BlockMultiVector_decl.hpp" #include "Tpetra_Details_Behavior.hpp" #include "Tpetra_BlockView.hpp" #include "Teuchos_OrdinalTraits.hpp" @@ -18,13 +19,21 @@ namespace Tpetra { template -typename BlockMultiVector::mv_type +const typename BlockMultiVector::mv_type & BlockMultiVector:: getMultiVectorView () const { return mv_; } +template +typename BlockMultiVector::mv_type & +BlockMultiVector:: +getMultiVectorView () +{ + return mv_; +} + template Teuchos::RCP > BlockMultiVector::