File indexing completed on 2023-03-17 10:55:12
0001 #ifndef L1TRPCTPG_H
0002 #define L1TRPCTPG_H
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #include <memory>
0013 #include <unistd.h>
0014
0015
0016
0017 #include "FWCore/Framework/interface/Frameworkfwd.h"
0018 #include "FWCore/Framework/interface/ESHandle.h"
0019 #include "FWCore/Framework/interface/Event.h"
0020 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0021 #include "FWCore/Framework/interface/MakerMacros.h"
0022 #include "DataFormats/Common/interface/Handle.h"
0023 #include "DQMServices/Core/interface/DQMStore.h"
0024 #include "FWCore/ServiceRegistry/interface/Service.h"
0025 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0026
0027
0028 #include "DataFormats/RPCDigi/interface/RPCDigi.h"
0029 #include "DataFormats/RPCDigi/interface/RPCDigiCollection.h"
0030 #include "DataFormats/MuonDetId/interface/RPCDetId.h"
0031 #include "DataFormats/RPCRecHit/interface/RPCRecHitCollection.h"
0032 #include "DataFormats/GeometrySurface/interface/LocalError.h"
0033 #include "DataFormats/GeometryVector/interface/LocalPoint.h"
0034 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuRegionalCand.h"
0035 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuGMTCand.h"
0036 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuGMTExtendedCand.h"
0037 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuGMTReadoutCollection.h"
0038
0039
0040 #include "Geometry/RPCGeometry/interface/RPCGeometry.h"
0041 #include "Geometry/Records/interface/MuonGeometryRecord.h"
0042 #include "Geometry/CommonDetUnit/interface/GeomDet.h"
0043 #include "Geometry/RPCGeometry/interface/RPCGeomServ.h"
0044
0045 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0046
0047 #include <iostream>
0048 #include <fstream>
0049 #include <vector>
0050
0051
0052
0053
0054
0055 class L1TRPCTPG : public DQMEDAnalyzer {
0056 public:
0057
0058 L1TRPCTPG(const edm::ParameterSet& ps);
0059
0060
0061 ~L1TRPCTPG() override;
0062
0063 protected:
0064
0065 void analyze(const edm::Event& e, const edm::EventSetup& c) override;
0066
0067
0068 void bookHistograms(DQMStore::IBooker& ibooker, edm::Run const&, edm::EventSetup const&) override;
0069 void dqmBeginRun(edm::Run const&, edm::EventSetup const&) override;
0070
0071 private:
0072
0073
0074 MonitorElement* rpctpgndigi[3];
0075 MonitorElement* rpctpgbx;
0076 MonitorElement* m_digiBxRPCBar;
0077 MonitorElement* m_digiBxRPCEnd;
0078 MonitorElement* m_digiBxDT;
0079 MonitorElement* m_digiBxCSC;
0080
0081 std::map<uint32_t, std::map<std::string, MonitorElement*> > rpctpgmeCollection;
0082
0083 int nev_;
0084 std::string outputFile_;
0085 bool verbose_;
0086 bool monitorDaemon_;
0087 std::ofstream logFile_;
0088 edm::InputTag rpctpgSource_;
0089 edm::EDGetTokenT<RPCDigiCollection> rpctpgSource_token_;
0090 edm::InputTag rpctfSource_;
0091 edm::EDGetTokenT<L1MuGMTReadoutCollection> rpctfSource_token_;
0092 edm::ESGetToken<RPCGeometry, MuonGeometryRecord> rpcgeomToken_;
0093 };
0094
0095 #endif