CMS 3D CMS Logo

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

◆ shiftAST()

std::vector< std::string > reco::formula::shiftAST ( std::vector< std::string >  child)

◆ startingAddress() [1/3]

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  }

◆ startingAddress() [2/3]

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  }

◆ startingAddress() [3/3]

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  }