FairRoot
|
#include <FairGenericStack.h>
Public Member Functions | |
FairGenericStack () | |
FairGenericStack (Int_t size) | |
virtual | ~FairGenericStack () |
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, Int_t secondparentID)=0 |
virtual void | FillTrackArray () |
virtual void | UpdateTrackIndex (TRefArray *) |
void | SetDetArrayList (TRefArray *detArray) |
virtual void | FinishPrimary () |
virtual void | Reset () |
virtual void | Register () |
virtual TClonesArray * | GetListOfParticles () |
virtual void | SetParticleArray (__attribute__((unused)) TClonesArray *partArray) |
virtual void | SetParticleArray (__attribute__((unused)) TClonesArray *partArray, __attribute__((unused)) Int_t partFrom, __attribute__((unused)) Int_t partTo) |
virtual FairGenericStack * | CloneStack () const |
virtual void | FastSimMoveParticleTo (Double_t xx, Double_t yy, Double_t zz, Double_t tt, Double_t px, Double_t py, Double_t pz, Double_t en) |
virtual void | FastSimStopParticle () |
virtual void | FastSimPushSecondary (Int_t parentID, Int_t pdgCode, Double_t xx, Double_t yy, Double_t zz, Double_t tt, Double_t px, Double_t py, Double_t pz, Double_t en, Double_t polx, Double_t poly, Double_t polz, TMCProcess proc, Double_t weight, Int_t is) |
virtual std::tuple< Int_t, Int_t, Int_t > | FastSimGetMovedIndex () |
virtual void | FastSimClearMovedIndex () |
template<typename T > | |
void | FastSimUpdateTrackIndex (T *point, Int_t &iTrack) |
Protected Member Functions | |
FairGenericStack (const FairGenericStack &) | |
FairGenericStack & | operator= (const FairGenericStack &) |
ClassDef (FairGenericStack, 1) | |
Protected Attributes | |
FairLogger * | fLogger |
TRefArray * | fDetList |
TIterator * | fDetIter |
Int_t | fVerbose |
std::map< Int_t, Int_t > | fFSTrackMap |
std::map< Int_t, Int_t >::iterator | fFSTrackIter |
Int_t | fFSMovedIndex |
Int_t | fFSFirstSecondary |
Int_t | fFSNofSecondaries |
Definition at line 33 of file FairGenericStack.h.
FairGenericStack::FairGenericStack | ( | ) |
Default constructor
Definition at line 24 of file FairGenericStack.cxx.
FairGenericStack::FairGenericStack | ( | Int_t | size | ) |
Destructor with estimated array size
Definition at line 38 of file FairGenericStack.cxx.
|
virtual |
Destructor
Definition at line 51 of file FairGenericStack.cxx.
|
protected |
Copy constructor
Definition at line 53 of file FairGenericStack.cxx.
|
protected |
|
virtual |
Clone this object (used in MT mode only)
Reimplemented in FairStack, MyProjStack, and MyProjStack.
Definition at line 87 of file FairGenericStack.cxx.
|
inlinevirtual |
Definition at line 156 of file FairGenericStack.h.
|
inlinevirtual |
Allow FairFastSim the retrieval of moved particle position, p1 and p2 to get secondaries
Definition at line 152 of file FairGenericStack.h.
|
virtual |
Fast simulation function to move particle to different position. In Geant3 it stops the current trajectory, and starts it again in the position given by the user. In Geant4 the FastSimulationModel with take over. Later, the points are reindexed and the thus created tracks are not stored in the output.
xx,yy,zz | new position of the particle |
tt | new proper time of the particle |
px,py,pz | new momentum of the particle |
en | new energy of the particle |
Definition at line 93 of file FairGenericStack.cxx.
|
virtual |
Fast simulation function to generate secondaries.
xx,yy,zz | position of the particle |
tt | proper time of the particle |
px,py,pz | momentum of the particle |
en | energy of the particle |
Definition at line 150 of file FairGenericStack.cxx.
|
virtual |
Fast simulation function to stop original particle.
Definition at line 142 of file FairGenericStack.cxx.
void FairGenericStack::FastSimUpdateTrackIndex | ( | T * | point, |
Int_t & | iTrack | ||
) |
Definition at line 195 of file FairGenericStack.h.
|
inlinevirtual |
Fill the MCTrack output array, applying filter criteria
Reimplemented in FairStack, MyProjStack, and MyProjStack.
Definition at line 83 of file FairGenericStack.h.
|
inlinevirtual |
Allow a stack to perform a clean-up after a primary particle is finished
Definition at line 92 of file FairGenericStack.h.
|
inlinevirtual |
Reimplemented in FairStack, MyProjStack, and MyProjStack.
Definition at line 100 of file FairGenericStack.h.
|
protected |
Assignment operator
Definition at line 61 of file FairGenericStack.cxx.
|
pure virtual |
Virtual method PushTrack. Add a TParticle to the stack. This function has an extra argument wrt to the function defined in the base class.
toBeDone | Flag for tracking |
parentID | Index of mother particle |
pdgCode | Particle type (PDG encoding) |
px,py,pz | Momentum components at start vertex [GeV] |
e | Total energy at start vertex [GeV] |
vx,vy,vz | Coordinates of start vertex [cm] |
time | Start time of track [s] |
polx,poly,polz | Polarisation vector |
proc | Production mechanism (VMC encoding) |
ntr | Track number (filled by the stack) |
weight | Particle weight |
is | Generation status code (whatever that means) |
secondparentID | used fot the index of mother of primery in the list |
Implemented in FairStack, MyProjStack, and MyProjStack.
|
inlinevirtual |
Register the MCTrack array to the Root Manager
Reimplemented in FairStack, MyProjStack, and MyProjStack.
Definition at line 98 of file FairGenericStack.h.
|
inlinevirtual |
Resets arrays and stack and deletes particles and tracks
Reimplemented in FairStack, MyProjStack, and MyProjStack.
Definition at line 95 of file FairGenericStack.h.
void FairGenericStack::SetDetArrayList | ( | TRefArray * | detArray | ) |
Set the list of detectors to be used for filltering the stack
Definition at line 79 of file FairGenericStack.cxx.
|
inlinevirtual |
Definition at line 101 of file FairGenericStack.h.
|
inlinevirtual |
Definition at line 102 of file FairGenericStack.h.
|
inlinevirtual |
Update the track index in the MCTracks and MCPoints
Reimplemented in FairStack, MyProjStack, and MyProjStack.
Definition at line 86 of file FairGenericStack.h.
|
protected |
Iterator for the detector list
Definition at line 179 of file FairGenericStack.h.
|
protected |
List of detectors registering hits in the simulation
Definition at line 176 of file FairGenericStack.h.
|
protected |
Definition at line 188 of file FairGenericStack.h.
|
protected |
Definition at line 187 of file FairGenericStack.h.
|
protected |
Definition at line 189 of file FairGenericStack.h.
|
protected |
Definition at line 186 of file FairGenericStack.h.
|
protected |
FastSimulation: STL map from new track index to original track index
Definition at line 185 of file FairGenericStack.h.
|
protected |
Fair Logger
Definition at line 173 of file FairGenericStack.h.
|
protected |
Verbosity level
Definition at line 182 of file FairGenericStack.h.