CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/DQM/EcalEndcapMonitorTasks/interface/EEDcsInfoTask.h

Go to the documentation of this file.
00001 #ifndef EEDcsInfoTask_h
00002 #define EEDcsInfoTask_h
00003 
00004 /*
00005  * \file EEDcsInfoTask.h
00006  *
00007  * $Date: 2011/06/27 08:35:13 $
00008  * $Revision: 1.10 $
00009  * \author E. Di Marco
00010  *
00011 */
00012 
00013 #include "FWCore/Framework/interface/EDAnalyzer.h"
00014 #include "FWCore/Framework/interface/Event.h"
00015 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00016 
00017 #include "Geometry/EcalMapping/interface/EcalElectronicsMapping.h"
00018 
00019 class EEDcsInfoTask: public edm::EDAnalyzer{
00020 
00021 public:
00022 
00024 EEDcsInfoTask(const edm::ParameterSet& ps);
00025 
00027 virtual ~EEDcsInfoTask();
00028 
00029 protected:
00030 
00032 void analyze(const edm::Event& e, const edm::EventSetup& c);
00033 
00035 void beginJob(void);
00036 
00038 void endJob(void);
00039 
00041 void beginLuminosityBlock(const edm::LuminosityBlock& lumiBlock, const  edm::EventSetup& iSetup);
00042 
00044 void endLuminosityBlock(const edm::LuminosityBlock&  lumiBlock, const  edm::EventSetup& iSetup);
00045 
00047 void beginRun(const edm::Run & r, const edm::EventSetup & c);
00048 
00050 void endRun(const edm::Run & r, const edm::EventSetup & c);
00051 
00053 void reset(void);
00054 
00056 void cleanup(void);
00057 
00058  static const int DccId_[18];
00059  static const int nTowerMax_;
00060   
00061 private:
00062 
00063  void fillMonitorElements(int ready[40][20], const EcalElectronicsMapping *);
00064   
00065 DQMStore* dqmStore_;
00066 
00067 std::string prefixME_;
00068 
00069 bool enableCleanup_;
00070 
00071 bool mergeRuns_;
00072 
00073 MonitorElement* meEEDcsFraction_;
00074 MonitorElement* meEEDcsActive_[18];
00075 MonitorElement* meEEDcsActiveMap_;
00076 
00077 int readyRun[40][20];
00078 int readyLumi[40][20];
00079 
00080 };
00081 
00082 const int EEDcsInfoTask::DccId_[18] = {1,2,3,4,5,6,7,8,9,
00083                                        46,47,48,49,50,51,52,53,54};
00084 const int EEDcsInfoTask::nTowerMax_ = 44;
00085 
00086 #endif