13 #ifndef ROOT_TVirtualMCApplication 14 #define ROOT_TVirtualMCApplication 118 #if !defined(__CINT__) 129 b[0] = 0; b[1] = 0; b[2] = 0;
132 #endif //ROOT_TVirtualMCApplication static TMCThreadLocal TVirtualMCApplication * fgInstance
Singleton instance.
virtual Double_t TrackingRmax() const
Define maximum radius for tracking (optional)
virtual void BeginEvent()=0
Define actions at the beginning of the event.
virtual void ConstructOpGeometry()
Define parameters for optical processes (optional)
virtual void ConstructGeometry()=0
Construct user geometry.
virtual void PreTrack()=0
Define actions at the beginning of each track.
virtual void BeginWorkerRun() const
Define actions at the beginning of the worker run if needed.
#define ClassDef(name, id)
virtual void FinishWorkerRun() const
Define actions at the end of the worker run if needed.
The TNamed class is the base class for all named ROOT classes.
virtual ~TVirtualMCApplication()
Destructor.
virtual void InitForWorker() const
Initialize MC application on worker.
virtual void PostTrack()=0
Define actions at the end of each track.
virtual void Merge(TVirtualMCApplication *)
Merge the data accumulated on workers to the master if needed.
virtual void Stepping()=0
Define action at each step.
virtual void FinishPrimary()=0
Define actions at the end of the primary track.
Interface to a user Monte Carlo application.
virtual Double_t TrackingZmax() const
Define maximum z for tracking (optional)
virtual void Field(const Double_t *x, Double_t *b) const
Calculate user field b at point x.
virtual void GeaneStepping()
Define action at each step for Geane.
virtual void InitGeometry()=0
Initialize geometry (Usually used to define sensitive volumes IDs)
virtual void GeneratePrimaries()=0
Generate primary particles.
static TVirtualMCApplication * Instance()
Static access method.
virtual TVirtualMCApplication * CloneForWorker() const
Clone MC application on worker.
virtual Bool_t MisalignGeometry()
Misalign user geometry (optional)
virtual void FinishEvent()=0
Define actions at the end of the event.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
virtual void AddIons()
Add user defined ions (optional)
virtual void BeginPrimary()=0
Define actions at the beginning of the primary track.
virtual void AddParticles()
Add user defined particles (optional)
TVirtualMCApplication()
Default constructor.