CMS 3D CMS Logo

L1TGMT.h

Go to the documentation of this file.
00001 #ifndef L1TGMT_H
00002 #define L1TGMT_H
00003 
00004 /*
00005  * \file L1TGMT.h
00006  *
00007  * $Date: 2008/04/25 15:38:47 $
00008  * $Revision: 1.7 $
00009  * \author J. Berryhill, I. Mikulec
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 
00036 #include <iostream>
00037 #include <fstream>
00038 #include <vector>
00039 
00040 //
00041 // class decleration
00042 //
00043 
00044 class L1TGMT : public edm::EDAnalyzer {
00045 
00046 public:
00047 
00048 // Constructor
00049 L1TGMT(const edm::ParameterSet& ps);
00050 
00051 // Destructor
00052 virtual ~L1TGMT();
00053 
00054 protected:
00055 // Analyze
00056 void analyze(const edm::Event& e, const edm::EventSetup& c);
00057 
00058 // BeginJob
00059 void beginJob(const edm::EventSetup& c);
00060 
00061 // EndJob
00062 void endJob(void);
00063 
00064 private:
00065   // ----------member data ---------------------------
00066   DQMStore * dbe;
00067   
00068   enum ensubs { DTTF=0, RPCb, CSCTF, RPCf, GMT };
00069 
00070   MonitorElement* subs_nbx[5];
00071   MonitorElement* subs_eta[5];
00072   MonitorElement* subs_phi[5];
00073   MonitorElement* subs_pt[5];
00074   MonitorElement* subs_qty[5];
00075   MonitorElement* subs_etaphi[5];
00076   MonitorElement* subs_etaqty[5];
00077   MonitorElement* subs_bits[5];
00078   MonitorElement* subs_candlumi[5];
00079   
00080   MonitorElement* regional_triggers;
00081   
00082   MonitorElement* bx_number;
00083   MonitorElement* dbx_chip;
00084   MonitorElement* eta_dtcsc_and_rpc;
00085   MonitorElement* eta_dtcsc_only;
00086   MonitorElement* eta_rpc_only;
00087   MonitorElement* phi_dtcsc_and_rpc;
00088   MonitorElement* phi_dtcsc_only;
00089   MonitorElement* phi_rpc_only;
00090   MonitorElement* etaphi_dtcsc_and_rpc;
00091   MonitorElement* etaphi_dtcsc_only;
00092   MonitorElement* etaphi_rpc_only;
00093   MonitorElement* dist_phi_dt_rpc;
00094   MonitorElement* dist_phi_csc_rpc;
00095   MonitorElement* dist_phi_dt_csc;
00096   MonitorElement* dist_eta_dt_rpc;
00097   MonitorElement* dist_eta_csc_rpc;
00098   MonitorElement* dist_eta_dt_csc;
00099   
00100   MonitorElement* n_rpcb_vs_dttf ;
00101   MonitorElement* n_rpcf_vs_csctf;
00102   MonitorElement* n_csctf_vs_dttf;
00103   
00104   MonitorElement* subs_dbx[4];  
00105   
00106   int nev_; // Number of events processed
00107   std::string outputFile_; //file name for ROOT ouput
00108   bool verbose_;
00109   bool monitorDaemon_;
00110   ofstream logFile_;
00111   edm::InputTag gmtSource_ ;
00112   
00113   int evnum_old_; // event number of previous event
00114   int bxnum_old_; // bx of previous event
00115   int trsrc_old_; // code of trigger source ( bits: 0 DT, 1 bRPC, 2 CSC, 3 fRPC )
00116   
00117   static const double piconv_;
00118 };
00119 
00120 #endif

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