CMS 3D CMS Logo

Tau.h
Go to the documentation of this file.
1 #ifndef DataFormats_L1Trigger_Tau_h
2 #define DataFormats_L1Trigger_Tau_h
3 
7 
8 namespace l1t {
9 
10  class Tau;
14  typedef std::vector<TauRef> TauVectorRef;
15 
19 
20  class Tau : public L1Candidate {
21  public:
23 
24  // ctor from base allowed, but note that extended variables will be set to zero:
25  Tau(const L1Candidate& rhs) : L1Candidate(rhs) { clear_extended(); }
26 
27  Tau(const LorentzVector& p4, int pt = 0, int eta = 0, int phi = 0, int qual = 0, int iso = 0);
28  Tau(const PolarLorentzVector& p4, int pt = 0, int eta = 0, int phi = 0, int qual = 0, int iso = 0);
29 
30  ~Tau() override;
31 
32  void setTowerIEta(short int ieta); // ieta of seed tower
33  void setTowerIPhi(short int iphi); // iphi of seed tower
34  void setRawEt(short int et); // raw (uncalibrated) cluster sum
35  void setIsoEt(short int et); // raw isolation sum - cluster sum
36  void setNTT(short int ntt); // n towers above threshold
37  void setHasEM(bool hasEM);
38  void setIsMerged(bool isMerged);
39 
40  short int towerIEta() const;
41  short int towerIPhi() const;
42  short int rawEt() const;
43  short int isoEt() const;
44  short int nTT() const;
45  bool hasEM() const;
46  bool isMerged() const;
47 
48  bool operator==(const l1t::Tau& rhs) const;
49  inline bool operator!=(const l1t::Tau& rhs) const { return !(operator==(rhs)); };
50 
51  private:
52  using L1Candidate::operator==;
53  using L1Candidate::operator!=;
54  // additional hardware quantities common to L1 global tau
55  void clear_extended();
56  short int towerIEta_;
57  short int towerIPhi_;
58  short int rawEt_;
59  short int isoEt_;
60  short int nTT_;
61  bool hasEM_;
62  bool isMerged_;
63  };
64 
65 } // namespace l1t
66 
67 #endif
~Tau() override
bool hasEM() const
double pt() const final
transverse momentum
short int isoEt_
Definition: Tau.h:59
void setHasEM(bool hasEM)
Definition: Tau.h:20
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
Definition: LeafCandidate.h:25
void setRawEt(short int et)
ObjectRefPair< Tau > TauRefPair
Definition: Tau.h:17
Tau(const L1Candidate &rhs)
Definition: Tau.h:25
short int nTT_
Definition: Tau.h:60
delete x;
Definition: CaloConfig.h:22
short int towerIEta_
Definition: Tau.h:56
BXVector< Tau > TauBxCollection
Definition: Tau.h:10
std::pair< edm::Ref< BXVector< T > >, edm::Ref< BXVector< T > >> ObjectRefPair
const LorentzVector & p4() const final
four-momentum Lorentz vector
short int rawEt() const
ObjectRefPairBxCollection< Tau > TauRefPairBxCollection
Definition: Tau.h:18
short int towerIPhi_
Definition: Tau.h:57
short int towerIEta() const
ObjectRefBxCollection< Tau > TauRefBxCollection
Definition: Tau.h:16
short int isoEt() const
bool isMerged_
Definition: Tau.h:62
void clear_extended()
short int towerIPhi() const
bool isMerged() const
edm::Ref< TauBxCollection > TauRef
Definition: Tau.h:12
std::vector< TauRef > TauVectorRef
Definition: Tau.h:14
math::XYZTLorentzVector LorentzVector
short int rawEt_
Definition: Tau.h:58
Definition: Tau.py:1
bool hasEM_
Definition: Tau.h:61
short int nTT() const
bool operator!=(const l1t::Tau &rhs) const
Definition: Tau.h:49
void setNTT(short int ntt)
edm::RefVector< TauBxCollection > TauRefVector
Definition: Tau.h:13
Tau()
Definition: Tau.h:22
void setTowerIEta(short int ieta)
double et() const final
transverse energy
bool operator==(const l1t::Tau &rhs) const
double phi() const final
momentum azimuthal angle
void setIsoEt(short int et)
void setTowerIPhi(short int iphi)
void setIsMerged(bool isMerged)
double eta() const final
momentum pseudorapidity