CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/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       MonitorElement* h_recHits_EEP_time;
00073       // ... endcap -
00074       MonitorElement* h_recHits_EEM_energyMax;
00075       MonitorElement* h_recHits_EEM_Chi2;
00076       MonitorElement* h_recHits_EEM_time;
00077 
00078       // Basic Clusters ----------------------------------------------
00079       MonitorElement* h_basicClusters_recHits_EE_recoFlag;
00080 
00081       // Super Clusters ----------------------------------------------
00082       // ... endcap
00083       MonitorElement* h_superClusters_EEP_nBC;
00084       MonitorElement* h_superClusters_EEM_nBC;
00085          
00086       MonitorElement* h_superClusters_eta;
00087       MonitorElement* h_superClusters_EE_phi;
00088       
00089       protected:
00090 
00091          // ----------member data ---------------------------
00092          edm::InputTag recHitCollection_EE_;
00093          edm::InputTag redRecHitCollection_EE_;
00094          edm::InputTag basicClusterCollection_EE_;
00095          edm::InputTag superClusterCollection_EE_;
00096 
00097          double ethrEE_;
00098 
00099          double scEtThrEE_;
00100 
00101 };
00102 
00103 
00104 #endif