CMS 3D CMS Logo

DQMProvInfo.h
Go to the documentation of this file.
1 #ifndef DQMPROVINFO_H
2 #define DQMPROVINFO_H
3 
10 
14 
16 
19 
20 #include <string>
21 #include <vector>
22 
23 class DQMProvInfo : public one::DQMEDAnalyzer<edm::one::WatchLuminosityBlocks> {
24  public:
25  // Constructor
26  DQMProvInfo(const edm::ParameterSet& ps);
27  // Destructor
28  ~DQMProvInfo() override;
29 
30  protected:
31  void dqmBeginRun(const edm::Run& r, const edm::EventSetup& c) override ;
32  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
34  const edm::EventSetup& c) override;
35  void analyze(const edm::Event& e, const edm::EventSetup& c) override;
37  const edm::EventSetup& c) override;
38 
39  private:
43 
44  void analyzeLhcInfo(const edm::Event& e);
45  void analyzeEventInfo(const edm::Event& e);
46  void analyzeProvInfo(const edm::Event& e);
47 
50  bool isPhysicsDeclared();
51 
52  void endLuminosityBlockLhcInfo(const int currentLSNumber);
53  void endLuminosityBlockEventInfo(const int currentLSNumber);
54  void blankPreviousLumiSections(const int currentLSNumber);
55  void blankAllLumiSections();
56 
57  // To max amount of lumisections we foresee for the plots
58  // DQM GUI renderplugins provide scaling to actual amount
59  const static int MAX_LUMIS = 6000;
60 
61  // Numbers of each of the vertical bins
62  const static int VBIN_CSC_P = 1;
63  const static int VBIN_CSC_M = 2;
64  const static int VBIN_DT_0 = 3;
65  const static int VBIN_DT_P = 4;
66  const static int VBIN_DT_M = 5;
67  const static int VBIN_EB_P = 6;
68  const static int VBIN_EB_M = 7;
69  const static int VBIN_EE_P = 8;
70  const static int VBIN_EE_M = 9;
71  const static int VBIN_ES_P = 10;
72  const static int VBIN_ES_M = 11;
73  const static int VBIN_HBHE_A = 12;
74  const static int VBIN_HBHE_B = 13;
75  const static int VBIN_HBHE_C = 14;
76  const static int VBIN_HF = 15;
77  const static int VBIN_HO = 16;
78  const static int VBIN_BPIX = 17;
79  const static int VBIN_FPIX = 18;
80  const static int VBIN_RPC = 19;
81  const static int VBIN_TIBTID = 20;
82  const static int VBIN_TOB = 21;
83  const static int VBIN_TEC_P = 22;
84  const static int VBIN_TE_M = 23;
85  const static int VBIN_CASTOR = 24;
86  const static int VBIN_ZDC = 25;
87 
88  // Highest DCS bin, used for the length of the corresponding array.
89  // We will have the indexes to this array the same as the vbins numbers.
90  // (I.e. value at index 0 will not be used.)
91  const static int MAX_DCS_VBINS = 25;
92 
93  const static int VBIN_PHYSICS_DECLARED = 26;
94  const static int VBIN_MOMENTUM = 27;
95  const static int VBIN_STABLE_BEAM = 28;
96  const static int VBIN_VALID = 29;
97 
98  const static int MAX_VBINS = 29;
99 
100  // Beam momentum at flat top, used to determine if collisions are
101  // occurring with the beams at the energy allowed for physics production.
102  const static int MAX_MOMENTUM = 6500;
103 
104  // Beam momentum allowed offset: it is a momentum value subtracted to
105  // maximum momentum in order to decrease the threshold for beams going to
106  // collisions for physics production. This happens because BST sends from
107  // time to time a value of the beam momentum slightly below the nominal values,
108  // even during stable collisions: in this way, we provide a correct information
109  // at the cost of not requiring the exact momentum being measured by BST.
110  const static int MOMENTUM_OFFSET = 1;
111 
112  // Process parameters
115 
119 
120  // MonitorElements for LhcInfo and corresponding variables
128  int lhcFill_;
131 
132  // MonitorElements for EventInfo and corresponding variables
138  bool dcsBits_[MAX_DCS_VBINS + 1];
140 
141  // MonitorElements for ProvInfo and corresponding variables
152  MonitorElement* processId_; // The PID associated with this job
154 };
155 
156 #endif
void fillDcsBitsFromDcsStatusCollection(const edm::Handle< DcsStatusCollection > &)
Definition: DQMProvInfo.cc:346
void endLuminosityBlockEventInfo(const int currentLSNumber)
Definition: DQMProvInfo.cc:442
MonitorElement * hBeamMode_
Definition: DQMProvInfo.h:121
int previousLSNumber_
Definition: DQMProvInfo.h:135
MonitorElement * hIntensity2_
Definition: DQMProvInfo.h:125
void beginLuminosityBlock(const edm::LuminosityBlock &l, const edm::EventSetup &c) override
Definition: DQMProvInfo.cc:231
MonitorElement * reportSummary_
Definition: DQMProvInfo.h:133
void analyzeEventInfo(const edm::Event &e)
Definition: DQMProvInfo.cc:276
MonitorElement * hMomentum_
Definition: DQMProvInfo.h:129
static const int VBIN_EE_P
Definition: DQMProvInfo.h:69
MonitorElement * workingDir_
Definition: DQMProvInfo.h:153
edm::EDGetTokenT< DcsStatusCollection > dcsStatusCollection_
Definition: DQMProvInfo.h:116
bool foundFirstDcsBits_
Definition: DQMProvInfo.h:139
edm::EDGetTokenT< DCSRecord > dcsRecordToken_
Definition: DQMProvInfo.h:118
static const int VBIN_VALID
Definition: DQMProvInfo.h:96
Class to contain DCS information from soft FED 1022.
Definition: DCSRecord.h:22
MonitorElement * processId_
Definition: DQMProvInfo.h:152
MonitorElement * hHltKey_
Definition: DQMProvInfo.h:148
void blankAllLumiSections()
Definition: DQMProvInfo.cc:506
MonitorElement * versGlobaltag_
Definition: DQMProvInfo.h:143
static const int VBIN_CASTOR
Definition: DQMProvInfo.h:85
static const int VBIN_HBHE_B
Definition: DQMProvInfo.h:74
static const int VBIN_EE_M
Definition: DQMProvInfo.h:70
static const int VBIN_HBHE_C
Definition: DQMProvInfo.h:75
bool globalTagRetrieved_
Definition: DQMProvInfo.h:145
static const int VBIN_HO
Definition: DQMProvInfo.h:77
std::string globalTag_
Definition: DQMProvInfo.h:144
static const int VBIN_DT_0
Definition: DQMProvInfo.h:64
static const int VBIN_TEC_P
Definition: DQMProvInfo.h:83
void bookHistogramsEventInfo(DQMStore::IBooker &)
Definition: DQMProvInfo.cc:156
static const int VBIN_CSC_M
Definition: DQMProvInfo.h:63
MonitorElement * versRuntype_
Definition: DQMProvInfo.h:146
static const int VBIN_TOB
Definition: DQMProvInfo.h:82
static const int VBIN_FPIX
Definition: DQMProvInfo.h:79
void fillDcsBitsFromDCSRecord(const DCSRecord &)
Definition: DQMProvInfo.cc:312
static const int MAX_LUMIS
Definition: DQMProvInfo.h:59
static const int VBIN_DT_M
Definition: DQMProvInfo.h:66
bool isPhysicsDeclared()
Definition: DQMProvInfo.cc:403
static const int VBIN_MOMENTUM
Definition: DQMProvInfo.h:94
void bookHistogramsProvInfo(DQMStore::IBooker &)
Definition: DQMProvInfo.cc:200
void bookHistogramsLhcInfo(DQMStore::IBooker &)
Definition: DQMProvInfo.cc:95
bool foundFirstPhysicsDeclared_
Definition: DQMProvInfo.h:137
void analyzeProvInfo(const edm::Event &e)
Definition: DQMProvInfo.cc:295
static const int MAX_MOMENTUM
Definition: DQMProvInfo.h:102
void dqmBeginRun(const edm::Run &r, const edm::EventSetup &c) override
Definition: DQMProvInfo.cc:55
static const int MAX_VBINS
Definition: DQMProvInfo.h:98
std::string subsystemname_
Definition: DQMProvInfo.h:113
MonitorElement * hLhcFill_
Definition: DQMProvInfo.h:127
static const int VBIN_STABLE_BEAM
Definition: DQMProvInfo.h:95
void blankPreviousLumiSections(const int currentLSNumber)
Definition: DQMProvInfo.cc:491
static const int VBIN_TIBTID
Definition: DQMProvInfo.h:81
void analyze(const edm::Event &e, const edm::EventSetup &c) override
Definition: DQMProvInfo.cc:248
static const int VBIN_EB_P
Definition: DQMProvInfo.h:67
static const int VBIN_BPIX
Definition: DQMProvInfo.h:78
void analyzeLhcInfo(const edm::Event &e)
Definition: DQMProvInfo.cc:260
MonitorElement * hIntensity1_
Definition: DQMProvInfo.h:123
static const int VBIN_TE_M
Definition: DQMProvInfo.h:84
static const int VBIN_RPC
Definition: DQMProvInfo.h:80
MonitorElement * versCMSSW_
Definition: DQMProvInfo.h:142
MonitorElement * hIsCollisionsRun_
Definition: DQMProvInfo.h:151
std::string runType_
Definition: DQMProvInfo.h:147
edm::EDGetTokenT< TCDSRecord > tcdsrecord_
Definition: DQMProvInfo.h:117
static const int MAX_DCS_VBINS
Definition: DQMProvInfo.h:91
static const int VBIN_ZDC
Definition: DQMProvInfo.h:86
DQMProvInfo(const edm::ParameterSet &ps)
Definition: DQMProvInfo.cc:23
static const int VBIN_ES_P
Definition: DQMProvInfo.h:71
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: DQMProvInfo.cc:75
std::string hltKey_
Definition: DQMProvInfo.h:149
static const int VBIN_CSC_P
Definition: DQMProvInfo.h:62
static const int VBIN_DT_P
Definition: DQMProvInfo.h:65
static const int VBIN_ES_M
Definition: DQMProvInfo.h:72
std::string provinfofolder_
Definition: DQMProvInfo.h:114
static const int MOMENTUM_OFFSET
Definition: DQMProvInfo.h:110
bool physicsDeclared_
Definition: DQMProvInfo.h:136
static const int VBIN_HF
Definition: DQMProvInfo.h:76
void endLuminosityBlockLhcInfo(const int currentLSNumber)
Definition: DQMProvInfo.cc:433
MonitorElement * hostName_
Definition: DQMProvInfo.h:150
void endLuminosityBlock(const edm::LuminosityBlock &l, const edm::EventSetup &c) override
Definition: DQMProvInfo.cc:418
static const int VBIN_HBHE_A
Definition: DQMProvInfo.h:73
~DQMProvInfo() override
static const int VBIN_EB_M
Definition: DQMProvInfo.h:68
bool dcsBits_[MAX_DCS_VBINS+1]
Definition: DQMProvInfo.h:138
Definition: Run.h:45
MonitorElement * reportSummaryMap_
Definition: DQMProvInfo.h:134
static const int VBIN_PHYSICS_DECLARED
Definition: DQMProvInfo.h:93