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