CMS 3D CMS Logo

NormFunctor.h
Go to the documentation of this file.
1 #ifndef RecoLuminosity_LumiProducer_NormFunctor_h
2 #define RecoLuminosity_LumiProducer_NormFunctor_h
3 #include <string>
4 #include <map>
5 namespace lumi {
6  class NormFunctor {
7  public:
8  explicit NormFunctor();
9  NormFunctor(const NormFunctor&) = delete;
10  const NormFunctor& operator=(const NormFunctor&) = delete;
11  virtual ~NormFunctor() {}
12  void initialize(const std::map<std::string, float>& coeffmap, const std::map<unsigned int, float>& afterglowmap);
13  virtual float getCorrection(float luminonorm, float intglumi, unsigned int nBXs) const = 0;
14 
15  protected:
16  std::map<std::string, float> m_coeffmap;
17  std::map<unsigned int, float> m_afterglowmap;
18  };
19 } // namespace lumi
20 #endif
const NormFunctor & operator=(const NormFunctor &)=delete
virtual float getCorrection(float luminonorm, float intglumi, unsigned int nBXs) const =0
virtual ~NormFunctor()
Definition: NormFunctor.h:11
void initialize(const std::map< std::string, float > &coeffmap, const std::map< unsigned int, float > &afterglowmap)
Definition: NormFunctor.cc:3
std::map< std::string, float > m_coeffmap
Definition: NormFunctor.h:16
std::map< unsigned int, float > m_afterglowmap
Definition: NormFunctor.h:17