CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
L1Candidate.h
Go to the documentation of this file.
1 #ifndef L1Candidate_h
2 #define L1Candidate_h
3 
6 namespace l1t {
7 
8  class L1Candidate;
12  typedef std::vector<L1CandidateRef> L1CandidateVectorRef;
13 
14  // All L1 data formats which encode physically meaningful quantities inherit from Candidate
16  public:
17  L1Candidate();
18 
19  // construct from *both* physical and integer values
20  L1Candidate(const LorentzVector& p4, int pt = 0, int eta = 0, int phi = 0, int qual = 0, int iso = 0);
21 
22  L1Candidate(const PolarLorentzVector& p4, int pt = 0, int eta = 0, int phi = 0, int qual = 0, int iso = 0);
23 
24  ~L1Candidate() override;
25 
26  // methods to set integer values
27  // in general, these should not be needed
28  void setHwPt(int pt) { hwPt_ = pt; }
29  void setHwEta(int eta) { hwEta_ = eta; }
30  void setHwPhi(int phi) { hwPhi_ = phi; }
31  void setHwQual(int qual) { hwQual_ = qual; }
32  void setHwIso(int iso) { hwIso_ = iso; }
33 
34  // methods to retrieve integer values
35  int hwPt() const { return hwPt_; }
36  int hwEta() const { return hwEta_; }
37  int hwPhi() const { return hwPhi_; }
38  int hwQual() const { return hwQual_; }
39  int hwIso() const { return hwIso_; }
40 
41  virtual bool operator==(const l1t::L1Candidate& rhs) const;
42  virtual inline bool operator!=(const l1t::L1Candidate& rhs) const { return !(operator==(rhs)); };
43 
44  private:
45  // integer "hardware" values
46  int hwPt_;
47  int hwEta_;
48  int hwPhi_;
49  int hwQual_;
50  int hwIso_;
51  };
52 
53 }; // namespace l1t
54 
55 #endif
double pt() const final
transverse momentum
BXVector< L1Candidate > L1CandidateBxCollection
Definition: L1Candidate.h:8
void setHwQual(int qual)
Definition: L1Candidate.h:31
int hwPhi() const
Definition: L1Candidate.h:37
virtual bool operator==(const l1t::L1Candidate &rhs) const
Definition: L1Candidate.cc:14
const LorentzVector & p4() const final
four-momentum Lorentz vector
std::vector< L1CandidateRef > L1CandidateVectorRef
Definition: L1Candidate.h:12
int hwIso() const
Definition: L1Candidate.h:39
edm::RefVector< L1CandidateBxCollection > L1CandidateRefVector
Definition: L1Candidate.h:11
~L1Candidate() override
Definition: L1Candidate.cc:12
int hwEta() const
Definition: L1Candidate.h:36
int hwQual() const
Definition: L1Candidate.h:38
void setHwPhi(int phi)
Definition: L1Candidate.h:30
void setHwIso(int iso)
Definition: L1Candidate.h:32
int hwPt() const
Definition: L1Candidate.h:35
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:36
edm::Ref< L1CandidateBxCollection > L1CandidateRef
Definition: L1Candidate.h:10
void setHwPt(int pt)
Definition: L1Candidate.h:28
void setHwEta(int eta)
Definition: L1Candidate.h:29
virtual bool operator!=(const l1t::L1Candidate &rhs) const
Definition: L1Candidate.h:42
double phi() const final
momentum azimuthal angle
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
Definition: Candidate.h:38
double eta() const final
momentum pseudorapidity