CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
RecoMuonValidator.h
Go to the documentation of this file.
1 #ifndef Validation_RecoMuon_RecoMuonValidator_H
2 #define Validation_RecoMuon_RecoMuonValidator_H
3 
8 
11 
13 
21 
23 
24 // for selection cut
26 
27 class TrackAssociatorBase;
28 
30 public:
32  ~RecoMuonValidator() override;
33 
34  void dqmBeginRun(const edm::Run&, const edm::EventSetup& eventSetup) override;
35  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
36  void dqmEndRun(edm::Run const&, edm::EventSetup const&) override;
37  void analyze(const edm::Event& event, const edm::EventSetup& eventSetup) override;
38  virtual int countMuonHits(const reco::Track& track) const;
39  virtual int countTrackerHits(const reco::Track& track) const;
40 
41 protected:
42  unsigned int verbose_;
43 
50 
52 
55 
60 
65 
67 
68  bool doAbsEta_;
69  bool doAssoc_;
70  bool usePFMuon_;
71 
73 
74  // Track to use
76 
77  struct MuonME;
78  MuonME* muonME_;
79 
80  struct CommonME;
82 
83  //
84  //struct for histogram dimensions
85  //
86  struct HistoDimensions {
87  //p
88  unsigned int nBinP;
89  double minP, maxP;
90  //pt
91  unsigned int nBinPt;
92  double minPt, maxPt;
93  //if abs eta
94  bool doAbsEta;
95  //eta
96  unsigned int nBinEta;
97  double minEta, maxEta;
98  //phi
99  unsigned int nBinPhi;
100  double minPhi, maxPhi;
101  //dxy
102  unsigned int nBinDxy;
103  double minDxy, maxDxy;
104  //dz
105  unsigned int nBinDz;
106  double minDz, maxDz;
107  //pulls
108  unsigned int nBinPull;
109  double wPull;
110  //resolustions
111  unsigned int nBinErr;
112  double minErrP, maxErrP;
119  //track multiplicities
120  unsigned int nTrks, nAssoc;
121  unsigned int nDof;
122  // for PF muons
123  bool usePFMuon;
124  };
125 
127 
128 private:
131 };
132 
133 #endif
edm::EDGetTokenT< edm::View< reco::Muon > > muonToken_
edm::EDGetTokenT< TrackingParticleCollection > simToken_
edm::InputTag simLabel_
StringCutObjectSelector< reco::Muon > selector_
virtual int countMuonHits(const reco::Track &track) const
reco::MuonTrackType trackType_
edm::EDGetTokenT< reco::VertexCollection > primvertexToken_
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
virtual int countTrackerHits(const reco::Track &track) const
void dqmEndRun(edm::Run const &, edm::EventSetup const &) override
edm::EDGetTokenT< TrackingParticleRefVector > tpRefVectorToken_
TrackingParticleSelector tpSelector_
edm::InputTag muAssocLabel_
HistoDimensions hDim
std::string outputFileName_
edm::EDGetTokenT< reco::BeamSpot > beamspotToken_
unsigned int verbose_
void dqmBeginRun(const edm::Run &, const edm::EventSetup &eventSetup) override
edm::InputTag muonLabel_
std::string subsystemname_
~RecoMuonValidator() override
edm::EDGetTokenT< reco::MuonToTrackingParticleAssociator > muAssocToken_
edm::InputTag beamspotLabel_
edm::InputTag primvertexLabel_
std::string muonSelection_
edm::ParameterSet pset
MuonTrackType
Definition: MuonTrackType.h:28
void analyze(const edm::Event &event, const edm::EventSetup &eventSetup) override
RecoMuonValidator(const edm::ParameterSet &pset)
Definition: event.py:1
Definition: Run.h:45