00001 #ifndef RecoEcal_EgammaClusterProducers_PreshowerAnalyzer_h 00002 #define RecoEcal_EgammaClusterProducers_PreshowerAnalyzer_h 00003 00010 // 00011 // $Id: PreshowerAnalyzer.h,v 1.4 2009/12/18 20:45:01 wmtan Exp $ 00012 // 00013 00014 00015 // system include files 00016 #include <memory> 00017 00018 // user include files 00019 #include "FWCore/Framework/interface/Frameworkfwd.h" 00020 #include "FWCore/Framework/interface/EDAnalyzer.h" 00021 00022 #include "FWCore/Framework/interface/Event.h" 00023 #include "FWCore/Framework/interface/MakerMacros.h" 00024 00025 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00026 00027 #include <string> 00028 #include "TH1.h" 00029 class TFile; 00030 00031 // 00032 // class declaration 00033 // 00034 00035 class PreshowerAnalyzer : public edm::EDAnalyzer { 00036 00037 public: 00038 explicit PreshowerAnalyzer( const edm::ParameterSet& ); 00039 ~PreshowerAnalyzer(); 00040 00041 virtual void analyze( const edm::Event&, const edm::EventSetup& ); 00042 virtual void beginJob(); 00043 virtual void endJob(); 00044 00045 private: 00046 00047 int nEvt_; // internal counter of events 00048 00049 float EminDE_; 00050 float EmaxDE_; 00051 int nBinDE_; 00052 float EminSC_; 00053 float EmaxSC_; 00054 int nBinSC_; 00055 00056 std::string preshClusterCollectionX_; // secondary name to be given to collection of cluster produced in this module 00057 std::string preshClusterCollectionY_; 00058 std::string preshClusterProducer_; 00059 00060 double calib_planeX_; 00061 double calib_planeY_; 00062 double mip_; 00063 double gamma_; 00064 00065 // association parameters: 00066 std::string islandEndcapSuperClusterCollection1_; 00067 std::string islandEndcapSuperClusterProducer1_; 00068 00069 std::string islandEndcapSuperClusterCollection2_; 00070 std::string islandEndcapSuperClusterProducer2_; 00071 00072 TH1F* h1_esE_x; 00073 TH1F* h1_esE_y; 00074 TH1F* h1_esEta_x; 00075 TH1F* h1_esEta_y; 00076 TH1F* h1_esPhi_x; 00077 TH1F* h1_esPhi_y; 00078 TH1F* h1_esNhits_x; 00079 TH1F* h1_esNhits_y; 00080 TH1F* h1_esDeltaE; 00081 TH1F* h1_nclu_x; 00082 TH1F* h1_nclu_y; 00083 TH1F* h1_islandEESCEnergy1; 00084 TH1F* h1_islandEESCEnergy2; 00085 00086 std::string outputFile_; // output file 00087 TFile* rootFile_; 00088 00089 }; 00090 #endif