CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/DQMOffline/Ecal/interface/EERecoSummary.h

Go to the documentation of this file.
00001 #ifndef EERecoSummary_h
00002 #define EERecoSummary_h
00003 
00004 // system include files
00005 #include <memory>
00006 
00007 // user include files
00008 #include "FWCore/Framework/interface/Frameworkfwd.h"
00009 #include "FWCore/Framework/interface/EDAnalyzer.h"
00010 
00011 #include "FWCore/Framework/interface/ESHandle.h"
00012 #include "FWCore/Framework/interface/Event.h"
00013 #include "FWCore/Framework/interface/MakerMacros.h"
00014 
00015 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00016 #include "FWCore/ServiceRegistry/interface/Service.h"
00017 #include "CommonTools/UtilAlgos/interface/TFileService.h"
00018 
00019 // DQM includes
00020 #include "DQMServices/Core/interface/DQMStore.h"
00021 #include "DQMServices/Core/interface/MonitorElement.h"
00022 
00023 // ROOT include
00024 #include "TFile.h"
00025 #include "TH1.h"
00026 #include "TH2.h"
00027 #include "TProfile.h"
00028 #include "TProfile2D.h"
00029 
00030 
00031 // Less than operator for sorting EcalRecHits according to energy.
00032 class ecalRecHitLess : public std::binary_function<EcalRecHit, EcalRecHit, bool>
00033 {
00034 public:
00035   bool operator()(EcalRecHit x, EcalRecHit y)
00036   {
00037     return (x.energy() > y.energy());
00038   }
00039 };
00040 
00041 
00042 class EERecoSummary : public edm::EDAnalyzer {
00043   
00044       public:
00045          explicit EERecoSummary(const edm::ParameterSet&);
00046          ~EERecoSummary();
00047   
00048   
00049       private:
00050          virtual void beginJob() ;
00051          virtual void analyze(const edm::Event&, const edm::EventSetup&);
00052          virtual void endJob() ;
00053 
00054          
00055       // DQM Store -------------------
00056       DQMStore* dqmStore_;
00057   
00058       std::string prefixME_;
00059 
00060       // Monitor Elements (ex THXD)
00061             
00062       // ReducedRecHits ----------------------------------------------
00063       // ... endcap 
00064       MonitorElement* h_redRecHits_EE_recoFlag;
00065          
00066       // RecHits -----------------------------------------------------
00067       // ... endcap
00068       MonitorElement* h_recHits_EE_recoFlag;
00069       // ... endcap +
00070       MonitorElement* h_recHits_EEP_energyMax;
00071       MonitorElement* h_recHits_EEP_Chi2;
00072       // ... endcap -
00073       MonitorElement* h_recHits_EEM_energyMax;
00074       MonitorElement* h_recHits_EEM_Chi2;
00075 
00076       // Basic Clusters ----------------------------------------------
00077       MonitorElement* h_basicClusters_recHits_EE_recoFlag;
00078 
00079       // Super Clusters ----------------------------------------------
00080       // ... endcap
00081       MonitorElement* h_superClusters_EEP_nBC;
00082       MonitorElement* h_superClusters_EEM_nBC;
00083          
00084       MonitorElement* h_superClusters_eta;
00085       MonitorElement* h_superClusters_EE_phi;
00086       
00087       protected:
00088 
00089          // ----------member data ---------------------------
00090          edm::InputTag recHitCollection_EE_;
00091          edm::InputTag redRecHitCollection_EE_;
00092          edm::InputTag basicClusterCollection_EE_;
00093          edm::InputTag superClusterCollection_EE_;
00094 
00095          double ethrEE_;
00096 
00097          double scEtThrEE_;
00098 
00099 };
00100 
00101 
00102 #endif