Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:01:19

0001 #ifndef CommonTools_Utils_formulaParameterEvaluator_h
0002 #define CommonTools_Utils_formulaParameterEvaluator_h
0003 // -*- C++ -*-
0004 //
0005 // Package:     CommonTools/Utils
0006 // Class  :     reco::formula::ParameterEvaluator
0007 //
0008 /**\class reco::formula::ParameterEvaluator formulaParameterEvaluator.h "formulaParameterEvaluator.h"
0009 
0010  Description: [one line class summary]
0011 
0012  Usage:
0013     <usage>
0014 
0015 */
0016 //
0017 // Original Author:  Christopher Jones
0018 //         Created:  Wed, 23 Sep 2015 18:06:27 GMT
0019 //
0020 
0021 // system include files
0022 
0023 // user include files
0024 #include "formulaEvaluatorBase.h"
0025 
0026 // forward declarations
0027 
0028 namespace reco {
0029   namespace formula {
0030     class ParameterEvaluator : public EvaluatorBase {
0031     public:
0032       explicit ParameterEvaluator(unsigned int iIndex) : m_index(iIndex) {}
0033 
0034       // ---------- const member functions ---------------------
0035       double evaluate(double const* iVariables, double const* iParameters) const final;
0036       std::vector<std::string> abstractSyntaxTree() const final;
0037 
0038       ParameterEvaluator(const ParameterEvaluator&) = delete;
0039 
0040       const ParameterEvaluator& operator=(const ParameterEvaluator&) = delete;
0041 
0042     private:
0043       // ---------- member data --------------------------------
0044       unsigned int m_index;
0045     };
0046   }  // namespace formula
0047 }  // namespace reco
0048 
0049 #endif