CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DQMProvInfo.h
Go to the documentation of this file.
1 #ifndef DQMPROVINFO_H
2 #define DQMPROVINFO_H
3 
10 
13 
15 
18 
19 #include <string>
20 #include <vector>
21 
22 class DQMProvInfo : public DQMOneEDAnalyzer<> {
23 public:
24  // Constructor
25  DQMProvInfo(const edm::ParameterSet& ps);
26  // Destructor
27  ~DQMProvInfo() override;
28 
29 protected:
30  void dqmBeginRun(const edm::Run& r, const edm::EventSetup& c) override;
31  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
32  void analyze(const edm::Event& e, const edm::EventSetup& c) override;
33 
34 private:
38 
39  void analyzeLhcInfo(const edm::Event& e);
40  void analyzeEventInfo(const edm::Event& e);
41  void analyzeProvInfo(const edm::Event& e);
42 
43  void fillDcsBitsFromDCSRecord(const DCSRecord&, bool* dcsBits);
45  bool isPhysicsDeclared(bool* dcsBits);
46 
47  void blankAllLumiSections();
48  void fillSummaryMapBin(int ls, int bin, double value);
49  void setupLumiSection(int ls);
50 
51  // To max amount of lumisections we foresee for the plots
52  // DQM GUI renderplugins provide scaling to actual amount
53  const static int MAX_LUMIS = 6000;
54 
55  // Numbers of each of the vertical bins
56  const static int VBIN_CSC_P = 1;
57  const static int VBIN_CSC_M = 2;
58  const static int VBIN_DT_0 = 3;
59  const static int VBIN_DT_P = 4;
60  const static int VBIN_DT_M = 5;
61  const static int VBIN_EB_P = 6;
62  const static int VBIN_EB_M = 7;
63  const static int VBIN_EE_P = 8;
64  const static int VBIN_EE_M = 9;
65  const static int VBIN_ES_P = 10;
66  const static int VBIN_ES_M = 11;
67  const static int VBIN_HBHE_A = 12;
68  const static int VBIN_HBHE_B = 13;
69  const static int VBIN_HBHE_C = 14;
70  const static int VBIN_HF = 15;
71  const static int VBIN_HO = 16;
72  const static int VBIN_BPIX = 17;
73  const static int VBIN_FPIX = 18;
74  const static int VBIN_RPC = 19;
75  const static int VBIN_TIBTID = 20;
76  const static int VBIN_TOB = 21;
77  const static int VBIN_TEC_P = 22;
78  const static int VBIN_TE_M = 23;
79  const static int VBIN_CASTOR = 24;
80  const static int VBIN_ZDC = 25;
81  const static int VBIN_GEM_P = 26;
82  const static int VBIN_GEM_M = 27;
83 
84  // Highest DCS bin, used for the length of the corresponding array.
85  // We will have the indexes to this array the same as the vbins numbers.
86  // (I.e. value at index 0 will not be used.)
87  const static int MAX_DCS_VBINS = 27;
88 
89  const static int VBIN_PHYSICS_DECLARED = 28;
90  const static int VBIN_MOMENTUM = 29;
91  const static int VBIN_STABLE_BEAM = 30;
92  const static int VBIN_VALID = 31;
93 
94  const static int MAX_VBINS = 31;
95 
96  // Beam momentum at flat top, used to determine if collisions are
97  // occurring with the beams at the energy allowed for physics production.
98  const static int MAX_MOMENTUM = 6500;
99 
100  // Beam momentum allowed offset: it is a momentum value subtracted to
101  // maximum momentum in order to decrease the threshold for beams going to
102  // collisions for physics production. This happens because BST sends from
103  // time to time a value of the beam momentum slightly below the nominal values,
104  // even during stable collisions: in this way, we provide a correct information
105  // at the cost of not requiring the exact momentum being measured by BST.
106  const static int MOMENTUM_OFFSET = 1;
107 
108  // Process parameters
111 
115 
116  // MonitorElements for LhcInfo and corresponding variables
123 
124  // MonitorElements for EventInfo and corresponding variables
127 
128  // MonitorElements for ProvInfo and corresponding variables
139  MonitorElement* processId_; // The PID associated with this job
141 };
142 
143 #endif
void fillSummaryMapBin(int ls, int bin, double value)
Definition: DQMProvInfo.cc:443
MonitorElement * hBeamMode_
Definition: DQMProvInfo.h:117
const edm::EventSetup & c
MonitorElement * hIntensity2_
Definition: DQMProvInfo.h:120
MonitorElement * reportSummary_
Definition: DQMProvInfo.h:125
void analyzeEventInfo(const edm::Event &e)
Definition: DQMProvInfo.cc:275
static const int VBIN_GEM_P
Definition: DQMProvInfo.h:81
MonitorElement * hMomentum_
Definition: DQMProvInfo.h:122
static const int VBIN_EE_P
Definition: DQMProvInfo.h:63
MonitorElement * workingDir_
Definition: DQMProvInfo.h:140
static const int VBIN_GEM_M
Definition: DQMProvInfo.h:82
void fillDcsBitsFromDcsStatusCollection(const edm::Handle< DcsStatusCollection > &, bool *dcsBits)
Definition: DQMProvInfo.cc:370
edm::EDGetTokenT< DcsStatusCollection > dcsStatusCollection_
Definition: DQMProvInfo.h:112
def ls
Definition: eostools.py:349
edm::EDGetTokenT< DCSRecord > dcsRecordToken_
Definition: DQMProvInfo.h:114
static const int VBIN_VALID
Definition: DQMProvInfo.h:92
Class to contain DCS information from soft FED 1022.
Definition: DCSRecord.h:20
MonitorElement * processId_
Definition: DQMProvInfo.h:139
MonitorElement * hHltKey_
Definition: DQMProvInfo.h:135
void blankAllLumiSections()
Definition: DQMProvInfo.cc:432
MonitorElement * versGlobaltag_
Definition: DQMProvInfo.h:130
static const int VBIN_CASTOR
Definition: DQMProvInfo.h:79
static const int VBIN_HBHE_B
Definition: DQMProvInfo.h:68
static const int VBIN_EE_M
Definition: DQMProvInfo.h:64
static const int VBIN_HBHE_C
Definition: DQMProvInfo.h:69
bool globalTagRetrieved_
Definition: DQMProvInfo.h:132
static const int VBIN_HO
Definition: DQMProvInfo.h:71
std::string globalTag_
Definition: DQMProvInfo.h:131
static const int VBIN_DT_0
Definition: DQMProvInfo.h:58
static const int VBIN_TEC_P
Definition: DQMProvInfo.h:77
void bookHistogramsEventInfo(DQMStore::IBooker &)
Definition: DQMProvInfo.cc:137
static const int VBIN_CSC_M
Definition: DQMProvInfo.h:57
MonitorElement * versRuntype_
Definition: DQMProvInfo.h:133
static const int VBIN_TOB
Definition: DQMProvInfo.h:76
static const int VBIN_FPIX
Definition: DQMProvInfo.h:73
static const int MAX_LUMIS
Definition: DQMProvInfo.h:53
static const int VBIN_DT_M
Definition: DQMProvInfo.h:60
static const int VBIN_MOMENTUM
Definition: DQMProvInfo.h:90
void bookHistogramsProvInfo(DQMStore::IBooker &)
Definition: DQMProvInfo.cc:187
void bookHistogramsLhcInfo(DQMStore::IBooker &)
Definition: DQMProvInfo.cc:86
void analyzeProvInfo(const edm::Event &e)
Definition: DQMProvInfo.cc:323
static const int MAX_MOMENTUM
Definition: DQMProvInfo.h:98
void dqmBeginRun(const edm::Run &r, const edm::EventSetup &c) override
Definition: DQMProvInfo.cc:50
static const int MAX_VBINS
Definition: DQMProvInfo.h:94
std::string subsystemname_
Definition: DQMProvInfo.h:109
MonitorElement * hLhcFill_
Definition: DQMProvInfo.h:121
void fillDcsBitsFromDCSRecord(const DCSRecord &, bool *dcsBits)
Definition: DQMProvInfo.cc:340
static const int VBIN_STABLE_BEAM
Definition: DQMProvInfo.h:91
static const int VBIN_TIBTID
Definition: DQMProvInfo.h:75
void analyze(const edm::Event &e, const edm::EventSetup &c) override
Definition: DQMProvInfo.cc:218
static const int VBIN_EB_P
Definition: DQMProvInfo.h:61
static const int VBIN_BPIX
Definition: DQMProvInfo.h:72
void analyzeLhcInfo(const edm::Event &e)
Definition: DQMProvInfo.cc:233
MonitorElement * hIntensity1_
Definition: DQMProvInfo.h:119
static const int VBIN_TE_M
Definition: DQMProvInfo.h:78
static const int VBIN_RPC
Definition: DQMProvInfo.h:74
MonitorElement * versCMSSW_
Definition: DQMProvInfo.h:129
MonitorElement * hIsCollisionsRun_
Definition: DQMProvInfo.h:138
std::string runType_
Definition: DQMProvInfo.h:134
edm::EDGetTokenT< TCDSRecord > tcdsrecord_
Definition: DQMProvInfo.h:113
static const int MAX_DCS_VBINS
Definition: DQMProvInfo.h:87
static const int VBIN_ZDC
Definition: DQMProvInfo.h:80
DQMProvInfo(const edm::ParameterSet &ps)
Definition: DQMProvInfo.cc:23
static const int VBIN_ES_P
Definition: DQMProvInfo.h:65
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: DQMProvInfo.cc:68
std::string hltKey_
Definition: DQMProvInfo.h:136
static const int VBIN_CSC_P
Definition: DQMProvInfo.h:56
bool isPhysicsDeclared(bool *dcsBits)
Definition: DQMProvInfo.cc:417
static const int VBIN_DT_P
Definition: DQMProvInfo.h:59
static const int VBIN_ES_M
Definition: DQMProvInfo.h:66
std::string provinfofolder_
Definition: DQMProvInfo.h:110
static const int MOMENTUM_OFFSET
Definition: DQMProvInfo.h:106
void setupLumiSection(int ls)
Definition: DQMProvInfo.cc:456
static const int VBIN_HF
Definition: DQMProvInfo.h:70
MonitorElement * hostName_
Definition: DQMProvInfo.h:137
static const int VBIN_HBHE_A
Definition: DQMProvInfo.h:67
~DQMProvInfo() override
static const int VBIN_EB_M
Definition: DQMProvInfo.h:62
Definition: Run.h:45
MonitorElement * reportSummaryMap_
Definition: DQMProvInfo.h:126
static const int VBIN_PHYSICS_DECLARED
Definition: DQMProvInfo.h:89