File indexing completed on 2024-04-06 12:04:38
0001 #ifndef L1Candidate_h
0002 #define L1Candidate_h
0003
0004 #include "DataFormats/Candidate/interface/LeafCandidate.h"
0005 #include "DataFormats/L1Trigger/interface/BXVector.h"
0006 namespace l1t {
0007
0008 class L1Candidate;
0009 typedef BXVector<L1Candidate> L1CandidateBxCollection;
0010 typedef edm::Ref<L1CandidateBxCollection> L1CandidateRef;
0011 typedef edm::RefVector<L1CandidateBxCollection> L1CandidateRefVector;
0012 typedef std::vector<L1CandidateRef> L1CandidateVectorRef;
0013
0014
0015 class L1Candidate : public reco::LeafCandidate {
0016 public:
0017 L1Candidate();
0018
0019
0020 L1Candidate(const LorentzVector& p4, int pt = 0, int eta = 0, int phi = 0, int qual = 0, int iso = 0);
0021
0022 L1Candidate(const PolarLorentzVector& p4, int pt = 0, int eta = 0, int phi = 0, int qual = 0, int iso = 0);
0023
0024 ~L1Candidate() override;
0025
0026
0027
0028 void setHwPt(int pt) { hwPt_ = pt; }
0029 void setHwEta(int eta) { hwEta_ = eta; }
0030 void setHwPhi(int phi) { hwPhi_ = phi; }
0031 void setHwQual(int qual) { hwQual_ = qual; }
0032 void setHwIso(int iso) { hwIso_ = iso; }
0033
0034
0035 int hwPt() const { return hwPt_; }
0036 int hwEta() const { return hwEta_; }
0037 int hwPhi() const { return hwPhi_; }
0038 int hwQual() const { return hwQual_; }
0039 int hwIso() const { return hwIso_; }
0040
0041 virtual bool operator==(const l1t::L1Candidate& rhs) const;
0042 virtual inline bool operator!=(const l1t::L1Candidate& rhs) const { return !(operator==(rhs)); };
0043
0044 private:
0045
0046 int hwPt_;
0047 int hwEta_;
0048 int hwPhi_;
0049 int hwQual_;
0050 int hwIso_;
0051 };
0052
0053 };
0054
0055 #endif