CMS 3D CMS Logo

TkMuon.h
Go to the documentation of this file.
1 #ifndef DataFormatsL1TCorrelator_TkMuon_h
2 #define DataFormatsL1TCorrelator_TkMuon_h
3 
11 
12 namespace l1t {
13  class TkMuon : public L1Candidate {
14  public:
16  typedef std::vector<L1TTTrackType> L1TTTrackCollection;
17 
18  TkMuon() : theIsolation(-999.), TrkzVtx_(999.), quality_(999), pattern_(0) {}
19 
20  TkMuon(const LorentzVector& p4,
23  float tkisol = -999.);
24 
25  TkMuon(const LorentzVector& p4,
28  float tkisol = -999.);
29 
30  //One more constructor for Tracker+ Stubs algorithm not requiring the Muon candidate
31  TkMuon(const LorentzVector& p4, const edm::Ptr<L1TTTrackType>& trkPtr, float tkisol = -999.);
32 
34  TkMuon(const L1Candidate& cand) : L1Candidate(cand), theIsolation(-999.), TrkzVtx_(999.), quality_(999) {}
35 
36  const edm::Ptr<L1TTTrackType>& trkPtr() const { return trkPtr_; }
37 
40 
41  float trkIsol() const { return theIsolation; }
42  float trkzVtx() const { return TrkzVtx_; }
43 
44  float dR() const { return dR_; }
45  int nTracksMatched() const { return nTracksMatch_; }
46  double trackCurvature() const { return trackCurvature_; }
47 
48  unsigned int quality() const { return quality_; }
49  unsigned int pattern() const { return pattern_; }
50 
51  unsigned int muonDetector() const { return muonDetector_; }
52 
54 
55  void setTrkzVtx(float TrkzVtx) { TrkzVtx_ = TrkzVtx; }
56  void setTrkIsol(float TrkIsol) { theIsolation = TrkIsol; }
57  void setQuality(unsigned int q) { quality_ = q; }
58  void setPattern(unsigned int p) { pattern_ = p; }
59 
60  void setdR(float dR) { dR_ = dR; }
61  void setNTracksMatched(int nTracksMatch) { nTracksMatch_ = nTracksMatch; }
62  void setTrackCurvature(double trackCurvature) { trackCurvature_ = trackCurvature; } // this is signed
63  void setMuonDetector(unsigned int detector) { muonDetector_ = detector; }
64 
65  private:
66  // used for the Naive producer
69 
71 
72  float theIsolation;
73  float TrkzVtx_;
74  float dR_;
77 
78  unsigned int quality_;
79  unsigned int pattern_;
80 
82  };
83 } // namespace l1t
84 
85 #endif
double trackCurvature() const
Definition: TkMuon.h:46
void setQuality(unsigned int q)
Definition: TkMuon.h:57
double trackCurvature_
Definition: TkMuon.h:76
unsigned int quality() const
Definition: TkMuon.h:48
const edm::Ptr< L1TTTrackType > & trkPtr() const
Definition: TkMuon.h:36
edm::Ref< l1t::RegionalMuonCandBxCollection > muRef_
Definition: TkMuon.h:67
int muonDetector_
Definition: TkMuon.h:81
unsigned int quality_
Definition: TkMuon.h:78
float dR_
Definition: TkMuon.h:74
int nTracksMatch_
Definition: TkMuon.h:75
edm::Ptr< L1TTTrackType > trkPtr_
Definition: TkMuon.h:70
void setTrkPtr(const edm::Ptr< L1TTTrackType > &p)
Definition: TkMuon.h:53
void setdR(float dR)
Definition: TkMuon.h:60
delete x;
Definition: CaloConfig.h:22
const LorentzVector & p4() const final
four-momentum Lorentz vector
const edm::Ref< l1t::RegionalMuonCandBxCollection > & muRef() const
Definition: TkMuon.h:38
edm::Ref< l1t::EMTFTrackCollection > emtfTrk_
Definition: TkMuon.h:68
int nTracksMatched() const
Definition: TkMuon.h:45
TkMuon(const L1Candidate &cand)
more basic constructor, in case refs/ptrs can&#39;t be set or to be set separately
Definition: TkMuon.h:34
double p() const final
magnitude of momentum vector
std::vector< L1TTTrackType > L1TTTrackCollection
Definition: TkMuon.h:16
void setTrkzVtx(float TrkzVtx)
Definition: TkMuon.h:55
void setNTracksMatched(int nTracksMatch)
Definition: TkMuon.h:61
unsigned int pattern_
Definition: TkMuon.h:79
math::XYZTLorentzVector LorentzVector
float theIsolation
Definition: TkMuon.h:72
unsigned int pattern() const
Definition: TkMuon.h:49
void setTrackCurvature(double trackCurvature)
Definition: TkMuon.h:62
float TrkzVtx_
Definition: TkMuon.h:73
const edm::Ref< l1t::EMTFTrackCollection > & emtfTrk() const
Definition: TkMuon.h:39
Class to store the L1 Track Trigger tracks.
Definition: TTTrack.h:29
TTTrack< Ref_Phase2TrackerDigi_ > L1TTTrackType
Definition: TkMuon.h:15
float trkzVtx() const
Definition: TkMuon.h:42
float dR() const
Definition: TkMuon.h:44
TkMuon()
Definition: TkMuon.h:18
unsigned int muonDetector() const
Definition: TkMuon.h:51
void setMuonDetector(unsigned int detector)
Definition: TkMuon.h:63
void setPattern(unsigned int p)
Definition: TkMuon.h:58
float trkIsol() const
Definition: TkMuon.h:41
void setTrkIsol(float TrkIsol)
Definition: TkMuon.h:56