10 #ifndef Thyra_ReusePreconditionerFactory_hpp
11 #define Thyra_ReusePreconditionerFactory_hpp
13 #include "Thyra_PreconditionerFactoryBase.hpp"
20 template <
class Scalar>
52 std::ostringstream oss;
56 oss <<
prec_->description();
79 return rcp(
new ParameterList);
116 RCP<PreconditionerBase<Scalar> >
prec_;
123 template <
class Scalar>
133 template <
class Scalar>
137 RCP<ReusePreconditionerFactory<Scalar> > fac =
139 fac->initialize(prec);
Concrete PreconditionerFactoryBase subclass that just returns an already created/initialized precondi...
RCP< const ParameterList > getParameterList() const
RCP< ReusePreconditionerFactory< Scalar > > reusePreconditionerFactory(const RCP< PreconditionerBase< Scalar > > &prec)
Nonmember constructor function.
bool is_null(const boost::shared_ptr< T > &p)
void setParameterList(RCP< ParameterList > const &)
RCP< PreconditionerBase< Scalar > > prec_
RCP< ParameterList > unsetParameterList()
ReusePreconditionerFactory()
Construct to uninitialized.
void initialize(const RCP< PreconditionerBase< Scalar > > &prec)
RCP< ParameterList > getNonconstParameterList()
RCP< const ParameterList > getValidParameters() const
Teuchos::RCP< PreconditionerBase< Scalar > > prec(const PreconditionerFactoryBase< Scalar > &precFactory, const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, const ESupportSolveUse supportSolveUse=SUPPORT_SOLVE_UNSPECIFIED)
void initializePrec(const RCP< const LinearOpSourceBase< Scalar > > &, PreconditionerBase< Scalar > *, const ESupportSolveUse=SUPPORT_SOLVE_UNSPECIFIED) const
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
virtual std::string description() const
RCP< ReusePreconditionerFactory< Scalar > > reusePreconditionerFactory()
Nonmember constructor function.
RCP< PreconditionerBase< Scalar > > getNonconstPreconditioner()
RCP< PreconditionerBase< Scalar > > createPrec() const
RCP< const PreconditionerBase< Scalar > > getPreconditioner() const
bool isCompatible(const LinearOpSourceBase< Scalar > &) const
std::string description() const
#define TEUCHOS_TEST_FOR_EXCEPT(throw_exception_test)
void uninitializePrec(PreconditionerBase< Scalar > *, RCP< const LinearOpSourceBase< Scalar > > *fwdOpSrc=NULL, ESupportSolveUse *supportSolveUse=NULL) const