Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:26:34

0001 #ifndef RecoLuminosity_LumiProducer_NormFunctor_h
0002 #define RecoLuminosity_LumiProducer_NormFunctor_h
0003 #include <string>
0004 #include <map>
0005 namespace lumi {
0006   class NormFunctor {
0007   public:
0008     explicit NormFunctor();
0009     NormFunctor(const NormFunctor&) = delete;
0010     const NormFunctor& operator=(const NormFunctor&) = delete;
0011     virtual ~NormFunctor() {}
0012     void initialize(const std::map<std::string, float>& coeffmap, const std::map<unsigned int, float>& afterglowmap);
0013     virtual float getCorrection(float luminonorm, float intglumi, unsigned int nBXs) const = 0;
0014 
0015   protected:
0016     std::map<std::string, float> m_coeffmap;
0017     std::map<unsigned int, float> m_afterglowmap;
0018   };
0019 }  // namespace lumi
0020 #endif