CMS 3D CMS Logo

TkMuon.h
Go to the documentation of this file.
1 #ifndef DataFormatsL1TCorrelator_TkMuon_h
2 #define DataFormatsL1TCorrelator_TkMuon_h
3 
10 
11 namespace l1t {
12  class TkMuon : public L1Candidate {
13  public:
15  typedef std::vector<L1TTTrackType> L1TTTrackCollection;
16 
17  TkMuon() : theIsolation(-999.), TrkzVtx_(999.), quality_(999), pattern_(0) {}
18 
19  TkMuon(const LorentzVector& p4,
22  float tkisol = -999.);
23 
24  //One more constructor for Tracker+ Stubs algorithm not requiring the Muon candidate
25  TkMuon(const LorentzVector& p4, const edm::Ptr<L1TTTrackType>& trkPtr, float tkisol = -999.);
26 
28  TkMuon(const L1Candidate& cand) : L1Candidate(cand), theIsolation(-999.), TrkzVtx_(999.), quality_(999) {}
29 
30  const edm::Ptr<L1TTTrackType>& trkPtr() const { return trkPtr_; }
31 
33 
34  float trkIsol() const { return theIsolation; }
35  float trkzVtx() const { return TrkzVtx_; }
36 
37  float dR() const { return dR_; }
38  int nTracksMatched() const { return nTracksMatch_; }
39  double trackCurvature() const { return trackCurvature_; }
40 
41  unsigned int quality() const { return quality_; }
42  unsigned int pattern() const { return pattern_; }
43 
44  unsigned int muonDetector() const { return muonDetector_; }
45 
47 
48  void setTrkzVtx(float TrkzVtx) { TrkzVtx_ = TrkzVtx; }
49  void setTrkIsol(float TrkIsol) { theIsolation = TrkIsol; }
50  void setQuality(unsigned int q) { quality_ = q; }
51  void setPattern(unsigned int p) { pattern_ = p; }
52 
53  void setdR(float dR) { dR_ = dR; }
54  void setNTracksMatched(int nTracksMatch) { nTracksMatch_ = nTracksMatch; }
55  void setTrackCurvature(double trackCurvature) { trackCurvature_ = trackCurvature; } // this is signed
56  void setMuonDetector(unsigned int detector) { muonDetector_ = detector; }
57 
58  private:
59  // used for the Naive producer
61 
63 
64  float theIsolation;
65  float TrkzVtx_;
66  float dR_;
69 
70  unsigned int quality_;
71  unsigned int pattern_;
72 
74  };
75 } // namespace l1t
76 
77 #endif
l1t::TkMuon::pattern_
unsigned int pattern_
Definition: TkMuon.h:71
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:28
l1t::TkMuon::L1TTTrackType
TTTrack< Ref_Phase2TrackerDigi_ > L1TTTrackType
Definition: TkMuon.h:14
l1t::TkMuon::setTrkIsol
void setTrkIsol(float TrkIsol)
Definition: TkMuon.h:49
TTTypes.h
l1t::TkMuon::TkMuon
TkMuon()
Definition: TkMuon.h:17
l1t::TkMuon::setTrackCurvature
void setTrackCurvature(double trackCurvature)
Definition: TkMuon.h:55
data-class-funcs.q
q
Definition: data-class-funcs.py:169
TTTrack
Class to store the L1 Track Trigger tracks.
Definition: TTTrack.h:26
l1t::TkMuon::setNTracksMatched
void setNTracksMatched(int nTracksMatch)
Definition: TkMuon.h:54
l1t::TkMuon::nTracksMatched
int nTracksMatched() const
Definition: TkMuon.h:38
edm::Ref
Definition: AssociativeIterator.h:58
l1t::TkMuon::trkzVtx
float trkzVtx() const
Definition: TkMuon.h:35
l1t::TkMuon::setTrkPtr
void setTrkPtr(const edm::Ptr< L1TTTrackType > &p)
Definition: TkMuon.h:46
l1t::TkMuon::trackCurvature
double trackCurvature() const
Definition: TkMuon.h:39
l1t::TkMuon::TrkzVtx_
float TrkzVtx_
Definition: TkMuon.h:65
l1t::L1Candidate
Definition: L1Candidate.h:15
l1t::TkMuon::trkIsol
float trkIsol() const
Definition: TkMuon.h:34
l1t::TkMuon::quality
unsigned int quality() const
Definition: TkMuon.h:41
l1t::TkMuon::muonDetector_
int muonDetector_
Definition: TkMuon.h:73
l1t::TkMuon::trkPtr
const edm::Ptr< L1TTTrackType > & trkPtr() const
Definition: TkMuon.h:30
l1t::TkMuon::muRef_
edm::Ref< l1t::RegionalMuonCandBxCollection > muRef_
Definition: TkMuon.h:60
l1t::TkMuon::setdR
void setdR(float dR)
Definition: TkMuon.h:53
l1t
delete x;
Definition: CaloConfig.h:22
l1t::TkMuon::L1TTTrackCollection
std::vector< L1TTTrackType > L1TTTrackCollection
Definition: TkMuon.h:15
l1t::TkMuon::setQuality
void setQuality(unsigned int q)
Definition: TkMuon.h:50
cand
Definition: decayParser.h:34
Ptr.h
reco::LeafCandidate::p4
const LorentzVector & p4() const final
four-momentum Lorentz vector
Definition: LeafCandidate.h:114
l1t::TkMuon::muRef
const edm::Ref< l1t::RegionalMuonCandBxCollection > & muRef() const
Definition: TkMuon.h:32
L1Candidate.h
l1t::TkMuon
Definition: TkMuon.h:12
l1t::TkMuon::pattern
unsigned int pattern() const
Definition: TkMuon.h:42
l1t::TkMuon::quality_
unsigned int quality_
Definition: TkMuon.h:70
edm::Ptr
Definition: AssociationVector.h:31
l1t::TkMuon::nTracksMatch_
int nTracksMatch_
Definition: TkMuon.h:67
Ref.h
l1t::TkMuon::setMuonDetector
void setMuonDetector(unsigned int detector)
Definition: TkMuon.h:56
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:68
RegionalMuonCand.h
l1t::TkMuon::dR_
float dR_
Definition: TkMuon.h:66
hgcalTestNeighbor_cfi.detector
detector
Definition: hgcalTestNeighbor_cfi.py:6
l1t::TkMuon::trkPtr_
edm::Ptr< L1TTTrackType > trkPtr_
Definition: TkMuon.h:62
RegionalMuonCandFwd.h
l1t::TkMuon::theIsolation
float theIsolation
Definition: TkMuon.h:64
l1t::TkMuon::dR
float dR() const
Definition: TkMuon.h:37
l1t::TkMuon::setPattern
void setPattern(unsigned int p)
Definition: TkMuon.h:51
l1t::TkMuon::muonDetector
unsigned int muonDetector() const
Definition: TkMuon.h:44
l1t::TkMuon::setTrkzVtx
void setTrkzVtx(float TrkzVtx)
Definition: TkMuon.h:48