LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
ParticleHistory.h
Go to the documentation of this file.
1 
13 
17 
25 
30 
39 
45 
49 
52 
55 
59 
61 
63 
69 
74 
78 
83 
84 
85 #ifndef SIM_PARTICLEHISTORY_H
86 #define SIM_PARTICLEHISTORY_H
87 
89 
90 #include <deque>
91 #include <iostream>
92 
93 namespace sim {
94 
95  // Forward declaration
96  class ParticleList;
97 
98  class ParticleHistory : public std::deque< const simb::MCParticle* >
99  {
100  public:
101 
102  // Constructor and destructor
103  ParticleHistory( const sim::ParticleList* list, const int trackID );
104  virtual ~ParticleHistory();
105 
106  // For which particle was this history generated?
107  int EndParticleID() const { return m_trackID; }
108 
109  // With which ParticleList is this history associated?
110  const sim::ParticleList* ParticleList() const { return m_particleList; }
111 
112  friend std::ostream& operator<< ( std::ostream& output, const ParticleHistory& );
113 
114  private:
116  int m_trackID;
117  };
118 
119 } // namespace sim
120 
121 #endif // SIM_PARTICLEHISTORY_H
const sim::ParticleList * m_particleList
int EndParticleID() const
Particle class.
int m_trackID
The ParticleList associated with this chain.
Monte Carlo Simulation.
ParticleHistory(const sim::ParticleList *list, const int trackID)
friend std::ostream & operator<<(std::ostream &output, const ParticleHistory &)
const sim::ParticleList * ParticleList() const