11#ifndef __Panzer_ResponseMESupportBuilderBase_hpp__
12#define __Panzer_ResponseMESupportBuilderBase_hpp__
14#include "Teuchos_RCP.hpp"
16#include "PanzerDiscFE_config.hpp"
56#ifdef Panzer_BUILD_HESSIAN_SUPPORT
67 inline Teuchos::RCP<panzer::ResponseEvaluatorFactoryBase>
build()
const
68 {
return Teuchos::null; }
72inline Teuchos::RCP<panzer::ResponseEvaluatorFactoryBase> ResponseMESupportBuilderBase::build<panzer::Traits::Residual>()
const
73{
return buildValueFactory(); }
77{
return buildDerivativeFactory(); }
81{
return buildTangentFactory(); }
83#ifdef Panzer_BUILD_HESSIAN_SUPPORT
86{
return buildHessianFactory(); }
virtual ~ResponseMESupportBuilderBase()
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildTangentFactory() const
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildHessianFactory() const =0
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildDerivativeFactory() const =0
virtual void setDerivativeInformation(const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &linearObjFactory)=0
virtual Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > buildValueFactory() const =0
Teuchos::RCP< panzer::ResponseEvaluatorFactoryBase > build() const