File indexing completed on 2024-04-06 12:09:38
0001 #ifndef SegmentTrackAnalyzer_H
0002 #define SegmentTrackAnalyzer_H
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include <memory>
0012 #include <fstream>
0013 #include "FWCore/Framework/interface/Frameworkfwd.h"
0014 #include "FWCore/Framework/interface/Event.h"
0015 #include "FWCore/Framework/interface/MakerMacros.h"
0016 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0017 #include "FWCore/ServiceRegistry/interface/Service.h"
0018 #include "DQMServices/Core/interface/DQMStore.h"
0019 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0020 #include "RecoMuon/TrackingTools/interface/SegmentsTrackAssociator.h"
0021 #include "DataFormats/TrackReco/interface/Track.h"
0022 #include "DataFormats/TrackReco/interface/TrackFwd.h"
0023 #include "DataFormats/TrackingRecHit/interface/TrackingRecHit.h"
0024 #include "TrackingTools/TransientTrack/interface/TransientTrack.h"
0025
0026 class MuonServiceProxy;
0027
0028 class SegmentTrackAnalyzer : public DQMEDAnalyzer {
0029 public:
0030
0031 SegmentTrackAnalyzer(const edm::ParameterSet&);
0032
0033
0034 ~SegmentTrackAnalyzer() override { delete theSegmentsAssociator; };
0035
0036 void analyze(const edm::Event&, const edm::EventSetup&) override;
0037 void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
0038
0039 private:
0040
0041 edm::ParameterSet parameters;
0042 edm::EDGetTokenT<reco::TrackCollection> theMuTrackCollectionLabel_;
0043
0044
0045 std::string metname;
0046 std::string trackCollection;
0047
0048 SegmentsTrackAssociator* theSegmentsAssociator;
0049
0050 int etaBin;
0051 double etaMin;
0052 double etaMax;
0053 int phiBin;
0054 double phiMin;
0055 double phiMax;
0056 int ptBin;
0057 double ptMin;
0058 double ptMax;
0059
0060
0061 MonitorElement* hitsNotUsed;
0062 MonitorElement* hitsNotUsedPercentual;
0063 MonitorElement* TrackSegm;
0064 MonitorElement* hitStaProvenance;
0065 MonitorElement* hitTkrProvenance;
0066 MonitorElement* trackHitPercentualVsEta;
0067 MonitorElement* trackHitPercentualVsPhi;
0068 MonitorElement* trackHitPercentualVsPt;
0069 MonitorElement* dtTrackHitPercentualVsEta;
0070 MonitorElement* dtTrackHitPercentualVsPhi;
0071 MonitorElement* dtTrackHitPercentualVsPt;
0072 MonitorElement* cscTrackHitPercentualVsEta;
0073 MonitorElement* cscTrackHitPercentualVsPhi;
0074 MonitorElement* cscTrackHitPercentualVsPt;
0075 };
0076 #endif