File indexing completed on 2024-09-11 04:32:29
0001 #ifndef DQM_GEM_INTERFACE_GEMRecHitSource_h
0002 #define DQM_GEM_INTERFACE_GEMRecHitSource_h
0003
0004 #include "DQM/GEM/interface/GEMDQMBase.h"
0005
0006 #include "DataFormats/GEMRecHit/interface/GEMRecHit.h"
0007 #include "DataFormats/GEMRecHit/interface/GEMRecHitCollection.h"
0008 #include "DataFormats/GEMDigi/interface/GEMDigiCollection.h"
0009
0010 #include <string>
0011
0012
0013
0014 class GEMRecHitSource : public GEMDQMBase {
0015 public:
0016 explicit GEMRecHitSource(const edm::ParameterSet& cfg);
0017 ~GEMRecHitSource() override {}
0018 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0019
0020 protected:
0021 void dqmBeginRun(edm::Run const&, edm::EventSetup const&) override {}
0022 void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
0023 void analyze(edm::Event const& e, edm::EventSetup const& eSetup) override;
0024
0025 private:
0026 int ProcessWithMEMap2WithEta(BookingHelper& bh, ME3IdsKey key) override;
0027 int ProcessWithMEMap2AbsReWithEta(BookingHelper& bh, ME3IdsKey key) override;
0028 int ProcessWithMEMap3(BookingHelper& bh, ME3IdsKey key) override;
0029 int ProcessWithMEMap4WithChamber(BookingHelper& bh, ME4IdsKey key) override;
0030
0031 edm::EDGetToken tagRecHit_;
0032
0033 int nIdxFirstDigi_;
0034 int nClusterSizeBinNum_;
0035 int nNumDivideEtaPartitionInRPhi_;
0036
0037 MEMap3Inf mapRecHitXY_layer_;
0038 MEMap3Inf mapRecHitOcc_ieta_;
0039 MEMap3Inf mapRecHitOcc_phi_;
0040 MEMap3Inf mapTotalRecHitPerEvtLayer_;
0041 MEMap3Inf mapTotalRecHitPerEvtIEta_;
0042 MEMap3Inf mapCLSRecHit_ieta_;
0043 MEMap3Inf mapCLSAverage_;
0044 MEMap3Inf mapCLSOver5_;
0045
0046 MEMap4Inf mapCLSPerCh_;
0047
0048 std::string strFolderMain_;
0049
0050 Int_t nCLSMax_;
0051 Float_t fRadiusMin_;
0052 Float_t fRadiusMax_;
0053
0054 std::unordered_map<UInt_t, MonitorElement*> recHitME_;
0055 std::unordered_map<UInt_t, MonitorElement*> VFAT_vs_ClusterSize_;
0056 std::unordered_map<UInt_t, MonitorElement*> DigisFired_vs_eta_;
0057 std::unordered_map<UInt_t, MonitorElement*> rh_vs_eta_;
0058 std::unordered_map<UInt_t, MonitorElement*> recGlobalPos;
0059 };
0060
0061 #endif