CMS 3D CMS Logo

PFRecoTauChargedHadron.h
Go to the documentation of this file.
1 #ifndef DataFormats_TauReco_PFRecoTauChargedHadron_h
2 #define DataFormats_TauReco_PFRecoTauChargedHadron_h
3 
9 
10 namespace reco { namespace tau {
13  class RecoTauConstructor;
15 }}
17 
18 namespace reco {
19 
21 {
22  public:
24 
26  // Algorithm where each photon becomes a pi zero
27  kUndefined = 0,
28  kChargedPFCandidate = 1,
29  kTrack = 2,
30  kPFNeutralHadron = 3
31  };
32 
35 
36 
39 
42  const Point& vtx = Point( 0, 0, 0 ),
43  int status = 0, bool integerCharge = true,
45 
47  ~PFRecoTauChargedHadron() override;
48 
50  const PFCandidatePtr& getChargedPFCandidate() const;
51 
53  const TrackPtr& getTrack() const;
54 
56  const std::vector<PFCandidatePtr>& getNeutralPFCandidates() const;
57 
59  const math::XYZPointF& positionAtECALEntrance() const;
60 
63 
65  bool algoIs(PFRecoTauChargedHadronAlgorithm algo) const;
66 
67  void print(std::ostream& stream = std::cout) const;
68 
69  private:
74  friend class ::PFRecoTauChargedHadronProducer;
75 
77 
79  TrackPtr track_;
80  std::vector<PFCandidatePtr> neutralPFCandidates_;
81 
83 };
84 
85 std::ostream& operator<<(std::ostream& stream, const PFRecoTauChargedHadron& c);
86 
87 } // end namespace reco
88 
89 #endif
int Charge
electric charge type
Definition: Candidate.h:35
std::string print(const Track &, edm::Verbosity=edm::Concise)
Track print utility.
Definition: print.cc:10
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float > > XYZPointF
point in space with cartesian internal representation
Definition: Point3D.h:10
std::pair< double, double > Point
Definition: CaloEllipse.h:18
std::ostream & operator<<(std::ostream &, BeamSpot beam)
Definition: BeamSpot.cc:71
double p4[4]
Definition: TauolaWrapper.h:92
PFRecoTauChargedHadronAlgorithm algo_
static const TrackGhostTrackState * getTrack(const BasicGhostTrackState *basic)
std::vector< PFCandidatePtr > neutralPFCandidates_
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:37
fixed size matrix
math::XYZPoint Point
point in the space
Definition: Candidate.h:41