CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/DQM/L1TMonitor/interface/L1TRPCTF.h

Go to the documentation of this file.
00001 #ifndef L1TRPCTF_H
00002 #define L1TRPCTF_H
00003 
00004 /*
00005  * \file L1TRPCTF.h
00006  *
00007  * $Date: 2011/06/02 09:32:54 $
00008  * $Revision: 1.22 $
00009  * \author J. Berryhill
00010  *
00011 */
00012 
00013 // system include files
00014 #include <memory>
00015 #include <unistd.h>
00016 
00017 // user include files
00018 #include "FWCore/Framework/interface/Frameworkfwd.h"
00019 #include "FWCore/Framework/interface/EDAnalyzer.h"
00020 
00021 #include "FWCore/Framework/interface/Event.h"
00022 #include "FWCore/Framework/interface/MakerMacros.h"
00023 
00024 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00025 
00026 #include "DQMServices/Core/interface/DQMStore.h"
00027 #include "DQMServices/Core/interface/MonitorElement.h"
00028 #include "FWCore/ServiceRegistry/interface/Service.h"
00029 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00030 
00031 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuRegionalCand.h"
00032 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuGMTCand.h"
00033 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuGMTExtendedCand.h"
00034 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuGMTReadoutCollection.h"
00035 #include <iostream>
00036 #include <fstream>
00037 #include <vector>
00038 #include <set>
00039 
00040 //
00041 // class decleration
00042 //
00043 
00044 class L1TRPCTF : public edm::EDAnalyzer {
00045 
00046 public:
00047 
00048 // Constructor
00049 L1TRPCTF(const edm::ParameterSet& ps);
00050 
00051 // Destructor
00052 virtual ~L1TRPCTF();
00053 
00054 protected:
00055 // Analyze
00056 void analyze(const edm::Event& e, const edm::EventSetup& c);
00057 
00058 // BeginJob
00059 void beginJob(void);
00060 
00061 // EndJob
00062 void endJob(void);
00063 
00064 void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 
00065                           const edm::EventSetup& context);
00066 void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 
00067                         const edm::EventSetup& c);
00068                         
00069 void endRun(const edm::Run & r, const edm::EventSetup & c);
00070 
00071 
00072 private:
00073 
00074   
00075   // ----------member data ---------------------------
00076   DQMStore * m_dbe;
00077 
00078   MonitorElement* rpctfetavalue[3];
00079   MonitorElement* rpctfphivalue[3];
00080   MonitorElement* rpctfptvalue[3];
00081   MonitorElement* rpctfchargevalue[3];
00082   MonitorElement* rpctfquality[3];
00083   MonitorElement* rpctfntrack_b[3];
00084   MonitorElement* rpctfntrack_e[3];
00085   MonitorElement* rpctfbx;
00086   MonitorElement* m_qualVsEta[3];
00087   MonitorElement* m_muonsEtaPhi[3];
00088   //MonitorElement* m_phipacked;
00089   
00090   MonitorElement* m_bxDiff;
00091   MonitorElement* rpctfcratesynchro[12];
00092   std::set<unsigned long long int>  m_globBX;
00093   
00094   
00095 
00096 
00097   edm::InputTag rpctfSource_ ;
00098 
00099   int nev_; // Number of events processed
00100   int nevRPC_; // Number of events processed where muon was found by rpc trigger
00101   std::string outputFile_; //file name for ROOT ouput
00102   bool verbose_;
00103   bool monitorDaemon_;
00104   //bool m_rpcDigiFine;
00105   //bool m_useRpcDigi;
00106 
00107   long long int m_lastUsedBxInBxdiff;
00108   std::string output_dir_;
00109   struct BxDelays { int bx, eta_t, phi_p; };  
00110 
00111 
00112 };
00113 
00114 #endif