CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch1/src/DQM/L1TMonitorClient/interface/L1TGCTClient.h

Go to the documentation of this file.
00001 #ifndef DQM_L1TMONITORCLIENT_L1TGCTCLIENT_H
00002 #define DQM_L1TMONITORCLIENT_L1TGCTCLIENT_H
00003 
00004 #include "FWCore/Framework/interface/Frameworkfwd.h"
00005 #include "FWCore/Framework/interface/Event.h"
00006 #include "FWCore/Framework/interface/MakerMacros.h"
00007 #include <FWCore/Framework/interface/EDAnalyzer.h>
00008 #include "DQMServices/Core/interface/DQMStore.h"
00009 #include "DQMServices/Core/interface/MonitorElement.h"
00010 
00011 #include <memory>
00012 #include <iostream>
00013 #include <fstream>
00014 #include <string>
00015 #include <vector>
00016 #include <map>
00017 
00018 class L1TGCTClient: public edm::EDAnalyzer {
00019 
00020  public:
00021 
00023   L1TGCTClient(const edm::ParameterSet& ps);
00024   
00026   virtual ~L1TGCTClient();
00027  
00028  protected:
00029 
00031   void beginJob(void);
00032 
00034   void beginRun(const edm::Run& r, const edm::EventSetup& c);
00035 
00037   void analyze(const edm::Event& e, const edm::EventSetup& c) ;
00038 
00039   void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 
00040                             const edm::EventSetup& context) ;
00041 
00043   void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 
00044                           const edm::EventSetup& c);
00045 
00047   void endRun(const edm::Run& r, const edm::EventSetup& c);
00048 
00050   void endJob();
00051 
00052  private:
00053 
00054   void processHistograms();
00055 
00056   void makeXProjection(TH2F* input, MonitorElement* output);
00057   void makeYProjection(TH2F* input, MonitorElement* output);
00058 
00059   DQMStore* dbe_;   
00060   std::string monitorDir_; 
00061   int counterLS_;      
00062   int counterEvt_;     
00063   int prescaleLS_;     
00064   int prescaleEvt_;    
00065 
00066   bool m_runInEventLoop;
00067   bool m_runInEndLumi;
00068   bool m_runInEndRun;
00069   bool m_runInEndJob;
00070 
00071 
00072 
00073   MonitorElement *l1GctIsoEmOccEta_;
00074   MonitorElement *l1GctIsoEmOccPhi_;
00075   MonitorElement *l1GctNonIsoEmOccEta_;
00076   MonitorElement *l1GctNonIsoEmOccPhi_;
00077   MonitorElement *l1GctAllJetsOccEta_;
00078   MonitorElement *l1GctAllJetsOccPhi_;
00079   MonitorElement *l1GctCenJetsOccEta_;
00080   MonitorElement *l1GctCenJetsOccPhi_;
00081   MonitorElement *l1GctForJetsOccEta_;
00082   MonitorElement *l1GctForJetsOccPhi_;
00083   MonitorElement *l1GctTauJetsOccEta_;
00084   MonitorElement *l1GctTauJetsOccPhi_;
00085 
00086 };
00087 
00088 #endif