CMS 3D CMS Logo

TkTriplet.h
Go to the documentation of this file.
1 #ifndef DataFormatsL1TCorrelator_TkTriplet_h
2 #define DataFormatsL1TCorrelator_TkTriplet_h
3 
4 // Original author: G Karathanasis,
5 // georgios.karathanasis@cern.ch, CU Boulder
6 // -*- C++ -*-
7 // Package: L1Trigger
8 // Class : TkTriplet
9 // Description: Class to store the output of track-triplet producer, which used by L1T to create X->3h candidates (like W->3pi).
10 
13 
15 #include <vector>
16 
17 namespace l1t {
18 
19  class TkTriplet : public L1Candidate {
20  public:
22  typedef std::vector<L1TTTrackType> L1TTTrackCollection;
23 
24  TkTriplet();
25 
26  TkTriplet(const LorentzVector& p4, int charge);
27  TkTriplet(const LorentzVector& p4,
28  int charge,
29  double pair_mass_max,
30  double pair_mass_min,
31  double pair_dz_max,
32  double pair_dz_min,
34 
35  ~TkTriplet() override {}
36 
37  int getTripletCharge() const { return charge_; }
38  double getPairMassMax() const { return pair_mass_max_; }
39  double getPairMassMin() const { return pair_mass_min_; }
40  double getPairDzMax() const { return pair_dz_max_; }
41  double getPairDzMin() const { return pair_dz_min_; }
42  const edm::Ptr<L1TTTrackType>& trkPtr(size_t i) const { return trkPtrList_.at(i); }
43  int bx() const;
44 
45  private:
46  int charge_;
49  double pair_dz_max_;
50  double pair_dz_min_;
51  std::vector<edm::Ptr<L1TTTrackType>> trkPtrList_;
52  };
53 } // namespace l1t
54 
55 #endif
TTTrack< Ref_Phase2TrackerDigi_ > L1TTTrackType
Definition: TkTriplet.h:21
double getPairDzMin() const
Definition: TkTriplet.h:41
std::vector< L1TTTrackType > L1TTTrackCollection
Definition: TkTriplet.h:22
double pair_dz_min_
Definition: TkTriplet.h:50
std::vector< edm::Ptr< L1TTTrackType > > trkPtrList_
Definition: TkTriplet.h:51
delete x;
Definition: CaloConfig.h:22
const LorentzVector & p4() const final
four-momentum Lorentz vector
double getPairDzMax() const
Definition: TkTriplet.h:40
const edm::Ptr< L1TTTrackType > & trkPtr(size_t i) const
Definition: TkTriplet.h:42
double pair_dz_max_
Definition: TkTriplet.h:49
int getTripletCharge() const
Definition: TkTriplet.h:37
Class to store the L1 Track Trigger tracks.
Definition: TTTrack.h:29
double pair_mass_max_
Definition: TkTriplet.h:47
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:36
double getPairMassMax() const
Definition: TkTriplet.h:38
double pair_mass_min_
Definition: TkTriplet.h:48
~TkTriplet() override
Definition: TkTriplet.h:35
double getPairMassMin() const
Definition: TkTriplet.h:39
int bx() const
Definition: TkTriplet.cc:33
int charge() const final
electric charge