File indexing completed on 2024-08-30 02:11:04
0001 #ifndef RPCDigiValid_h
0002 #define RPCDigiValid_h
0003
0004 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0005 #include "DQMServices/Core/interface/DQMStore.h"
0006 #include "FWCore/Framework/interface/ESHandle.h"
0007 #include "FWCore/Framework/interface/Event.h"
0008 #include "FWCore/Framework/interface/EventSetup.h"
0009 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0010
0011 #include <string>
0012
0013 #include "DataFormats/RPCDigi/interface/RPCDigiCollection.h"
0014 #include "FWCore/Utilities/interface/EDGetToken.h"
0015 #include "SimDataFormats/TrackingHit/interface/PSimHitContainer.h"
0016
0017 #include "Geometry/RPCGeometry/interface/RPCGeometry.h"
0018 #include "Geometry/Records/interface/MuonGeometryRecord.h"
0019
0020 class RPCDigiValid : public DQMEDAnalyzer {
0021 public:
0022 RPCDigiValid(const edm::ParameterSet &ps);
0023 ~RPCDigiValid() override = default;
0024
0025 protected:
0026 void analyze(const edm::Event &e, const edm::EventSetup &c) override;
0027 void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
0028
0029 private:
0030
0031 MonitorElement *hRZ_;
0032
0033 MonitorElement *hXY_Barrel_;
0034 std::map<int, MonitorElement *> hXY_Endcap_;
0035 std::map<int, MonitorElement *> hZPhi_;
0036
0037
0038 MonitorElement *hStripProf_;
0039 MonitorElement *hStripProf_RB12_, *hStripProf_RB34_;
0040 MonitorElement *hStripProf_Endcap_, *hStripProf_IRPC_;
0041
0042
0043 MonitorElement *hBxDist_;
0044 MonitorElement *hBxDisc_4Plus_;
0045 MonitorElement *hBxDisc_4Min_;
0046
0047
0048 bool isDigiTimeAvailable_;
0049 MonitorElement *hDigiTimeAll_, *hDigiTime_, *hDigiTimeIRPC_, *hDigiTimeNoIRPC_;
0050
0051
0052 MonitorElement *hNSimHitPerRoll_, *hNDigiPerRoll_;
0053
0054
0055 MonitorElement *hRes_;
0056 std::map<int, MonitorElement *> hResBarrelLayers_;
0057 std::map<int, MonitorElement *> hResBarrelWheels_;
0058 std::map<int, MonitorElement *> hResEndcapDisks_;
0059 std::map<int, MonitorElement *> hResEndcapRings_;
0060
0061
0062 edm::EDGetTokenT<edm::PSimHitContainer> simHitToken_;
0063 edm::EDGetTokenT<RPCDigiCollection> rpcDigiToken_;
0064
0065 edm::ESGetToken<RPCGeometry, MuonGeometryRecord> rpcGeomToken_;
0066 };
0067
0068 #endif