CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GetLumi.h
Go to the documentation of this file.
1 #ifndef GetLumi_H
2 #define GetLumi_H
3 
4 // system include files
5 #include <memory>
6 
7 // user include files
12 
15 
17 
18 class LumiDetails;
19 class LumiSummary;
20 
21 class GetLumi
22 {
23  public:
24 
25  enum SQRT_S{
28  };
29 
30  static const unsigned int NUM_BX = 3564;
31  static constexpr double FREQ_ORBIT = 11246.; // Hz
32  static constexpr double SECONDS_PER_LS = double(0x40000)/double(FREQ_ORBIT);
33 
34  static constexpr double INELASTIC_XSEC_7TeV = 68.0; // mb
35  static constexpr double INELASTIC_XSEC_8TeV = 69.3; // mb
36 
37  GetLumi(const edm::ParameterSet&);
38  GetLumi(const edm::InputTag&, double);
40  GetLumi(const edm::InputTag&, double,edm::ConsumesCollector& iC);
41  virtual ~GetLumi();
42  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
43 
44  double getRawValue(const edm::Event&);
45  double getValue (const edm::Event&);
46 
47  double getRawValue(edm::LuminosityBlock const&,edm::EventSetup const&);
48  double getValue (edm::LuminosityBlock const&,edm::EventSetup const&);
49 
50  double convert2PU(double,double);
51  double convert2PU(double,int);
52 
53  // ----------member data ---------------------------
55  double lumiScale_;
56 
59 
60 };
61 #endif
static double INELASTIC_XSEC_8TeV
Definition: GetLumi.h:35
static double INELASTIC_XSEC_7TeV
Definition: GetLumi.h:34
edm::EDGetTokenT< LumiDetails > lumiDetailsToken_
Definition: GetLumi.h:57
#define constexpr
virtual ~GetLumi()
Definition: GetLumi.cc:38
double getValue(const edm::Event &)
Definition: GetLumi.cc:64
SQRT_S
Definition: GetLumi.h:25
edm::EDGetTokenT< LumiSummary > lumiSummaryToken_
Definition: GetLumi.h:58
double getRawValue(const edm::Event &)
Definition: GetLumi.cc:43
static const unsigned int NUM_BX
Definition: GetLumi.h:30
GetLumi(const edm::ParameterSet &)
Definition: GetLumi.cc:14
double convert2PU(double, double)
Definition: GetLumi.cc:106
edm::InputTag lumiInputTag_
Definition: GetLumi.h:54
static double FREQ_ORBIT
Definition: GetLumi.h:31
double lumiScale_
Definition: GetLumi.h:55
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
static double SECONDS_PER_LS
Definition: GetLumi.h:32