CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Functions
reco::formula Namespace Reference

Classes

struct  ArrayAdaptor
 
class  BinaryOperatorEvaluator
 
class  BinaryOperatorEvaluatorBase
 
class  ConstantEvaluator
 
class  EvaluatorBase
 
class  FunctionOneArgEvaluator
 
class  FunctionTwoArgsEvaluator
 
class  ParameterEvaluator
 
class  UnaryMinusEvaluator
 
class  VariableEvaluator
 

Functions

std::vector< std::string > shiftAST (std::vector< std::string > child)
 
double const * startingAddress (ArrayAdaptor const &iV)
 
double const * startingAddress (std::vector< double > const &iV)
 
template<size_t t>
double const * startingAddress (std::array< double, t > const &iV)
 

Function Documentation

std::vector< std::string > reco::formula::shiftAST ( std::vector< std::string >  child)
double const* reco::formula::startingAddress ( ArrayAdaptor const &  iV)
inline

Definition at line 42 of file FormulaEvaluator.h.

References reco::formula::ArrayAdaptor::empty(), and reco::formula::ArrayAdaptor::start().

Referenced by reco::FormulaEvaluator::evaluate().

42  {
43  if (iV.empty()) {
44  return nullptr;
45  }
46  return iV.start();
47  }
double const* reco::formula::startingAddress ( std::vector< double > const &  iV)
inline

Definition at line 50 of file FormulaEvaluator.h.

50  {
51  if (iV.empty()) {
52  return nullptr;
53  }
54  return &iV[0];
55  }
template<size_t t>
double const* reco::formula::startingAddress ( std::array< double, t > const &  iV)
inline

Definition at line 58 of file FormulaEvaluator.h.

58  {
59  if (iV.empty()) {
60  return nullptr;
61  }
62  return &iV[0];
63  }