![]() |
![]() |
00001 #ifndef L1THcalClient_H 00002 #define L1THcalClient_H 00003 // -*- C++ -*- 00004 // 00005 // Package: L1THcalClient 00006 // Class: L1THcalClient 00007 // 00015 // 00016 // Original Author: Adam Aurisano 00017 // Created: Sun Nov 25 21:32:01 CEST 2007 00018 // 00019 // 00020 // system include files 00021 #include <memory> 00022 #include <string> 00023 00024 // user include files 00025 #include "FWCore/Framework/interface/Frameworkfwd.h" 00026 #include "FWCore/Framework/interface/EDAnalyzer.h" 00027 #include "FWCore/Framework/interface/LuminosityBlock.h" 00028 00029 #include "FWCore/Framework/interface/Event.h" 00030 #include "FWCore/Framework/interface/MakerMacros.h" 00031 00032 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00033 #include "DQMServices/Core/interface/DQMStore.h" 00034 #include <TH1F.h> 00035 #include <TH2F.h> 00036 00037 #include "DQMServices/Core/interface/MonitorElement.h" 00038 // 00039 // class decleration 00040 class SubscriptionHandle; 00041 class QTestHandle; 00042 00043 class L1THcalClient : public edm::EDAnalyzer{ 00044 public: 00045 explicit L1THcalClient(const edm::ParameterSet&); 00046 ~L1THcalClient(); 00047 TH1F * get1DHisto(std::string meName, DQMStore * dbi); 00048 TH2F * get2DHisto(std::string meName, DQMStore * dbi); 00049 00050 00051 private: 00052 virtual void beginJob(void) ; 00053 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00054 virtual void endJob() ; 00055 // virtual void endLuminosityBlock(const edm::LuminosityBlock & l, const edm::EventSetup & c); 00056 void calcEff(TH1F* num, TH1F* den, MonitorElement* me); 00057 00058 // ----------member data --------------------------- 00059 int nevents,nupdates; 00060 00061 DQMStore *dbe; 00062 //std::string outputFile; 00063 //std::string qualityCriterionName; 00064 std::string input_dir; 00065 std::string output_dir; 00066 int minEventsforFit; 00067 //bool stdalone; 00068 //bool saveOutput; 00069 //bool getMESubscriptionListFromFile; 00070 //bool getQualityTestsFromFile; 00071 //SubscriptionHandle *subscriber; 00072 //QTestHandle * qtHandler; 00073 MonitorElement *hcalPlateau_; 00074 MonitorElement *hcalThreshold_; 00075 MonitorElement *hcalWidth_; 00076 MonitorElement *hcalEff_1_; 00077 MonitorElement *hcalEff_2_; 00078 MonitorElement *hcalEff_3_; 00079 MonitorElement *hcalEff_4_; 00080 MonitorElement *hcalEff_HBHE[56][72]; 00081 MonitorElement *hcalEff_HF[8][18]; 00082 00083 }; 00084 00085 #endif