32 #include "FairGenericStack.h" 34 #include "TClonesArray.h" 35 #include "TVirtualMCStack.h" 68 virtual void PushTrack(Int_t toBeDone, Int_t parentID, Int_t pdgCode, Double_t px, Double_t py, Double_t
pz, Double_t e, Double_t vx, Double_t vy, Double_t vz, Double_t time,
69 Double_t polx, Double_t poly, Double_t polz, TMCProcess proc, Int_t &ntr, Double_t weight, Int_t is);
71 virtual void PushTrack(Int_t toBeDone, Int_t parentID, Int_t pdgCode, Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vx, Double_t vy, Double_t vz, Double_t time,
72 Double_t polx, Double_t poly, Double_t polz, TMCProcess proc, Int_t &ntr, Double_t weight, Int_t is, Int_t secondParentId);
97 virtual Int_t
GetNtrack()
const {
return fNParticles; }
129 virtual void Reset();
137 virtual void Print(Int_t iVerbose = 0)
const;
163 std::stack<TParticle *> fStack;
168 TClonesArray *fParticles;
171 TClonesArray *fTracks;
174 std::map<Int_t, Bool_t> fStoreMap;
175 std::map<Int_t, Bool_t>::iterator fStoreIter;
178 std::map<Int_t, Int_t> fIndexMap;
179 std::map<Int_t, Int_t>::iterator fIndexIter;
182 std::map<std::pair<Int_t, Int_t>, Int_t> fPointsMap;
192 Bool_t fStoreSecondaries;
194 Double32_t fEnergyCut;
195 Bool_t fStoreMothers;
200 void SetGeneratorFlags(Int_t myid);
void StoreMothers(Bool_t choice=kTRUE)
virtual void FillTrackArray()
#define choice(c1, c2, c3)
TClonesArray * GetListOfParticles()
virtual void UpdateTrackIndex(TRefArray *detArray)
virtual TParticle * PopNextTrack(Int_t &iTrack)
void SetMinPoints(Int_t min)
void AddPoint(DetectorId iDet)
virtual void SetCurrentTrack(Int_t iTrack)
void SetEnergyCut(Double_t eMin)
virtual void AddParticle(TParticle *part)
virtual Int_t GetNprimary() const
virtual Int_t GetCurrentTrackNumber() const
friend F32vec4 min(const F32vec4 &a, const F32vec4 &b)
void SetPersistence(Bool_t choice)
virtual TParticle * PopPrimaryForTracking(Int_t iPrim)
virtual Int_t GetNtrack() const
virtual void PushTrack(Int_t toBeDone, Int_t parentID, Int_t pdgCode, Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vx, Double_t vy, Double_t vz, Double_t time, Double_t polx, Double_t poly, Double_t polz, TMCProcess proc, Int_t &ntr, Double_t weight, Int_t is)
TParticle * GetParticle(Int_t trackId) const
virtual TParticle * GetCurrentTrack() const
void StoreSecondaries(Bool_t choice=kTRUE)
virtual Int_t GetCurrentParentTrackNumber() const
virtual void Print(Int_t iVerbose=0) const