CMS 3D CMS Logo

MuonTrackAnalyzer.h
Go to the documentation of this file.
1 #ifndef Validation_RecoMuon_MuonTrackAnalyzer_H
2 #define Validation_RecoMuon_MuonTrackAnalyzer_H
3 
10 // Base Class Headers
12 
15 
17 
19 
27 
28 namespace edm {
29  class ParameterSet;
30  class Event;
31  class EventSetup;
32 } // namespace edm
33 namespace reco {
34  class TransientTrack;
35 }
36 
37 class TFile;
38 class TH1F;
39 class TH2F;
40 class HTrackVariables;
41 class HTrack;
42 
45 class MuonServiceProxy;
47 class TrajectorySeed;
49 
51 public:
52  enum EtaRange { all, barrel, endcap };
53 
54 public:
57 
59  ~MuonTrackAnalyzer() override;
60 
61  // Operations
62 
63  void analyze(const edm::Event &event, const edm::EventSetup &eventSetup) override;
64  void tracksAnalysis(const edm::Event &event,
67  void seedsAnalysis(const edm::Event &event,
70 
71  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
72 
73 protected:
74 private:
75  bool isInTheAcceptance(double eta);
77 
78  std::pair<SimTrack, double> getSimTrack(TrajectoryStateOnSurface &tsos,
80 
85 
87 
90 
94  //TFile* theFile;
95 
97 
104 
111 
115 
118 
119  // Histograms
125 
131 
139 
141 
147 
148  // Counters
151 };
152 #endif
std::string theSeedPropagatorName
MonitorElement * hChi2VsEta
std::pair< SimTrack, double > getSimTrack(TrajectoryStateOnSurface &tsos, edm::Handle< edm::SimTrackContainer > simTracks)
edm::EDGetTokenT< TrajectorySeedCollection > theSeedsToken
MonitorElement * hChi2ProbVsEta
bool checkMuonSimHitPresence(const edm::Event &event, edm::Handle< edm::SimTrackContainer > simTracks)
MonitorElement * hDof
edm::InputTag theCSCSimHitLabel
edm::EDGetTokenT< std::vector< PSimHit > > theCSCSimHitToken
MonitorElement * hDeltaPtVsEta
edm::EDGetTokenT< std::vector< PSimHit > > theDTSimHitToken
TrajectoryStateOnSurface getSeedTSOS(const TrajectorySeed &seed)
void seedsAnalysis(const edm::Event &event, const edm::EventSetup &eventSetup, edm::Handle< edm::SimTrackContainer > simTracks)
MuonTrackAnalyzer(const edm::ParameterSet &pset)
Constructor.
MonitorElement * hChi2
MonitorElement * hChi2Norm
MonitorElement * hDofVsEta
edm::InputTag theDTSimHitLabel
edm::InputTag theSeedsLabel
HTrackVariables * hSimTracks
MonitorElement * hPtRecVsPtGen
MonitorElement * hChargeVsEta
edm::EDGetTokenT< edm::SimTrackContainer > theSimTracksToken
MonitorElement * hHitsPerTrack
bool isInTheAcceptance(double eta)
edm::EDGetTokenT< std::vector< PSimHit > > theRPCSimHitToken
MonitorElement * hNumberOfTracks
MuonUpdatorAtVertex * theUpdator
std::string subsystemname_
edm::ParameterSet pset
edm::EDGetTokenT< reco::TrackCollection > theTracksToken
#define debug
Definition: HDRShower.cc:19
MonitorElement * hHitsPerTrackVsEta
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
edm::InputTag theSimTracksLabel
edm::InputTag theRPCSimHitLabel
MonitorElement * hChi2NormVsEta
void tracksAnalysis(const edm::Event &event, const edm::EventSetup &eventSetup, edm::Handle< edm::SimTrackContainer > simTracks)
fixed size matrix
HLT enums.
MonitorElement * hChargeVsPt
MonitorElement * hNumberOfTracksVsEta
~MuonTrackAnalyzer() override
Destructor.
void analyze(const edm::Event &event, const edm::EventSetup &eventSetup) override
MonitorElement * hChi2Prob
MuonServiceProxy * theService
Definition: HTrack.h:12
void fillPlots(const edm::Event &event, edm::Handle< edm::SimTrackContainer > &simTracks)
MonitorElement * hDeltaPt_In_Out_VsEta
Definition: event.py:1
Definition: Run.h:45
edm::InputTag theTracksLabel