CMS 3D CMS Logo

L1CaloTkTau.h
Go to the documentation of this file.
1 #ifndef DataFormatsL1TCorrelator_TkCaloTkTau_h
2 #define DataFormatsL1TCorrelator_TkCaloTkTau_h
3 
4 // -*- C++ -*-
5 //
6 // Package: L1Trigger
7 // Class : L1CaloTkTau
8 //
9 
12 
15 
18 
19 #include <vector>
20 
21 namespace l1t {
22 
23  class L1CaloTkTau;
24 
25  typedef std::vector<L1CaloTkTau> L1CaloTkTauCollection;
26 
29  typedef std::vector<L1CaloTkTauRef> L1CaloTkTauVectorRef;
30 
32  typedef std::vector<L1TTTrackType> L1TTTrackCollection;
34  typedef std::vector<L1TTTrackRefPtr> L1TTTrackRefPtr_Collection;
35 
36  class L1CaloTkTau : public L1Candidate {
37  public:
38  L1CaloTkTau();
39 
40  L1CaloTkTau(const LorentzVector& p4, // caloTau calibrated p4
41  const LorentzVector& tracksP4,
42  const std::vector<L1TTTrackRefPtr>& clustTracks,
43  Tau& caloTau,
44  float vtxIso = -999.);
45 
46  // ---------- const member functions ---------------------
47 
48  const L1TTTrackRefPtr seedTrk() const { return clustTracks_.at(0); }
49 
50  float vtxIso() const { return vtxIso_; }
51 
52  LorentzVector trackBasedP4() const { return tracksP4_; }
53 
54  float trackBasedEt() const { return tracksP4_.Et(); }
55 
56  Tau caloTau() const { return caloTau_; }
57 
58  // ---------- member functions ---------------------------
59 
60  void setVtxIso(float VtxIso) { vtxIso_ = VtxIso; }
61 
62  private:
64  std::vector<L1TTTrackRefPtr> clustTracks_;
66  float vtxIso_;
67  };
68 } // namespace l1t
69 
70 #endif
edm::Ptr< L1TTTrackType > L1TTTrackRefPtr
Definition: L1CaloTkTau.h:33
std::vector< L1TTTrackRefPtr > clustTracks_
Definition: L1CaloTkTau.h:64
LorentzVector tracksP4_
Definition: L1CaloTkTau.h:63
delete x;
Definition: CaloConfig.h:22
const LorentzVector & p4() const final
four-momentum Lorentz vector
float vtxIso() const
Definition: L1CaloTkTau.h:50
float trackBasedEt() const
Definition: L1CaloTkTau.h:54
std::vector< L1TTTrackType > L1TTTrackCollection
Definition: L1CaloTkTau.h:32
edm::RefVector< L1CaloTkTauCollection > L1CaloTkTauRefVector
Definition: L1CaloTkTau.h:28
std::vector< L1CaloTkTau > L1CaloTkTauCollection
Definition: L1CaloTkTau.h:23
edm::Ref< L1CaloTkTauCollection > L1CaloTkTauRef
Definition: L1CaloTkTau.h:27
LorentzVector trackBasedP4() const
Definition: L1CaloTkTau.h:52
Tau caloTau() const
Definition: L1CaloTkTau.h:56
Definition: Tau.py:1
std::vector< L1TTTrackRefPtr > L1TTTrackRefPtr_Collection
Definition: L1CaloTkTau.h:34
Class to store the L1 Track Trigger tracks.
Definition: TTTrack.h:29
TTTrack< Ref_Phase2TrackerDigi_ > L1TTTrackType
Definition: L1CaloTkTau.h:31
std::vector< L1CaloTkTauRef > L1CaloTkTauVectorRef
Definition: L1CaloTkTau.h:29
LorentzVector tracksP4(const Container &, const reco::JetBaseRef)
Get LorentzVector as sum of all tracks associated with jet.
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:36
void setVtxIso(float VtxIso)
Definition: L1CaloTkTau.h:60
const L1TTTrackRefPtr seedTrk() const
Definition: L1CaloTkTau.h:48