43 #ifndef __Panzer_ResponseMESupportBuilderBase_hpp__
44 #define __Panzer_ResponseMESupportBuilderBase_hpp__
46 #include "Teuchos_RCP.hpp"
48 #include "PanzerDiscFE_config.hpp"
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 > buildValueFactory() const =0
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildHessianFactory() const =0
virtual ~ResponseMESupportBuilderBase()
Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > build() const
virtual void setDerivativeInformation(const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &linearObjFactory)=0
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildDerivativeFactory() const =0
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildTangentFactory() const