28#include <TInterpreter.h>
30#include <TVirtualMCApplication.h>
32#include <G4Threading.hh>
39 fRunConfiguration(runConfiguration),
59 if (G4Threading::G4GetThreadId() != -2 &&
83 if (runAction) SetUserAction(runAction);
101#ifdef G4MULTITHREADED
102 if (G4Threading::IsWorkerThread()) {
108 "TVirtualMCApplication::CloneForWorker() must be overriden in user "
113 TVirtualMCApplication::Instance()->InitOnWorker();
125 if (tg4EventAction) {
135 if (trackingAction) {
148 if (steppingAction) {
154 if (stackingAction) {
157 if (tg4StackingAction) {
180 if (runAction) SetUserAction(runAction);
183 if (eventAction) SetUserAction(eventAction);
184 if (trackingAction) SetUserAction(trackingAction);
185 if (steppingAction) SetUserAction(steppingAction);
186 if (stackingAction) SetUserAction(stackingAction);
187 if (runAction) SetUserAction(runAction);
192 G4cout <<
"### TG4SpecialControlsV2 constructed" << G4endl;
Definition of the TG4ActionInitialization class.
Definition of the TG4EventAction class.
Definition of the TG4Globals class and basic container types.
Definition of the TG4RunAction class.
Definition of the TG4RunConfiguration class.
Definition of the TG4SpecialControlsV2 class.
Definition of the TG4SpecialStackingAction class.
Definition of the TG4SteppingAction class.
Definition of the TG4TrackManager class.
Definition of the TG4TrackingAction class.
Definition of the TGeant4 class.
virtual void BuildForMaster() const
TG4SteppingAction * fSteppingAction
steping action
TG4RunConfiguration * fRunConfiguration
run configuration
virtual ~TG4ActionInitialization()
G4UserStackingAction * fStackingAction
stacking action
G4UserEventAction * fEventAction
event action
TG4TrackingAction * fTrackingAction
tracking action
TG4ActionInitialization()
Not implemented.
virtual void Build() const
Actions at the beginning and the end of event.
G4bool GetSaveRandomStatus() const
G4bool GetPrintMemory() const
void SetPrintMemory(G4bool printMemory)
void SetSaveRandomStatus(G4bool saveRandomStatus)
static void Exception(const TString &className, const TString &methodName, const TString &text)
Takes care of creating Geant4 user action classes using VMC.
Bool_t IsSpecialControls() const
virtual TG4SteppingAction * CreateSteppingAction()
virtual G4UserStackingAction * CreateStackingAction()
virtual G4UserEventAction * CreateEventAction()
virtual TG4TrackingAction * CreateTrackingAction()
virtual G4VUserPrimaryGeneratorAction * CreatePrimaryGenerator()
Bool_t IsMTApplication() const
virtual G4UserRunAction * CreateRunAction()
The manager class for G3 process controls.
Defines a special stacking mechanism.
G4bool GetSkipNeutrino() const
Return the option for skipping neutrino.
void SetSkipNeutrino(G4bool value)
Set the option for skipping neutrino.
void SetMaxNofSteps(G4int number)
G4int GetLoopVerboseLevel() const
void SetLoopVerboseLevel(G4int level)
G4int GetMaxNofSteps() const
void SetSpecialControls(TG4SpecialControlsV2 *specialControls)
TG4TrackSaveControl GetTrackSaveControl() const
void SetTrackSaveControl(TG4TrackSaveControl control)
G4bool GetSaveDynamicCharge() const
void SetSaveDynamicCharge(G4bool saveDynamicCharge)
Actions at the beginnig and at the end of track.
void SetNewVerboseLevel(G4int level)
TG4TrackManager * GetTrackManager() const
G4int GetNewVerboseLevel() const
G4int GetNewVerboseTrackID() const
void SetSpecialControls(TG4SpecialControlsV2 *specialControls)
void SetNewVerboseTrackID(G4int trackID)
virtual void VerboseLevel(G4int level)
static TVirtualMCApplication * MasterApplicationInstance()
static TGeant4 * MasterInstance()
TGeant4 * CloneForWorker() const