00001 00002 #ifndef HCALRECHITANALYZER_H 00003 #define HCALRECHITANALYZER_H 00004 00005 // author: Bobby Scurlock (The University of Florida) 00006 // date: 8/24/2006 00007 // modification: Mike Schmitt 00008 // date: 02.28.2007 00009 // note: code rewrite 00010 00011 #include "DQMServices/Core/interface/DQMStore.h" 00012 00013 #include "FWCore/Framework/interface/Frameworkfwd.h" 00014 #include "FWCore/Framework/interface/EDAnalyzer.h" 00015 #include "FWCore/Utilities/interface/InputTag.h" 00016 00017 #include <string> 00018 #include <map> 00019 #include "DQMServices/Core/interface/MonitorElement.h" 00020 00021 class HCALRecHitAnalyzer: public edm::EDAnalyzer { 00022 public: 00023 00024 explicit HCALRecHitAnalyzer(const edm::ParameterSet&); 00025 00026 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00027 // virtual void beginJob(void); 00028 virtual void beginRun(const edm::Run&, const edm::EventSetup&); 00029 virtual void endJob(); 00030 00031 private: 00032 00033 // DAQ Tools 00034 DQMStore* dbe_; 00035 00036 // Inputs from Configuration 00037 edm::InputTag hBHERecHitsLabel_; 00038 edm::InputTag hFRecHitsLabel_; 00039 edm::InputTag hORecHitsLabel_; 00040 bool debug_; 00041 bool finebinning_; 00042 std::string FolderName_; 00043 // Helper Functions 00044 void FillGeometry(const edm::EventSetup&); 00045 virtual void BookHistos(); 00046 int Nevents; 00047 00048 //histos 00049 MonitorElement* hHCAL_ieta_iphi_HBMap; 00050 MonitorElement* hHCAL_ieta_iphi_HEMap; 00051 MonitorElement* hHCAL_ieta_iphi_HFMap; 00052 MonitorElement* hHCAL_ieta_iphi_HOMap; 00053 MonitorElement* hHCAL_ieta_iphi_etaMap; 00054 MonitorElement* hHCAL_ieta_iphi_phiMap; 00055 MonitorElement* hHCAL_ieta_detaMap; 00056 MonitorElement* hHCAL_ieta_dphiMap; 00057 00058 MonitorElement* hHCAL_Nevents; 00059 00060 MonitorElement* hHCAL_D1_energy_ieta_iphi; 00061 MonitorElement* hHCAL_D2_energy_ieta_iphi; 00062 MonitorElement* hHCAL_D3_energy_ieta_iphi; 00063 MonitorElement* hHCAL_D4_energy_ieta_iphi; 00064 00065 MonitorElement* hHCAL_D1_Minenergy_ieta_iphi; 00066 MonitorElement* hHCAL_D2_Minenergy_ieta_iphi; 00067 MonitorElement* hHCAL_D3_Minenergy_ieta_iphi; 00068 MonitorElement* hHCAL_D4_Minenergy_ieta_iphi; 00069 00070 MonitorElement* hHCAL_D1_Maxenergy_ieta_iphi; 00071 MonitorElement* hHCAL_D2_Maxenergy_ieta_iphi; 00072 MonitorElement* hHCAL_D3_Maxenergy_ieta_iphi; 00073 MonitorElement* hHCAL_D4_Maxenergy_ieta_iphi; 00074 00075 MonitorElement* hHCAL_D1_Occ_ieta_iphi; 00076 MonitorElement* hHCAL_D2_Occ_ieta_iphi; 00077 MonitorElement* hHCAL_D3_Occ_ieta_iphi; 00078 MonitorElement* hHCAL_D4_Occ_ieta_iphi; 00079 00080 MonitorElement* hHCAL_D1_energyvsieta; 00081 MonitorElement* hHCAL_D2_energyvsieta; 00082 MonitorElement* hHCAL_D3_energyvsieta; 00083 MonitorElement* hHCAL_D4_energyvsieta; 00084 00085 MonitorElement* hHCAL_D1_Minenergyvsieta; 00086 MonitorElement* hHCAL_D2_Minenergyvsieta; 00087 MonitorElement* hHCAL_D3_Minenergyvsieta; 00088 MonitorElement* hHCAL_D4_Minenergyvsieta; 00089 00090 MonitorElement* hHCAL_D1_Maxenergyvsieta; 00091 MonitorElement* hHCAL_D2_Maxenergyvsieta; 00092 MonitorElement* hHCAL_D3_Maxenergyvsieta; 00093 MonitorElement* hHCAL_D4_Maxenergyvsieta; 00094 00095 MonitorElement* hHCAL_D1_Occvsieta; 00096 MonitorElement* hHCAL_D2_Occvsieta; 00097 MonitorElement* hHCAL_D3_Occvsieta; 00098 MonitorElement* hHCAL_D4_Occvsieta; 00099 00100 MonitorElement* hHCAL_D1_SETvsieta; 00101 MonitorElement* hHCAL_D2_SETvsieta; 00102 MonitorElement* hHCAL_D3_SETvsieta; 00103 MonitorElement* hHCAL_D4_SETvsieta; 00104 00105 MonitorElement* hHCAL_D1_METvsieta; 00106 MonitorElement* hHCAL_D2_METvsieta; 00107 MonitorElement* hHCAL_D3_METvsieta; 00108 MonitorElement* hHCAL_D4_METvsieta; 00109 00110 MonitorElement* hHCAL_D1_METPhivsieta; 00111 MonitorElement* hHCAL_D2_METPhivsieta; 00112 MonitorElement* hHCAL_D3_METPhivsieta; 00113 MonitorElement* hHCAL_D4_METPhivsieta; 00114 00115 MonitorElement* hHCAL_D1_MExvsieta; 00116 MonitorElement* hHCAL_D2_MExvsieta; 00117 MonitorElement* hHCAL_D3_MExvsieta; 00118 MonitorElement* hHCAL_D4_MExvsieta; 00119 00120 MonitorElement* hHCAL_D1_MEyvsieta; 00121 MonitorElement* hHCAL_D2_MEyvsieta; 00122 MonitorElement* hHCAL_D3_MEyvsieta; 00123 MonitorElement* hHCAL_D4_MEyvsieta; 00124 }; 00125 00126 #endif