CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/DQM/EcalPreshowerMonitorModule/interface/ESTimingTask.h

Go to the documentation of this file.
00001 #ifndef ESTimingTask_H
00002 #define ESTimingTask_H
00003 
00004 #include "FWCore/Framework/interface/EDAnalyzer.h"
00005 #include "FWCore/Framework/interface/Event.h"
00006 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00007 #include "FWCore/Framework/interface/ESHandle.h"
00008 #include "FWCore/Framework/interface/EventSetup.h"
00009 #include "CondFormats/ESObjects/interface/ESGain.h"
00010 
00011 #include "TF1.h"
00012 #include "TH1F.h"
00013 
00014 class MonitorElement;
00015 class DQMStore;
00016 
00017 double fitf(double *x, double *par);
00018 
00019 class ESTimingTask : public edm::EDAnalyzer {
00020 
00021  public:
00022   
00023   ESTimingTask(const edm::ParameterSet& ps);
00024   virtual ~ESTimingTask();
00025   
00026  private:
00027   
00028   virtual void beginJob(void);
00029   virtual void analyze(const edm::Event&, const edm::EventSetup&);
00030   virtual void endJob(void) ;
00031   void set(const edm::EventSetup& es);
00032 
00033   // ----------member data ---------------------------
00034   edm::InputTag rechitlabel_;
00035   edm::InputTag digilabel_;
00036   std::string prefixME_;
00037   
00038   DQMStore* dqmStore_;
00039   MonitorElement* hTiming_[2][2];
00040   MonitorElement* h2DTiming_;
00041 
00042   edm::ESHandle<ESGain> esgain_;
00043 
00044   TF1 *fit_;
00045   TH1F *htESP_;
00046   TH1F *htESM_;
00047 
00048   int runNum_, eCount_; 
00049   Double_t wc_, n_;
00050   
00051 };
00052 
00053 #endif