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 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 Field(const Double_t *x, Double_t *b) const
Calculate user field b at point x.
#define ClassDef(name, id)
The TNamed class is the base class for all named ROOT classes.
virtual ~TVirtualMCApplication()
Destructor.
virtual TVirtualMCApplication * CloneForWorker() const
Clone 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 Double_t TrackingRmax() const
Define maximum radius for tracking (optional)
virtual void FinishPrimary()=0
Define actions at the end of the primary track.
virtual void InitForWorker() const
Initialize MC application on worker.
virtual Double_t TrackingZmax() const
Define maximum z for tracking (optional)
Interface to a user Monte Carlo application.
virtual void FinishWorkerRun() const
Define actions at the end of the worker run if needed.
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.
virtual void BeginWorkerRun() const
Define actions at the beginning of the worker run if needed.
virtual Bool_t MisalignGeometry()
Misalign user geometry (optional)
virtual void FinishEvent()=0
Define actions at the end of the event.
static TVirtualMCApplication * Instance()
Static access method.
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.