File indexing completed on 2023-03-17 10:55:13
0001 #ifndef DQM_L1TMonitor_L1TStage2EMTF_h
0002 #define DQM_L1TMonitor_L1TStage2EMTF_h
0003
0004 #include "FWCore/Framework/interface/Event.h"
0005 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0006 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0007
0008 #include "DQMServices/Core/interface/DQMOneEDAnalyzer.h"
0009 #include "DQMServices/Core/interface/DQMStore.h"
0010
0011 #include "DataFormats/L1TMuon/interface/EMTFDaqOut.h"
0012 #include "DataFormats/L1TMuon/interface/EMTFHit.h"
0013 #include "DataFormats/L1TMuon/interface/EMTFTrack.h"
0014 #include "DataFormats/L1TMuon/interface/RegionalMuonCand.h"
0015
0016 class L1TStage2EMTF : public DQMOneEDAnalyzer<> {
0017 public:
0018 L1TStage2EMTF(const edm::ParameterSet& ps);
0019 ~L1TStage2EMTF() override = default;
0020
0021 protected:
0022 void bookHistograms(DQMStore::IBooker&, const edm::Run&, const edm::EventSetup&) override;
0023 void analyze(const edm::Event&, const edm::EventSetup&) override;
0024
0025 private:
0026 edm::EDGetTokenT<l1t::EMTFDaqOutCollection> daqToken;
0027 edm::EDGetTokenT<l1t::EMTFHitCollection> hitToken;
0028 edm::EDGetTokenT<l1t::EMTFTrackCollection> trackToken;
0029 edm::EDGetTokenT<l1t::RegionalMuonCandBxCollection> muonToken;
0030 std::string monitorDir;
0031 bool verbose;
0032
0033 MonitorElement* emtfErrors;
0034 MonitorElement* mpcLinkErrors;
0035 MonitorElement* mpcLinkGood;
0036
0037 MonitorElement* cscLCTBX;
0038 MonitorElement* cscLCTStrip[20];
0039 MonitorElement* cscLCTWire[20];
0040 MonitorElement* cscChamberStrip[20];
0041 MonitorElement* cscChamberWire[20];
0042 MonitorElement* cscLCTOccupancy;
0043 MonitorElement* cscDQMOccupancy;
0044 MonitorElement* cscLCTTiming[5];
0045 MonitorElement* cscLCTTimingFrac[5];
0046 MonitorElement* cscTimingTot;
0047 MonitorElement* emtfTrackModeVsCSCBXDiff[8];
0048
0049 MonitorElement* emtfnTracks;
0050 MonitorElement* emtfTracknHits;
0051 MonitorElement* emtfTrackBX;
0052 MonitorElement* emtfTrackBXVsCSCLCT[3];
0053 MonitorElement* emtfTrackBXVsRPCHit[3];
0054 MonitorElement* emtfTrackPt;
0055 MonitorElement* emtfTrackPtHighQuality;
0056 MonitorElement* emtfTrackPtHighQualityHighPT;
0057 MonitorElement* emtfTrackEta;
0058 MonitorElement* emtfTrackEtaHighQuality;
0059 MonitorElement* emtfTrackEtaHighQualityHighPT;
0060 MonitorElement* emtfTrackPhi;
0061 MonitorElement* emtfTrackPhiHighQuality;
0062 MonitorElement* emtfTrackPhiHighQualityHighPT;
0063 MonitorElement* emtfTrackOccupancy;
0064 MonitorElement* emtfTrackOccupancyHighQuality;
0065 MonitorElement* emtfTrackOccupancyHighQualityHighPT;
0066 MonitorElement* emtfTrackMode;
0067 MonitorElement* emtfTrackQuality;
0068 MonitorElement* emtfTrackQualityVsMode;
0069 MonitorElement* RPCvsEMTFTrackMode;
0070
0071 MonitorElement* emtfMuonBX;
0072 MonitorElement* emtfMuonhwPt;
0073 MonitorElement* emtfMuonhwEta;
0074 MonitorElement* emtfMuonhwPhi;
0075 MonitorElement* emtfMuonhwQual;
0076
0077 MonitorElement* rpcHitBX;
0078 MonitorElement* rpcHitOccupancy;
0079 MonitorElement* rpcHitTiming[5];
0080 MonitorElement* rpcHitTimingFrac[5];
0081 MonitorElement* rpcHitTimingTot;
0082 MonitorElement* rpcHitPhi[12];
0083 MonitorElement* rpcHitTheta[12];
0084 MonitorElement* rpcChamberPhi[12];
0085 MonitorElement* rpcChamberTheta[12];
0086
0087 MonitorElement* rpcHitTimingInTrack;
0088 MonitorElement* emtfTrackModeVsRPCBXDiff[8];
0089
0090
0091 MonitorElement* hitTypeBX;
0092 MonitorElement* gemHitBX;
0093 MonitorElement* gemHitOccupancy;
0094 MonitorElement* gemHitTiming[5];
0095 MonitorElement* gemHitTimingFrac[5];
0096 MonitorElement* gemHitTimingTot;
0097 MonitorElement* gemChamberPad[2];
0098 MonitorElement* gemChamberPartition[2];
0099 MonitorElement* emtfTrackBXVsGEMHit[3];
0100 MonitorElement* emtfTrackModeVsGEMBXDiff[2];
0101
0102
0103 MonitorElement* gemHitPhi[2];
0104 MonitorElement* gemHitTheta[2];
0105 MonitorElement* gemHitVScscLCTPhi[2];
0106 MonitorElement* gemHitVScscLCTTheta[2];
0107 MonitorElement* gemHitVScscLCTBX[2];
0108
0109
0110 MonitorElement* gemVFATBXPerChamber[36][2][2];
0111 MonitorElement* gemChamberVFATBX[2][7];
0112 };
0113
0114 #endif