![]() |
![]() |
#include "formulaEvaluatorBase.h"
Public Types | |
enum | Precedence { Precedence::kIdentity = 1, Precedence::kComparison =2, Precedence::kPlusMinus = 3, Precedence::kMultDiv = 4, Precedence::kPower = 5, Precedence::kFunction = 6, Precedence::kParenthesis = 7, Precedence::kUnaryMinusOperator = 8 } |
Public Member Functions | |
virtual std::vector< std::string > | abstractSyntaxTree () const =0 |
virtual double | evaluate (double const *iVariables, double const *iParameters) const =0 |
EvaluatorBase () | |
EvaluatorBase (Precedence) | |
unsigned int | precedence () const |
void | setPrecedenceToParenthesis () |
virtual | ~EvaluatorBase () |
Private Member Functions | |
EvaluatorBase (const EvaluatorBase &)=delete | |
const EvaluatorBase & | operator= (const EvaluatorBase &)=delete |
Private Attributes | |
unsigned int | m_precedence |
Description: Base class for formula evaluators
Usage: Used as an internal detail on the reco::FormulaEvalutor class. Base class for all objects used in the abstract evaluation tree where one node corresponds to one syntax element of the formula.
Definition at line 34 of file formulaEvaluatorBase.h.
|
strong |
Enumerator | |
---|---|
kIdentity | |
kComparison | |
kPlusMinus | |
kMultDiv | |
kPower | |
kFunction | |
kParenthesis | |
kUnaryMinusOperator |
Definition at line 38 of file formulaEvaluatorBase.h.
reco::formula::EvaluatorBase::EvaluatorBase | ( | ) |
Definition at line 31 of file formulaEvaluatorBase.cc.
Referenced by setPrecedenceToParenthesis().
reco::formula::EvaluatorBase::EvaluatorBase | ( | Precedence | iPrec | ) |
Definition at line 36 of file formulaEvaluatorBase.cc.
|
virtual |
Definition at line 41 of file formulaEvaluatorBase.cc.
|
privatedelete |
|
pure virtual |
Implemented in reco::formula::BinaryOperatorEvaluator< Op >, reco::formula::FunctionTwoArgsEvaluator, reco::formula::FunctionOneArgEvaluator, reco::formula::UnaryMinusEvaluator, reco::formula::ConstantEvaluator, reco::formula::ParameterEvaluator, and reco::formula::VariableEvaluator.
Referenced by reco::formula::BinaryOperatorEvaluator< Op >::abstractSyntaxTree().
|
pure virtual |
Implemented in reco::formula::BinaryOperatorEvaluator< Op >, reco::formula::FunctionTwoArgsEvaluator, reco::formula::FunctionOneArgEvaluator, reco::formula::UnaryMinusEvaluator, reco::formula::ConstantEvaluator, reco::formula::ParameterEvaluator, and reco::formula::VariableEvaluator.
Referenced by reco::formula::BinaryOperatorEvaluator< Op >::evaluate().
|
privatedelete |
|
inline |
Definition at line 59 of file formulaEvaluatorBase.h.
References m_precedence.
Referenced by reco::formula::BinaryOperatorEvaluator< Op >::abstractSyntaxTree().
|
inline |
Definition at line 60 of file formulaEvaluatorBase.h.
References EvaluatorBase(), kParenthesis, m_precedence, and operator=().
|
private |
Definition at line 68 of file formulaEvaluatorBase.h.
Referenced by precedence(), and setPrecedenceToParenthesis().