|
| Stack (Int_t size=100) |
|
| ~Stack () override |
| Default destructor.
|
|
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) override |
|
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, Int_t secondParentId) override |
|
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, Int_t secondParentId, Int_t daughter1Id, Int_t daughter2Id, TMCProcess proc2) |
|
void | PushTrack (Int_t toBeDone, TParticle &) |
|
TParticle * | PopNextTrack (Int_t &iTrack) override |
|
TParticle * | PopPrimaryForTracking (Int_t iPrim) override |
|
void | SetCurrentTrack (Int_t iTrack) override |
|
Int_t | GetNtrack () const override |
|
Int_t | GetNprimary () const override |
|
TParticle * | GetCurrentTrack () const override |
|
Int_t | GetCurrentTrackNumber () const override |
|
Int_t | GetCurrentParentTrackNumber () const override |
|
TMCProcess | GetProdProcessOfCurrentTrack () const |
| Returns the production process of the current track.
|
|
void | FillTrackArray () override |
| Fill the MCTrack output array, applying filter criteria.
|
|
void | UpdateTrackIndex (TRefArray *detArray=nullptr) override |
| Update the track index in the MCTracks and data produced by detectors.
|
|
void | FinishPrimary () override |
| Finish primary.
|
|
void | Reset () override |
| Resets arrays and stack and deletes particles and tracks.
|
|
void | Register () override |
| Register the MCTrack array to the Root Manager.
|
|
virtual void | Print (Int_t iVerbose=0) const |
|
void | Print (Option_t *option=nullptr) const override |
|
void | ReorderKine (std::vector< MCTrack > &particles, std::vector< int > &reOrderedIndices) |
|
void | StoreSecondaries (Bool_t choice=kTRUE) |
| Modifiers.
|
|
void | pruneKinematics (bool choice=true) |
|
void | setMinHits (Int_t min) |
|
void | SetEnergyCut (Double_t eMin) |
|
void | StoreMothers (Bool_t choice=kTRUE) |
|
void | addHit (int iDet) |
|
TClonesArray * | GetListOfParticles () override |
|
std::vector< MCTrack > const *const | getMCTracks () const |
|
FairGenericStack * | CloneStack () const override |
| Clone for worker (used in MT mode only)
|
|
void | addTrackReference (const o2::TrackReference &p) |
|
const std::vector< TParticle > & | getPrimaries () const |
|
void | initFromPrimaries (std::vector< TParticle > &primaries) |
|
void | setExternalMode (bool m) |
|
int | getMotherTrackId (int) const |
| Allow to query the direct mother track ID of an arbitrary trackID managed by stack.
|
|
bool | isTrackDaughterOf (int, int) const |
|
bool | isCurrentTrackDaughterOf (int parentid) const |
|
int | getCurrentPrimaryIndex () const |
|
void | fillParentIDs (std::vector< int > &ids) const |
|
void | setMCEventStats (o2::dataformats::MCEventStats *header) |
|
void | updateEventStats () |
| update values in the current event header
|
|
bool | currentTrackLeftHit () const |
| returns if current track left a hit
|
|
bool | currentTrackLeftTrackRef () const |
| returns if current track left a TrackReference
|
|
void | setTrackSeedingMode (bool m) |
| set track seeding mode (tracks are seeded individually for increased reproducability)
|
|
This class handles the particle stack for the transport simulation. For the stack FILO functunality, it uses the STL stack. To store the tracks during transport, a TParticle array is used. At the end of the event, tracks satisfying the filter criteria are copied to a MCTrack array, which is stored in the output.
The filtering criteria for the output tracks are:
- primary tracks are stored in any case.
- secondary tracks are stored if they have a minimal number of hits (sum of all detectors) and a minimal energy, or are the
The storage of secondaries can be switched off. The storage of all mothers can be switched off. By default, the minimal number of hits is 1 and the energy cut is 0.
Definition at line 60 of file Stack.h.