00001 #ifndef SiStripMonitorQuality_SiStripMonitorQuality_h 00002 #define SiStripMonitorQuality_SiStripMonitorQuality_h 00003 // -*- C++ -*- 00004 // 00005 // Package: SiStripMonitorQuality 00006 // Class : SiStripMonitorQuality 00007 // 00016 // 00017 // Original Author: dutta 00018 // Created: Fri Dec 7 20:49:51 CET 2007 00019 // $Id: SiStripMonitorQuality.h,v 1.3 2009/11/05 21:08:28 dutta Exp $ 00020 // 00021 00022 // system include files 00023 #include <memory> 00024 00025 // user include files 00026 #include "FWCore/Framework/interface/Frameworkfwd.h" 00027 #include "FWCore/Framework/interface/EDAnalyzer.h" 00028 #include "FWCore/Framework/interface/ESHandle.h" 00029 00030 #include "FWCore/Framework/interface/Event.h" 00031 #include "FWCore/Framework/interface/MakerMacros.h" 00032 00033 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00034 00035 #include "boost/cstdint.hpp" 00036 #include <iostream> 00037 #include <string> 00038 #include <vector> 00039 00040 class MonitorElement; 00041 class DQMStore; 00042 class SiStripDetCabling; 00043 class SiStripQuality; 00044 00045 class SiStripMonitorQuality : public edm::EDAnalyzer { 00046 public: 00047 explicit SiStripMonitorQuality(const edm::ParameterSet&); 00048 ~SiStripMonitorQuality(); 00049 00050 virtual void beginJob() ; 00051 virtual void beginRun(edm::Run const& run, edm::EventSetup const& eSetup); 00052 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00053 virtual void endRun(edm::Run const& run, edm::EventSetup const& eSetup); 00054 virtual void endJob() ; 00055 00056 00057 private: 00058 00059 MonitorElement* getQualityME(uint32_t idet); 00060 00061 00062 DQMStore* dqmStore_; 00063 edm::ParameterSet conf_; 00064 edm::ESHandle< SiStripDetCabling > detCabling_; 00065 edm::ESHandle< SiStripQuality > stripQuality_; 00066 00067 std::map<uint32_t, MonitorElement*> QualityMEs; 00068 std::string dataLabel_; 00069 00070 unsigned long long m_cacheID_; 00071 00072 }; 00073 00074 #endif