CMS 3D CMS Logo

BaseTau.h
Go to the documentation of this file.
1 #ifndef DataFormats_TauReco_BaseTau_h
2 #define DataFormats_TauReco_BaseTau_h
3 
4 /* class BaseTau
5  * base class
6  * authors: Simone Gennai (simone.gennai@cern.ch), Ludovic Houchu (Ludovic.Houchu@cern.ch)
7  * created: Jun 21 2007,
8  * revised: Sep 4 2007
9  */
14 
15 #include <limits>
16 
17 
18 namespace reco {
19  class BaseTau : public RecoCandidate {
20  public:
21  BaseTau();
22  BaseTau(Charge q,const LorentzVector &,const Point & = Point(0,0,0));
23  ~BaseTau() override{}
24  BaseTau* clone()const override;
25 
26  // rec. jet Lorentz-vector combining (Tracks and neutral ECAL Island BasicClusters) or (charged hadr. PFCandidates and gamma PFCandidates)
29 
30  // leading Track
31  virtual reco::TrackRef leadTrack() const;
32  void setleadTrack(const TrackRef&);
33 
34  // Tracks which passed quality cuts and are inside a tracker signal cone around leading Track
35  virtual const reco::TrackRefVector& signalTracks() const;
36  void setsignalTracks(const TrackRefVector&);
37 
38  // Tracks which passed quality cuts and are inside a tracker isolation annulus around leading Track
39  virtual const reco::TrackRefVector& isolationTracks() const;
40  void setisolationTracks(const TrackRefVector&);
41  private:
42  // check overlap with another candidate
43  bool overlap(const Candidate&)const override;
47  };
48 }
49 #endif
virtual reco::TrackRef leadTrack() const
Definition: BaseTau.cc:26
int Charge
electric charge type
Definition: Candidate.h:35
void setisolationTracks(const TrackRefVector &)
Definition: BaseTau.cc:31
virtual const reco::TrackRefVector & isolationTracks() const
Definition: BaseTau.cc:30
bool overlap(const Candidate &) const override
check overlap with another candidate
Definition: BaseTau.cc:33
void setleadTrack(const TrackRef &)
Definition: BaseTau.cc:27
math::XYZTLorentzVector alternatLorentzVect() const
Definition: BaseTau.cc:23
math::XYZTLorentzVector alternatLorentzVect_
Definition: BaseTau.h:44
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
BaseTau * clone() const override
returns a clone of the Candidate object
Definition: BaseTau.cc:21
void setsignalTracks(const TrackRefVector &)
Definition: BaseTau.cc:29
reco::TrackRefVector isolationTracks_
Definition: BaseTau.h:46
void setalternatLorentzVect(const math::XYZTLorentzVector &)
Definition: BaseTau.cc:24
virtual const reco::TrackRefVector & signalTracks() const
Definition: BaseTau.cc:28
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:37
fixed size matrix
math::XYZPoint Point
point in the space
Definition: Candidate.h:41
~BaseTau() override
Definition: BaseTau.h:23
reco::TrackRef leadTrack_
Definition: BaseTau.h:45
reco::TrackRefVector signalTracks_
Definition: BaseTau.h:46
math::XYZPoint Point
point in the space
Definition: LeafCandidate.h:27