31 std::cout << std::endl
32 <<
"=============================================================" << std::endl
33 <<
" Virtual Monte Carlo Library" << std::endl
35 <<
"=============================================================" << std::endl;
63 : TNamed(name, title), fApplication(nullptr), fId(0), fStack(nullptr), fManagerStack(nullptr), fDecayer(nullptr),
64 fRandom(nullptr), fMagField(nullptr)
73 ::Fatal(
"TVirtualMC::TVirtualMC",
"No user MC application is defined.");
85 : TNamed(), fApplication(nullptr), fId(0), fStack(nullptr), fManagerStack(nullptr), fDecayer(nullptr),
86 fRandom(nullptr), fMagField(nullptr)
Definition of the code version and release date.
Concrete implementation of particles stack used by the TMCManager.
void Register(TVirtualMC *mc)
Register the an engine.
static TVirtualMCApplication * Instance()
Static access method.
Interface to a user defined particles stack.
Abstract Monte Carlo interface.
TVirtualMC()
Default constructor.
TRandom * fRandom
Random number generator.
static TVirtualMC * GetMC()
Static access method.
TMCManagerStack * fManagerStack
Stack handled by the TMCManager.
virtual void ProcessEvent()=0
Process one event.
virtual void SetRandom(TRandom *random)
Set the random number generator.
void SetId(UInt_t id)
Set the VMC id.
Int_t fId
Unique identification of this VMC.
virtual void SetStack(TVirtualMCStack *stack)
Set the particle stack.
void SetManagerStack(TMCManagerStack *stack)
Set container holding additional information for transported TParticles.
TVirtualMagField * fMagField
Magnetic field.
static TMCThreadLocal TVirtualMC * fgMC
Static TVirtualMC pointer.
TVirtualMCApplication * fApplication
User MC application.
virtual void SetExternalDecayer(TVirtualMCDecayer *decayer)
Set the external decayer.
virtual void SetMagField(TVirtualMagField *field)
Set the magnetic field.
virtual ~TVirtualMC()
Destructor.
TVirtualMCStack * fStack
Particles stack.
TVirtualMCDecayer * fDecayer
External decayer.