Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef EcalPileUpDepMonitor_H
0002 #define EcalPileUpDepMonitor_H
0003 
0004 /*
0005  * \file EcalPileUpDepMonitor.h
0006  *
0007  * \author Ben Carlson - CMU
0008  *
0009  */
0010 
0011 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0012 #include "DQMServices/Core/interface/DQMStore.h"
0013 
0014 #include "FWCore/Framework/interface/ESHandle.h"
0015 
0016 #include "Geometry/CaloGeometry/interface/CaloGeometry.h"
0017 #include "Geometry/CaloTopology/interface/CaloTopology.h"
0018 #include "Geometry/Records/interface/CaloTopologyRecord.h"
0019 #include "Geometry/CaloGeometry/interface/CaloCellGeometry.h"
0020 #include "Geometry/Records/interface/CaloGeometryRecord.h"
0021 
0022 #include "DataFormats/CaloRecHit/interface/CaloCluster.h"
0023 #include "DataFormats/Common/interface/View.h"
0024 #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h"
0025 #include "DataFormats/EgammaCandidates/interface/GsfElectronFwd.h"
0026 #include "DataFormats/EgammaReco/interface/SuperClusterFwd.h"
0027 #include "DataFormats/VertexReco/interface/VertexFwd.h"
0028 
0029 class EcalPileUpDepMonitor : public DQMEDAnalyzer {
0030 public:
0031   /// Constructor
0032   EcalPileUpDepMonitor(const edm::ParameterSet &ps);
0033 
0034   /// Destructor
0035   ~EcalPileUpDepMonitor() override;
0036 
0037 protected:
0038   /// Analyze
0039   void analyze(const edm::Event &, const edm::EventSetup &) override;
0040   void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
0041 
0042 private:
0043   // profiles
0044   MonitorElement *bcEB_PV;  // basic clusters Ecal-Barrel vs Number of Primary Vertices
0045   MonitorElement *bcEE_PV;
0046   MonitorElement *scEB_PV;
0047   MonitorElement *scEE_PV;
0048 
0049   MonitorElement *scEtEB_PV;  // super cluster Et profiles vs Number of vertices
0050   MonitorElement *scEtEE_PV;
0051 
0052   MonitorElement *recHitEtEB_PV;  // reconstructed hit Et profiles vs number of vertices
0053   MonitorElement *recHitEtEE_PV;
0054 
0055   MonitorElement *emIso_PV;
0056 
0057   // histograms of reconstructed hit Et and supercluster Et
0058   MonitorElement *emIso;
0059   MonitorElement *recHitEtEB;
0060   MonitorElement *recHitEtEE;
0061 
0062   MonitorElement *scHitEtEB;
0063   MonitorElement *scHitEtEE;
0064 
0065   // SC energy TH1Fs already exist in ClusterTask
0066   /*   MonitorElement* scHitE_EB; */
0067   /*   MonitorElement* scHitE_EE; */
0068 
0069   // Eta
0070   // Exists in ClusterTask
0071   /*   MonitorElement* scEta_EB; */
0072   /*   MonitorElement* scEta_EE; */
0073 
0074   // Phi
0075   // Exists in ClusterTask
0076   /*   MonitorElement* scPhi_EB; */
0077   /*   MonitorElement* scPhi_EE; */
0078 
0079   // sc sigma eta_eta and eta phi
0080 
0081   MonitorElement *scSigmaIetaIeta_EB;
0082   MonitorElement *scSigmaIetaIeta_EE;
0083 
0084   MonitorElement *scSigmaIetaIphi_EB;
0085   MonitorElement *scSigmaIetaIphi_EE;
0086 
0087   // R9
0088   MonitorElement *r9_EB;
0089   MonitorElement *r9_EE;
0090 
0091   edm::ESGetToken<CaloGeometry, CaloGeometryRecord> geomH;
0092   edm::ESGetToken<CaloTopology, CaloTopologyRecord> caloTop;
0093 
0094   edm::EDGetTokenT<reco::VertexCollection> VertexCollection_;  // vertex collection
0095 
0096   edm::EDGetTokenT<edm::View<reco::CaloCluster>> basicClusterCollection_EB_;  // Ecal Barrel Basic Clusters
0097   edm::EDGetTokenT<edm::View<reco::CaloCluster>> basicClusterCollection_EE_;  // Ecal Endcap Basic Clusters
0098   edm::EDGetTokenT<edm::View<reco::CaloCluster>> basicClusterCollection_;  // Ecal Barrel & Endcap Basic Clusters (for >=
0099                                                                            // 70X, BC collection is merged)
0100 
0101   edm::EDGetTokenT<reco::SuperClusterCollection> superClusterCollection_EB_;
0102   edm::EDGetTokenT<reco::SuperClusterCollection> superClusterCollection_EE_;
0103   edm::EDGetTokenT<reco::GsfElectronCollection> EleTag_;
0104 
0105   edm::EDGetTokenT<EcalRecHitCollection> RecHitCollection_EB_;
0106   edm::EDGetTokenT<EcalRecHitCollection> RecHitCollection_EE_;
0107 };
0108 
0109 #endif