1 #ifndef CommonTools_Utils_FormulaEvaluator_h 2 #define CommonTools_Utils_FormulaEvaluator_h 72 template <
typename V,
typename P>
73 double evaluate(V
const& iVariables,
P const& iParameters)
const {
74 if (m_nVariables > iVariables.size()) {
75 throwWrongNumberOfVariables(iVariables.size());
77 if (m_nParameters > iParameters.size()) {
78 throwWrongNumberOfParameters(iParameters.size());
86 std::vector<std::string> abstractSyntaxTree()
const;
89 double evaluate(
double const* iVariables,
double const* iParameters)
const;
91 void throwWrongNumberOfVariables(
size_t)
const;
92 void throwWrongNumberOfParameters(
size_t)
const;
95 unsigned int m_nVariables = 0;
96 unsigned int m_nParameters = 0;
std::pair< OmniClusterRef, TrackingParticleRef > P