CMS 3D CMS Logo

PFSimParticle.h
Go to the documentation of this file.
1 #ifndef DataFormats_ParticleFlowReco_PFSimParticle_h
2 #define DataFormats_ParticleFlowReco_PFSimParticle_h
3 
5 
6 #include <iostream>
7 
8 namespace reco {
9 
19  class PFSimParticle : public PFTrack {
20  public:
21  PFSimParticle();
22 
23  PFSimParticle(double charge,
24  int pdgCode,
25  unsigned id,
26  int motherId,
27  const std::vector<int>& daughterIds,
28  unsigned rectrackId,
29  const std::vector<unsigned>& recHitContrib,
30  const std::vector<double>& recHitContribFrac);
31 
33 
35  int pdgCode() const { return pdgCode_; }
36 
38  unsigned id() const { return id_; }
39 
41  int motherId() const { return motherId_; }
42 
44  const std::vector<int>& daughterIds() const { return daughterIds_; }
45 
46  //accessing MCTruth Matching Info
47  unsigned rectrackId() const { return rectrackId_; }
48  std::vector<unsigned> recHitContrib() const { return recHitContrib_; }
49  std::vector<double> recHitContribFrac() const { return recHitContribFrac_; }
50 
51  private:
53  int pdgCode_;
54 
56  unsigned id_;
57 
59  int motherId_;
60 
62  std::vector<int> daughterIds_;
63 
64  unsigned rectrackId_;
65  std::vector<unsigned> recHitContrib_;
66  std::vector<double> recHitContribFrac_;
67  };
68 
69  std::ostream& operator<<(std::ostream& out, const PFSimParticle& track);
70 
71 } // namespace reco
72 
73 #endif
int pdgCode() const
Definition: PFSimParticle.h:35
std::vector< int > daughterIds_
id of daughter particles (can be > 2 in hadron showers)
Definition: PFSimParticle.h:62
int pdgCode_
pdg code
Definition: PFSimParticle.h:53
unsigned rectrackId() const
Definition: PFSimParticle.h:47
Base class for particle flow input reconstructed tracks and simulated particles.
Definition: PFTrack.h:63
double charge() const
Definition: PFTrack.h:81
std::ostream & operator<<(std::ostream &, BeamSpot beam)
Definition: BeamSpot.cc:66
unsigned id_
position in particle vector
Definition: PFSimParticle.h:56
unsigned id() const
Definition: PFSimParticle.h:38
int motherId_
id of mother particle. -1 if no mother
Definition: PFSimParticle.h:59
true particle for particle flow
Definition: PFSimParticle.h:19
std::vector< unsigned > recHitContrib() const
Definition: PFSimParticle.h:48
std::vector< unsigned > recHitContrib_
Definition: PFSimParticle.h:65
int motherId() const
Definition: PFSimParticle.h:41
const std::vector< int > & daughterIds() const
Definition: PFSimParticle.h:44
fixed size matrix
std::vector< double > recHitContribFrac_
Definition: PFSimParticle.h:66
std::vector< double > recHitContribFrac() const
Definition: PFSimParticle.h:49