CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ZDCMonitorModule.h
Go to the documentation of this file.
1 #ifndef ZDCMonitorModule_GUARD_H
2 #define ZDCMonitorModule_GUARD_H
3 
4 /*
5  * \file ZDCMonitorModule.h
6  *
7 
8  * $Date: 2010/02/05 18:52:10 $
9  * $Revision: 1.1 $
10  * \author
11  *
12 */
13 
22 
25 
27 
28 class MonitorElement;
29 class DQMStore;
30 class HcalZDCMonitor;
31 
32 #include <iostream>
33 #include <fstream>
34 
36 
37 public:
38 
39  // Constructor
41 
42  // Destructor
44 
45  protected:
46 
47  // Analyze
48  void analyze(const edm::Event& e, const edm::EventSetup& c);
49 
50  // BeginJob
51  void beginJob();
52 
53  // BeginRun
54  void beginRun(const edm::Run& run, const edm::EventSetup& c);
55 
56  // Begin LumiBlock
57  void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg,
58  const edm::EventSetup& c) ;
59 
60  // End LumiBlock
61  void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg,
62  const edm::EventSetup& c);
63 
64  // EndJob
65  void endJob(void);
66 
67  // EndRun
68  void endRun(const edm::Run& run, const edm::EventSetup& c);
69 
70  // Reset
71  void reset(void);
72 
74  bool prescale();
75 /*
76  // Check ZDC has FED data
77  void CheckZDCStatus (const FEDRawDataCollection& rawraw,
78  const HcalUnpackerReport& report,
79  const HcalElectronicsMap& emap,
80  const ZDCDigiCollection& zdcdigi
81  );
82 */
83  private:
84  std::vector<int> fedss;
85  /********************************************************/
86  // The following member variables can be specified in //
87  // the configuration input file for the process. //
88  /********************************************************/
89 
97 
98  // Reset histograms every N events
99 
102  std::string monitorName_;
103 
105  int debug_; // make debug an int in order to allow different levels of messaging
106 
107  // control whether or not to display time used by each module
108  bool showTiming_;
110 
111  // counters and flags
112  int nevt_;
113 
114  struct{
115  timeval startTV,updateTV;
116  double elapsedTime;
117  double vetoTime;
118  double updateTime;
119  } psTime_;
120 
123 
124  // environment variables
126  unsigned int ilumisec;
127  bool Online_;
128  std::string rootFolder_;
129 
130  int ievt_;
134  int ievt_pre_; // copy of counter used for prescale purposes
136 
139 
140  edm::InputTag FEDRawDataCollection_; // not yet in use, but we still store the tag name
141 
146 
152 
154 
156  bool checkZDC_;
157 
160 
161  std::ofstream m_logFile;
162 
163  // Determine whether the ZDC in the run (using FED info)
166 
167  // myquality_ will store status values for each det ID I find
169  //std::map<HcalDetId, unsigned int> myquality_;
170  //HcalChannelQuality* chanquality_;
171 };
172 
173 #endif
const HcalElectronicsMap * readoutMap_
void beginRun(const edm::Run &run, const edm::EventSetup &c)
struct ZDCMonitorModule::@169 psTime_
std::vector< int > fedss
edm::InputTag inputLabelDigi_
MonitorElement * meIEVTRECHIT_
MonitorElement * meTrigger_
edm::ESHandle< HcalDbService > conditions_
ZDCMonitorModule(const edm::ParameterSet &ps)
edm::CPUTimer cpu_timer
MonitorElement * meIEVTALL_
void analyze(const edm::Event &e, const edm::EventSetup &c)
int prescaleLS_
units of events
void endLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c)
MonitorElement * meQuality_
edm::InputTag inputLabelRecHitZDC_
int debug_
Verbosity switch used for debugging or informational output.
int prescaleUpdate_
units of minutes
MonitorElement * meIEVTRAW_
void endRun(const edm::Run &run, const edm::EventSetup &c)
MonitorElement * meZDC_
HcalZDCMonitor * zdcMon_
std::string rootFolder_
unsigned int ilumisec
int prescaleTime_
units of lumi sections
std::ofstream m_logFile
MonitorElement * meIEVTDIGI_
edm::InputTag FEDRawDataCollection_
MonitorElement * meStatus_
void beginLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c)
DQMStore * dbe_
Connection to the DQM backend.
MonitorElement * meLatency_
MonitorElement * meFEDS_
Definition: Run.h:32
bool prescale()
Boolean prescale test for this event.
std::string monitorName_
units of &quot;updates&quot;, TBD