CMS 3D CMS Logo

L1TGMTClient.h

Go to the documentation of this file.
00001 #ifndef DQM_L1TMONITORCLIENT_L1TGMTCLIENT_H
00002 #define DQM_L1TMONITORCLIENT_L1TGMTCLIENT_H
00003 
00004 #include "FWCore/Framework/interface/EDAnalyzer.h"
00005 #include "DQMServices/Core/interface/DQMStore.h"
00006 #include "DQMServices/Core/interface/MonitorElement.h"
00007 
00008 #include <string>
00009 
00010 class L1TGMTClient: public edm::EDAnalyzer {
00011 
00012 public:
00013 
00015   L1TGMTClient(const edm::ParameterSet& ps);
00016   
00018   virtual ~L1TGMTClient();
00019  
00020 protected:
00021 
00023   void beginJob(const edm::EventSetup& c);
00024 
00026   void beginRun(const edm::Run& r, const edm::EventSetup& c);
00027 
00029   void analyze(const edm::Event& e, const edm::EventSetup& c) ;
00030 
00031   void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 
00032                             const edm::EventSetup& context) ;
00033 
00035   void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 
00036                           const edm::EventSetup& c);
00037 
00039   void endRun(const edm::Run& r, const edm::EventSetup& c);
00040 
00042   void endJob();
00043 
00044 private:
00045 
00046   void initialize();
00047   void process();
00048   void makeRatio1D(MonitorElement* mer, std::string h1Name, std::string h2Name);
00049   void makeEfficiency1D(MonitorElement *meeff, std::string heName, std::string hiName); 
00050   void makeEfficiency2D(MonitorElement *meeff, std::string heName, std::string hiName); 
00051   TH1F * get1DHisto(std::string meName, DQMStore* dbi);
00052   TH2F * get2DHisto(std::string meName, DQMStore* dbi);
00053   MonitorElement* bookClone1D(std::string name, std::string title, std::string hrefName);
00054   MonitorElement* bookClone1DVB(std::string name, std::string title, std::string hrefName);
00055   MonitorElement* bookClone2D(std::string name, std::string title, std::string hrefName);
00056   
00057   edm::ParameterSet parameters_;
00058   DQMStore* dbe_;  
00059   std::string monitorName_;
00060   std::string input_dir_;
00061   std::string output_dir_;
00062   int counterLS_;      
00063   int counterEvt_;     
00064   int prescaleLS_;     
00065   int prescaleEvt_;    
00066 
00067   // -------- member data --------
00068   MonitorElement* eff_eta_dtcsc;
00069   MonitorElement* eff_eta_rpc;
00070   MonitorElement* eff_phi_dtcsc;
00071   MonitorElement* eff_phi_rpc;
00072   MonitorElement* eff_etaphi_dtcsc;
00073   MonitorElement* eff_etaphi_rpc;
00074   
00075   MonitorElement* ratio_dt_rpcb_lumi;
00076   MonitorElement* ratio_csc_rpcf_lumi;
00077 
00078 };
00079 
00080 #endif

Generated on Tue Jun 9 17:33:16 2009 for CMSSW by  doxygen 1.5.4