Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:07:45

0001 #ifndef DQM_L1TMonitor_L1TStage2BMTF_h
0002 #define DQM_L1TMonitor_L1TStage2BMTF_h
0003 
0004 /*
0005  * \file L1TStage2BMTF.h
0006  * \Author Esmaeel Eskandari Tadavani
0007  * \December 2015
0008 */
0009 
0010 // system requirements
0011 #include <iosfwd>
0012 #include <memory>
0013 #include <vector>
0014 #include <string>
0015 #include <algorithm>
0016 
0017 // general requirements
0018 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0019 #include "FWCore/Framework/interface/Event.h"
0020 #include "FWCore/Framework/interface/Run.h"
0021 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0022 #include "FWCore/Utilities/interface/InputTag.h"
0023 #include "DataFormats/Common/interface/Handle.h"
0024 
0025 // stage2 requirements
0026 #include "DataFormats/L1TMuon/interface/RegionalMuonCand.h"
0027 #include "DataFormats/FEDRawData/interface/FEDRawDataCollection.h"
0028 #include "DataFormats/FEDRawData/interface/FEDHeader.h"
0029 #include "DataFormats/FEDRawData/interface/FEDNumbering.h"
0030 #include "DataFormats/L1Trigger/interface/BXVector.h"
0031 #include "DataFormats/L1Trigger/interface/Muon.h"
0032 #include "DataFormats/L1TMuon/interface/RegionalMuonCandFwd.h"
0033 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutRecord.h"
0034 
0035 // dqm requirements
0036 #include "DQMServices/Core/interface/DQMStore.h"
0037 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0038 
0039 #include "FWCore/Framework/interface/Frameworkfwd.h"
0040 #include "FWCore/Framework/interface/MakerMacros.h"
0041 #include "FWCore/ServiceRegistry/interface/Service.h"
0042 
0043 #include "L1Trigger/L1TMuon/interface/MuonRawDigiTranslator.h"
0044 #include "L1Trigger/L1TMuon/interface/RegionalMuonRawDigiTranslator.h"
0045 
0046 #include "DataFormats/L1DTTrackFinder/interface/L1MuDTChambPhContainer.h"
0047 #include "DataFormats/L1DTTrackFinder/interface/L1MuDTChambThContainer.h"
0048 
0049 // class decleration
0050 
0051 class L1TStage2BMTF : public DQMEDAnalyzer {
0052 public:
0053   // class constructor
0054   L1TStage2BMTF(const edm::ParameterSet& ps);
0055   // class destructor
0056   ~L1TStage2BMTF() override;
0057 
0058   // member functions
0059 protected:
0060   void analyze(const edm::Event&, const edm::EventSetup&) override;
0061   void bookHistograms(DQMStore::IBooker&, const edm::Run&, const edm::EventSetup&) override;
0062 
0063   // data members
0064 private:
0065   std::string monitorDir;
0066   edm::InputTag bmtfSource;
0067   //  edm::InputTag bmtfSourceTwinMux1;
0068   //  edm::InputTag bmtfSourceTwinMux2;
0069   bool verbose;
0070   bool kalman;
0071   edm::EDGetToken bmtfToken;
0072   // edm::EDGetToken bmtfTokenTwinMux1;
0073   //  edm::EDGetToken bmtfTokenTwinMux2;
0074   float global_phi;
0075 
0076   MonitorElement* bmtf_hwEta;
0077   MonitorElement* bmtf_hwLocalPhi;
0078   MonitorElement* bmtf_hwGlobalPhi;
0079   MonitorElement* bmtf_hwPt;
0080   MonitorElement* bmtf_hwQual;
0081   MonitorElement* bmtf_proc;
0082 
0083   MonitorElement* bmtf_wedge_bx;
0084   MonitorElement* bmtf_hwEta_hwLocalPhi;
0085   MonitorElement* bmtf_hwEta_hwGlobalPhi;
0086 
0087   MonitorElement* bmtf_hwPt_hwEta;
0088   MonitorElement* bmtf_hwPt_hwLocalPhi;
0089 
0090   MonitorElement* bmtf_hwEta_bx;
0091   MonitorElement* bmtf_hwLocalPhi_bx;
0092   MonitorElement* bmtf_hwPt_bx;
0093   MonitorElement* bmtf_hwQual_bx;
0094 
0095   MonitorElement* bmtf_hwDXY;
0096   MonitorElement* bmtf_hwPtUnconstrained;
0097 
0098   /* MonitorElement* bmtf_twinmuxInput_PhiBX; */
0099   /* MonitorElement* bmtf_twinmuxInput_PhiPhi; */
0100   /* MonitorElement* bmtf_twinmuxInput_PhiPhiB; */
0101   /* MonitorElement* bmtf_twinmuxInput_PhiQual; */
0102   /* MonitorElement* bmtf_twinmuxInput_PhiStation; */
0103   /* MonitorElement* bmtf_twinmuxInput_PhiSector; */
0104   /* MonitorElement* bmtf_twinmuxInput_PhiWheel; */
0105   /* MonitorElement* bmtf_twinmuxInput_PhiTrSeg; */
0106   /* MonitorElement* bmtf_twinmuxInput_PhiWheel_PhiSector; */
0107 
0108   /* MonitorElement* bmtf_twinmuxInput_TheBX; */
0109   /* MonitorElement* bmtf_twinmuxInput_ThePhi; */
0110   /* MonitorElement* bmtf_twinmuxInput_ThePhiB; */
0111   /* MonitorElement* bmtf_twinmuxInput_TheQual; */
0112   /* MonitorElement* bmtf_twinmuxInput_TheStation; */
0113   /* MonitorElement* bmtf_twinmuxInput_TheSector; */
0114   /* MonitorElement* bmtf_twinmuxInput_TheWheel; */
0115   /* MonitorElement* bmtf_twinmuxInput_TheTrSeg; */
0116   /* MonitorElement* bmtf_twinmuxInput_TheWheel_TheSector; */
0117 };
0118 
0119 #endif