29#ifndef Rythmos_ERROR_ESTIMATOR_BASE_H
30#define Rythmos_ERROR_ESTIMATOR_BASE_H
32#include "Teuchos_Describable.hpp"
33#include "Teuchos_ParameterListAcceptor.hpp"
34#include "Teuchos_VerboseObject.hpp"
35#include "Thyra_ModelEvaluator.hpp"
37#include "Rythmos_ErrorEstimateBase.hpp"
41enum ERROR_QUANTITY_OF_INTEREST { INVALID_ERROR_QTY, AVERAGE_ERROR_QTY, ENDPOINT_ERROR_QTY };
44class ErrorEstimatorBase
45 :
virtual public Teuchos::Describable
46 ,
virtual public Teuchos::ParameterListAcceptor
47 ,
virtual public Teuchos::VerboseObject<ErrorEstimatorBase<Scalar> >
52 virtual void setModel(
const Teuchos::RCP<Thyra::ModelEvaluator<Scalar> > model ) = 0;
55 virtual void setQuantityOfInterest( ERROR_QUANTITY_OF_INTEREST qtyOfInterest ) = 0;
58 virtual Teuchos::RCP<const ErrorEstimateBase<Scalar> > getErrorEstimate() = 0;