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
l1t::TkMuon::pattern_
unsigned int pattern_
Definition: TkMuon.h:79
l1t::TkMuon::TkMuon
TkMuon(const L1Candidate &cand)
more basic constructor, in case refs/ptrs can't be set or to be set separately
Definition: TkMuon.h:34
l1t::TkMuon::emtfTrk_
edm::Ref< l1t::EMTFTrackCollection > emtfTrk_
Definition: TkMuon.h:68
l1t::TkMuon::L1TTTrackType
TTTrack< Ref_Phase2TrackerDigi_ > L1TTTrackType
Definition: TkMuon.h:15
l1t::TkMuon::setTrkIsol
void setTrkIsol(float TrkIsol)
Definition: TkMuon.h:56
TTTypes.h
l1t::TkMuon::TkMuon
TkMuon()
Definition: TkMuon.h:18
l1t::TkMuon::setTrackCurvature
void setTrackCurvature(double trackCurvature)
Definition: TkMuon.h:62
EMTFTrack.h
TTTrack
Class to store the L1 Track Trigger tracks.
Definition: TTTrack.h:29
l1t::TkMuon::setNTracksMatched
void setNTracksMatched(int nTracksMatch)
Definition: TkMuon.h:61
l1t::TkMuon::nTracksMatched
int nTracksMatched() const
Definition: TkMuon.h:45
edm::Ref
Definition: AssociativeIterator.h:58
l1t::TkMuon::trkzVtx
float trkzVtx() const
Definition: TkMuon.h:42
l1t::TkMuon::setTrkPtr
void setTrkPtr(const edm::Ptr< L1TTTrackType > &p)
Definition: TkMuon.h:53
l1t::TkMuon::trackCurvature
double trackCurvature() const
Definition: TkMuon.h:46
l1t::TkMuon::TrkzVtx_
float TrkzVtx_
Definition: TkMuon.h:73
l1t::L1Candidate
Definition: L1Candidate.h:15
l1t::TkMuon::trkIsol
float trkIsol() const
Definition: TkMuon.h:41
l1t::TkMuon::quality
unsigned int quality() const
Definition: TkMuon.h:48
l1t::TkMuon::muonDetector_
int muonDetector_
Definition: TkMuon.h:81
l1t::TkMuon::trkPtr
const edm::Ptr< L1TTTrackType > & trkPtr() const
Definition: TkMuon.h:36
l1t::TkMuon::muRef_
edm::Ref< l1t::RegionalMuonCandBxCollection > muRef_
Definition: TkMuon.h:67
l1t::TkMuon::setdR
void setdR(float dR)
Definition: TkMuon.h:60
l1t
delete x;
Definition: CaloConfig.h:22
l1t::TkMuon::L1TTTrackCollection
std::vector< L1TTTrackType > L1TTTrackCollection
Definition: TkMuon.h:16
l1t::TkMuon::setQuality
void setQuality(unsigned int q)
Definition: TkMuon.h:57
cand
Definition: decayParser.h:32
Ptr.h
reco::LeafCandidate::p4
const LorentzVector & p4() const final
four-momentum Lorentz vector
Definition: LeafCandidate.h:114
submitPVResolutionJobs.q
q
Definition: submitPVResolutionJobs.py:84
l1t::TkMuon::muRef
const edm::Ref< l1t::RegionalMuonCandBxCollection > & muRef() const
Definition: TkMuon.h:38
L1Candidate.h
l1t::TkMuon
Definition: TkMuon.h:13
l1t::TkMuon::pattern
unsigned int pattern() const
Definition: TkMuon.h:49
l1t::TkMuon::quality_
unsigned int quality_
Definition: TkMuon.h:78
edm::Ptr
Definition: AssociationVector.h:31
l1t::TkMuon::nTracksMatch_
int nTracksMatch_
Definition: TkMuon.h:75
Ref.h
l1t::TkMuon::setMuonDetector
void setMuonDetector(unsigned int detector)
Definition: TkMuon.h:63
LorentzVector
math::XYZTLorentzVector LorentzVector
Definition: HLTMuonMatchAndPlot.h:49
reco::LeafCandidate::p
double p() const final
magnitude of momentum vector
Definition: LeafCandidate.h:123
l1t::TkMuon::trackCurvature_
double trackCurvature_
Definition: TkMuon.h:76
RegionalMuonCand.h
l1t::TkMuon::dR_
float dR_
Definition: TkMuon.h:74
hgcalTestNeighbor_cfi.detector
detector
Definition: hgcalTestNeighbor_cfi.py:6
l1t::TkMuon::trkPtr_
edm::Ptr< L1TTTrackType > trkPtr_
Definition: TkMuon.h:70
RegionalMuonCandFwd.h
l1t::TkMuon::theIsolation
float theIsolation
Definition: TkMuon.h:72
l1t::TkMuon::dR
float dR() const
Definition: TkMuon.h:44
l1t::TkMuon::setPattern
void setPattern(unsigned int p)
Definition: TkMuon.h:58
l1t::TkMuon::muonDetector
unsigned int muonDetector() const
Definition: TkMuon.h:51
l1t::TkMuon::setTrkzVtx
void setTrkzVtx(float TrkzVtx)
Definition: TkMuon.h:55
l1t::TkMuon::emtfTrk
const edm::Ref< l1t::EMTFTrackCollection > & emtfTrk() const
Definition: TkMuon.h:39