CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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  virtual bool operator==(const l1t::Tau& rhs) const;
49  virtual inline bool operator!=(const l1t::Tau& rhs) const { return !(operator==(rhs)); };
50 
51  private:
52  // additional hardware quantities common to L1 global tau
53  void clear_extended();
54  short int towerIEta_;
55  short int towerIPhi_;
56  short int rawEt_;
57  short int isoEt_;
58  short int nTT_;
59  bool hasEM_;
60  bool isMerged_;
61  };
62 
63 } // namespace l1t
64 
65 #endif
~Tau() override
bool hasEM() const
double pt() const final
transverse momentum
short int isoEt_
Definition: Tau.h:57
void setHasEM(bool hasEM)
Definition: Tau.h:20
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
Definition: LeafCandidate.h:25
virtual bool operator!=(const l1t::Tau &rhs) const
Definition: Tau.h:49
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:58
short int towerIEta_
Definition: Tau.h:54
BXVector< Tau > TauBxCollection
Definition: Tau.h:10
const LorentzVector & p4() const final
four-momentum Lorentz vector
ObjectRefPairBxCollection< Tau > TauRefPairBxCollection
Definition: Tau.h:18
short int towerIPhi_
Definition: Tau.h:55
ObjectRefBxCollection< Tau > TauRefBxCollection
Definition: Tau.h:16
bool isMerged_
Definition: Tau.h:60
bool isMerged() const
void clear_extended()
edm::Ref< TauBxCollection > TauRef
Definition: Tau.h:12
virtual bool operator==(const l1t::Tau &rhs) const
std::vector< TauRef > TauVectorRef
Definition: Tau.h:14
math::XYZTLorentzVector LorentzVector
short int rawEt_
Definition: Tau.h:56
std::pair< edm::Ref< BXVector< T >>, edm::Ref< BXVector< T >>> ObjectRefPair
short int towerIEta() const
short int rawEt() const
bool hasEM_
Definition: Tau.h:59
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
short int isoEt() const
short int towerIPhi() const
double phi() const final
momentum azimuthal angle
short int nTT() const
void setIsoEt(short int et)
void setTowerIPhi(short int iphi)
void setIsMerged(bool isMerged)
double eta() const final
momentum pseudorapidity