43 #ifndef __Panzer_ResponseMESupportBuilderBase_hpp__ 44 #define __Panzer_ResponseMESupportBuilderBase_hpp__ 46 #include "Teuchos_RCP.hpp" 48 #include "PanzerDiscFE_config.hpp" 74 virtual Teuchos::RCP<panzer::ResponseEvaluatorFactoryBase>
buildValueFactory()
const = 0;
88 #ifdef Panzer_BUILD_HESSIAN_SUPPORT 99 inline Teuchos::RCP<panzer::ResponseEvaluatorFactoryBase>
build()
const 100 {
return Teuchos::null; }
104 inline Teuchos::RCP<panzer::ResponseEvaluatorFactoryBase> ResponseMESupportBuilderBase::build<panzer::Traits::Residual>()
const 105 {
return buildValueFactory(); }
108 inline Teuchos::RCP<panzer::ResponseEvaluatorFactoryBase> ResponseMESupportBuilderBase::build<panzer::Traits::Jacobian>()
const 109 {
return buildDerivativeFactory(); }
112 inline Teuchos::RCP<panzer::ResponseEvaluatorFactoryBase> ResponseMESupportBuilderBase::build<panzer::Traits::Tangent>()
const 113 {
return buildTangentFactory(); }
115 #ifdef Panzer_BUILD_HESSIAN_SUPPORT 117 inline Teuchos::RCP<panzer::ResponseEvaluatorFactoryBase> ResponseMESupportBuilderBase::build<panzer::Traits::Hessian>()
const 118 {
return buildHessianFactory(); }
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildTangentFactory() const
Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > build() const
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildHessianFactory() const =0
virtual void setDerivativeInformation(const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &linearObjFactory)=0
virtual ~ResponseMESupportBuilderBase()
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildDerivativeFactory() const =0
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildValueFactory() const =0