Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:09:26

0001 #ifndef HCALRECHITANALYZER_H
0002 #define HCALRECHITANALYZER_H
0003 
0004 // author: Bobby Scurlock (The University of Florida)
0005 // date: 8/24/2006
0006 // modification: Mike Schmitt
0007 // date: 02.28.2007
0008 // note: code rewrite
0009 
0010 #include "DQMServices/Core/interface/DQMStore.h"
0011 
0012 #include "FWCore/Framework/interface/Frameworkfwd.h"
0013 #include "FWCore/Utilities/interface/InputTag.h"
0014 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0015 
0016 #include "DataFormats/HcalRecHit/interface/HBHERecHit.h"
0017 #include "DataFormats/HcalRecHit/interface/HFRecHit.h"
0018 #include "DataFormats/HcalRecHit/interface/HORecHit.h"
0019 #include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h"
0020 
0021 #include <string>
0022 #include <map>
0023 class CaloGeometry;
0024 class CaloGeometryRecord;
0025 class HCALRecHitAnalyzer : public DQMEDAnalyzer {
0026 public:
0027   explicit HCALRecHitAnalyzer(const edm::ParameterSet&);
0028 
0029   void analyze(const edm::Event&, const edm::EventSetup&) override;
0030   //  virtual void beginJob(void);
0031   //  virtual void beginRun(const edm::Run&, const edm::EventSetup&);
0032   void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
0033   void dqmBeginRun(const edm::Run&, const edm::EventSetup&) override;
0034 
0035 private:
0036   // Inputs from Configuration
0037   edm::EDGetTokenT<HBHERecHitCollection> hBHERecHitsLabel_;
0038   edm::EDGetTokenT<HFRecHitCollection> hFRecHitsLabel_;
0039   edm::EDGetTokenT<HORecHitCollection> hORecHitsLabel_;
0040   edm::ESGetToken<CaloGeometry, CaloGeometryRecord> caloGeomToken_;
0041   bool debug_;
0042   bool finebinning_;
0043   std::string FolderName_;
0044   // Helper Functions
0045   void FillGeometry(const edm::EventSetup&);
0046 
0047   int Nevents;
0048 
0049   //histos
0050   MonitorElement* hHCAL_ieta_iphi_HBMap;
0051   MonitorElement* hHCAL_ieta_iphi_HEMap;
0052   MonitorElement* hHCAL_ieta_iphi_HFMap;
0053   MonitorElement* hHCAL_ieta_iphi_HOMap;
0054   MonitorElement* hHCAL_ieta_iphi_etaMap;
0055   MonitorElement* hHCAL_ieta_iphi_phiMap;
0056   MonitorElement* hHCAL_ieta_detaMap;
0057   MonitorElement* hHCAL_ieta_dphiMap;
0058 
0059   MonitorElement* hHCAL_Nevents;
0060 
0061   MonitorElement* hHCAL_D1_energy_ieta_iphi;
0062   MonitorElement* hHCAL_D2_energy_ieta_iphi;
0063   MonitorElement* hHCAL_D3_energy_ieta_iphi;
0064   MonitorElement* hHCAL_D4_energy_ieta_iphi;
0065 
0066   MonitorElement* hHCAL_D1_Minenergy_ieta_iphi;
0067   MonitorElement* hHCAL_D2_Minenergy_ieta_iphi;
0068   MonitorElement* hHCAL_D3_Minenergy_ieta_iphi;
0069   MonitorElement* hHCAL_D4_Minenergy_ieta_iphi;
0070 
0071   MonitorElement* hHCAL_D1_Maxenergy_ieta_iphi;
0072   MonitorElement* hHCAL_D2_Maxenergy_ieta_iphi;
0073   MonitorElement* hHCAL_D3_Maxenergy_ieta_iphi;
0074   MonitorElement* hHCAL_D4_Maxenergy_ieta_iphi;
0075 
0076   MonitorElement* hHCAL_D1_Occ_ieta_iphi;
0077   MonitorElement* hHCAL_D2_Occ_ieta_iphi;
0078   MonitorElement* hHCAL_D3_Occ_ieta_iphi;
0079   MonitorElement* hHCAL_D4_Occ_ieta_iphi;
0080 
0081   MonitorElement* hHCAL_D1_energyvsieta;
0082   MonitorElement* hHCAL_D2_energyvsieta;
0083   MonitorElement* hHCAL_D3_energyvsieta;
0084   MonitorElement* hHCAL_D4_energyvsieta;
0085 
0086   MonitorElement* hHCAL_D1_Minenergyvsieta;
0087   MonitorElement* hHCAL_D2_Minenergyvsieta;
0088   MonitorElement* hHCAL_D3_Minenergyvsieta;
0089   MonitorElement* hHCAL_D4_Minenergyvsieta;
0090 
0091   MonitorElement* hHCAL_D1_Maxenergyvsieta;
0092   MonitorElement* hHCAL_D2_Maxenergyvsieta;
0093   MonitorElement* hHCAL_D3_Maxenergyvsieta;
0094   MonitorElement* hHCAL_D4_Maxenergyvsieta;
0095 
0096   MonitorElement* hHCAL_D1_Occvsieta;
0097   MonitorElement* hHCAL_D2_Occvsieta;
0098   MonitorElement* hHCAL_D3_Occvsieta;
0099   MonitorElement* hHCAL_D4_Occvsieta;
0100 
0101   MonitorElement* hHCAL_D1_SETvsieta;
0102   MonitorElement* hHCAL_D2_SETvsieta;
0103   MonitorElement* hHCAL_D3_SETvsieta;
0104   MonitorElement* hHCAL_D4_SETvsieta;
0105 
0106   MonitorElement* hHCAL_D1_METvsieta;
0107   MonitorElement* hHCAL_D2_METvsieta;
0108   MonitorElement* hHCAL_D3_METvsieta;
0109   MonitorElement* hHCAL_D4_METvsieta;
0110 
0111   MonitorElement* hHCAL_D1_METPhivsieta;
0112   MonitorElement* hHCAL_D2_METPhivsieta;
0113   MonitorElement* hHCAL_D3_METPhivsieta;
0114   MonitorElement* hHCAL_D4_METPhivsieta;
0115 
0116   MonitorElement* hHCAL_D1_MExvsieta;
0117   MonitorElement* hHCAL_D2_MExvsieta;
0118   MonitorElement* hHCAL_D3_MExvsieta;
0119   MonitorElement* hHCAL_D4_MExvsieta;
0120 
0121   MonitorElement* hHCAL_D1_MEyvsieta;
0122   MonitorElement* hHCAL_D2_MEyvsieta;
0123   MonitorElement* hHCAL_D3_MEyvsieta;
0124   MonitorElement* hHCAL_D4_MEyvsieta;
0125 };
0126 
0127 #endif