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 
21  public:
22 
23  PFSimParticle();
24 
25  PFSimParticle(double charge, int pdgCode,
26  unsigned id, 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()
48  const {return rectrackId_;}
49  std::vector<unsigned> recHitContrib()
50  const {return recHitContrib_;}
51  std::vector<double> recHitContribFrac()
52  const {return recHitContribFrac_;}
53 
54  private:
55 
57  int pdgCode_;
58 
60  unsigned id_;
61 
63  int motherId_;
64 
66  std::vector<int> daughterIds_;
67 
68  unsigned rectrackId_;
69  std::vector<unsigned> recHitContrib_;
70  std::vector<double> recHitContribFrac_;
71 
72  };
73 
74  std::ostream& operator<<(std::ostream& out,
75  const PFSimParticle& track);
76 
77 
78 }
79 
80 #endif
const std::vector< int > & daughterIds() const
Definition: PFSimParticle.h:44
std::vector< int > daughterIds_
id of daughter particles (can be > 2 in hadron showers)
Definition: PFSimParticle.h:66
int pdgCode_
pdg code
Definition: PFSimParticle.h:57
unsigned rectrackId() const
Definition: PFSimParticle.h:47
int pdgCode() const
Definition: PFSimParticle.h:35
Base class for particle flow input reconstructed tracks and simulated particles.
Definition: PFTrack.h:63
std::ostream & operator<<(std::ostream &, BeamSpot beam)
Definition: BeamSpot.cc:71
unsigned id_
position in particle vector
Definition: PFSimParticle.h:60
int motherId_
id of mother particle. -1 if no mother
Definition: PFSimParticle.h:63
std::vector< double > recHitContribFrac() const
Definition: PFSimParticle.h:51
true particle for particle flow
Definition: PFSimParticle.h:19
std::vector< unsigned > recHitContrib_
Definition: PFSimParticle.h:69
unsigned id() const
Definition: PFSimParticle.h:38
int motherId() const
Definition: PFSimParticle.h:41
fixed size matrix
std::vector< double > recHitContribFrac_
Definition: PFSimParticle.h:70
std::vector< unsigned > recHitContrib() const
Definition: PFSimParticle.h:49
double charge() const
Definition: PFTrack.h:87