Geant4  10.00.p04
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
G4MTRunManager Class Reference
Inheritance diagram for G4MTRunManager:
G4RunManager

Public Types

enum  WorkerActionRequest { UNDEFINED, NEXTITERATION, ENDWORKER }
 
typedef std::map< G4int,
G4VPhysicalVolume * > 
masterWorlds_t
 
- Public Types inherited from G4RunManager
enum  RMType { sequentialRM, masterRM, workerRM }
 

Public Member Functions

 G4MTRunManager ()
 
virtual ~G4MTRunManager ()
 
void SetNumberOfThreads (G4int n)
 
G4int GetNumberOfThreads () const
 
virtual void Initialize ()
 
virtual void InitializeEventLoop (G4int n_event, const char *macroFile=0, G4int n_select=-1)
 
virtual void TerminateOneEvent ()
 
virtual void ProcessOneEvent (G4int i_event)
 
virtual void ConstructScoringWorlds ()
 
virtual void InitializePhysics ()
 
virtual void RunTermination ()
 
virtual G4bool SetUpAnEvent (G4Event *, long &s1, long &s2, long &s3)
 
virtual G4int SetUpNEvents (G4Event *, G4SeedsQueue *seedsQueue)
 
std::vector< G4StringGetCommandStack ()
 
virtual void ThisWorkerReady ()
 
virtual void ThisWorkerEndEventLoop ()
 
const CLHEP::HepRandomEnginegetMasterRandomEngine () const
 
virtual void SetUserInitialization (G4VUserPhysicsList *userPL)
 
virtual void SetUserInitialization (G4VUserDetectorConstruction *userDC)
 
virtual void SetUserInitialization (G4UserWorkerInitialization *userInit)
 
virtual void SetUserInitialization (G4UserWorkerThreadInitialization *userInit)
 
virtual void SetUserInitialization (G4VUserActionInitialization *userInit)
 
virtual void SetUserAction (G4UserRunAction *userAction)
 
virtual void SetUserAction (G4VUserPrimaryGeneratorAction *userAction)
 
virtual void SetUserAction (G4UserEventAction *userAction)
 
virtual void SetUserAction (G4UserStackingAction *userAction)
 
virtual void SetUserAction (G4UserTrackingAction *userAction)
 
virtual void SetUserAction (G4UserSteppingAction *userAction)
 
void MergeScores (const G4ScoringManager *localScoringManager)
 
void MergeRun (const G4Run *localRun)
 
virtual WorkerActionRequest ThisWorkerWaitForNextAction ()
 
void SetEventModulo (G4int i=1)
 
G4int GetEventModulo () const
 
virtual void AbortRun (G4bool softAbort=false)
 
virtual void AbortEvent ()
 
- Public Member Functions inherited from G4RunManager
 G4RunManager ()
 
virtual ~G4RunManager ()
 
virtual void BeamOn (G4int n_event, const char *macroFile=0, G4int n_select=-1)
 
virtual void DefineWorldVolume (G4VPhysicalVolume *worldVol, G4bool topologyIsChanged=true)
 
virtual void InitializeGeometry ()
 
virtual G4bool ConfirmBeamOnCondition ()
 
virtual void RunInitialization ()
 
virtual void DoEventLoop (G4int n_event, const char *macroFile=0, G4int n_select=-1)
 
virtual void TerminateEventLoop ()
 
virtual G4EventGenerateEvent (G4int i_event)
 
virtual void AnalyzeEvent (G4Event *anEvent)
 
void DumpRegion (const G4String &rname) const
 
void DumpRegion (G4Region *region=0) const
 
virtual void rndmSaveThisRun ()
 
virtual void rndmSaveThisEvent ()
 
virtual void RestoreRandomNumberStatus (const G4String &fileN)
 
const G4VUserDetectorConstructionGetUserDetectorConstruction () const
 
const G4VUserPhysicsListGetUserPhysicsList () const
 
const G4VUserActionInitializationGetUserActionInitialization () const
 
G4VUserActionInitializationGetNonConstUserActionInitialization () const
 
const G4UserWorkerInitializationGetUserWorkerInitialization () const
 
const
G4UserWorkerThreadInitialization
GetUserWorkerThreadInitialization () const
 
const G4UserRunActionGetUserRunAction () const
 
const
G4VUserPrimaryGeneratorAction
GetUserPrimaryGeneratorAction () const
 
const G4UserEventActionGetUserEventAction () const
 
const G4UserStackingActionGetUserStackingAction () const
 
const G4UserTrackingActionGetUserTrackingAction () const
 
const G4UserSteppingActionGetUserSteppingAction () const
 
void SetNumberOfAdditionalWaitingStacks (G4int iAdd)
 
const G4StringGetVersionString () const
 
void SetPrimaryTransformer (G4PrimaryTransformer *pt)
 
void StoreRandomNumberStatusToG4Event (G4int vl)
 
G4int GetFlagRandomNumberStatusToG4Event () const
 
void SetRandomNumberStore (G4bool flag)
 
G4bool GetRandomNumberStore () const
 
void SetRandomNumberStoreDir (const G4String &dir)
 
const G4StringGetRandomNumberStoreDir () const
 
const G4StringGetRandomNumberStatusForThisRun () const
 
const G4StringGetRandomNumberStatusForThisEvent () const
 
void SetRandomNumberStorePerEvent (G4bool flag)
 
G4bool GetRandomNumberStorePerEvent () const
 
void GeometryHasBeenModified (G4bool prop=true)
 
void ReinitializeGeometry (G4bool destroyFirst=false, G4bool prop=true)
 
void PhysicsHasBeenModified ()
 
void CutOffHasBeenModified ()
 
void ReOptimizeMotherOf (G4VPhysicalVolume *)
 
void ReOptimize (G4LogicalVolume *)
 
void SetVerboseLevel (G4int vl)
 
G4int GetVerboseLevel () const
 
G4int GetPrintProgress ()
 
void SetPrintProgress (G4int i)
 
void SetGeometryToBeOptimized (G4bool vl)
 
G4bool GetGeometryToBeOptimized ()
 
void SetNumberOfEventsToBeStored (G4int val)
 
const G4RunGetCurrentRun () const
 
G4RunGetNonConstCurrentRun () const
 
const G4EventGetCurrentEvent () const
 
const G4EventGetPreviousEvent (G4int i) const
 
void SetRunIDCounter (G4int i)
 
G4int GetNumberOfParallelWorld () const
 
void SetNumberOfEventsToBeProcessed (G4int val)
 
G4int GetNumberOfEventsToBeProcessed () const
 
G4int GetNumberOfSelectEvents () const
 
G4String GetSelectMacro () const
 
void SetDCtable (G4DCtable *DCtbl)
 
RMType GetRunManagerType () const
 

Static Public Member Functions

static G4ScoringManagerGetMasterScoringManager ()
 
static masterWorlds_tGetMasterWorlds ()
 
static void addWorld (G4int counter, G4VPhysicalVolume *w)
 
static G4MTRunManagerGetMasterRunManager ()
 
static G4RunManagerKernelGetMasterRunManagerKernel ()
 
static G4MTRunManagerKernelGetMTMasterRunManagerKernel ()
 
- Static Public Member Functions inherited from G4RunManager
static G4RunManagerGetRunManager ()
 

Protected Member Functions

virtual G4bool InitializeSeeds (G4int)
 
virtual void PrepareCommandsStack ()
 
virtual void StoreRNGStatus (const G4String &filenamePrefix)
 
virtual void CreateAndStartWorkers ()
 
virtual void WaitForReadyWorkers ()
 
virtual void WaitForEndEventLoopWorkers ()
 
virtual void TerminateWorkers ()
 
virtual void NewActionRequest (WorkerActionRequest newRequest)
 
void RefillSeeds ()
 
- Protected Member Functions inherited from G4RunManager
void StackPreviousEvent (G4Event *anEvent)
 
 G4RunManager (RMType rmType)
 
void UpdateScoring ()
 
virtual void DeleteUserInitializations ()
 

Protected Attributes

G4int numberOfEventToBeProcessed
 
WorkerActionRequest nextActionRequest
 
G4int eventModuloDef
 
G4int eventModulo
 
G4int nSeedsUsed
 
G4int nSeedsFilled
 
G4int nSeedsMax
 
G4int nSeedsPerEvent
 
double * randDbl
 
- Protected Attributes inherited from G4RunManager
G4RunManagerKernelkernel
 
G4EventManagereventManager
 
G4VUserDetectorConstructionuserDetector
 
G4VUserPhysicsListphysicsList
 
G4VUserActionInitializationuserActionInitialization
 
G4UserWorkerInitializationuserWorkerInitialization
 
G4UserWorkerThreadInitializationuserWorkerThreadInitialization
 
G4UserRunActionuserRunAction
 
G4VUserPrimaryGeneratorActionuserPrimaryGeneratorAction
 
G4UserEventActionuserEventAction
 
G4UserStackingActionuserStackingAction
 
G4UserTrackingActionuserTrackingAction
 
G4UserSteppingActionuserSteppingAction
 
G4bool geometryInitialized
 
G4bool physicsInitialized
 
G4bool runAborted
 
G4bool initializedAtLeastOnce
 
G4bool geometryToBeOptimized
 
G4int runIDCounter
 
G4int verboseLevel
 
G4int printModulo
 
G4Timertimer
 
G4DCtableDCtable
 
G4RuncurrentRun
 
G4EventcurrentEvent
 
std::vector< G4Event * > * previousEvents
 
G4int n_perviousEventsToBeStored
 
G4int numberOfEventToBeProcessed
 
G4bool storeRandomNumberStatus
 
G4int storeRandomNumberStatusToG4Event
 
G4String randomNumberStatusDir
 
G4String randomNumberStatusForThisRun
 
G4String randomNumberStatusForThisEvent
 
G4bool rngStatusEventsFlag
 
G4VPhysicalVolumecurrentWorld
 
G4int nParallelWorlds
 
G4String msgText
 
G4int n_select_msg
 
G4int numberOfEventProcessed
 
G4String selectMacro
 
G4bool fakeRun
 
RMType runManagerType
 

Private Types

typedef std::list< G4Thread * > G4ThreadsList
 

Private Attributes

G4int nworkers
 
G4int forcedNwokers
 
G4ThreadsList threads
 
std::vector< G4StringuiCmdsForWorkers
 
CLHEP::HepRandomEnginemasterRNGEngine
 
G4MTRunManagerKernelMTkernel
 

Static Private Attributes

static G4ScoringManagermasterScM
 
static masterWorlds_t masterWorlds
 
static G4MTRunManagerfMasterRM
 

Member Typedef Documentation

typedef std::list<G4Thread*> G4ThreadsList
private

Member Enumeration Documentation

Enumerator
UNDEFINED 
NEXTITERATION 
ENDWORKER 

Constructor & Destructor Documentation

virtual ~G4MTRunManager ( )
virtual

Member Function Documentation

void SetNumberOfThreads ( G4int  n)
G4int GetNumberOfThreads ( ) const

References nworkers.

virtual void Initialize ( )
virtual

Reimplemented from G4RunManager.

virtual void InitializeEventLoop ( G4int  n_event,
const char *  macroFile = 0,
G4int  n_select = -1 
)
virtual

Reimplemented from G4RunManager.

virtual void TerminateOneEvent ( )
virtual

Reimplemented from G4RunManager.

virtual void ProcessOneEvent ( G4int  i_event)
virtual

Reimplemented from G4RunManager.

virtual void ConstructScoringWorlds ( )
virtual

Reimplemented from G4RunManager.

virtual void InitializePhysics ( )
virtual

Reimplemented from G4RunManager.

virtual void RunTermination ( )
virtual

Reimplemented from G4RunManager.

virtual G4bool SetUpAnEvent ( G4Event ,
long &  s1,
long &  s2,
long &  s3 
)
virtual
virtual G4int SetUpNEvents ( G4Event ,
G4SeedsQueue seedsQueue 
)
virtual
virtual G4bool InitializeSeeds ( G4int  )
protectedvirtual
virtual void PrepareCommandsStack ( )
protectedvirtual
virtual void StoreRNGStatus ( const G4String filenamePrefix)
protectedvirtual

Reimplemented from G4RunManager.

virtual void CreateAndStartWorkers ( )
protectedvirtual
std::vector<G4String> GetCommandStack ( )
virtual void WaitForReadyWorkers ( )
protectedvirtual
virtual void WaitForEndEventLoopWorkers ( )
protectedvirtual
virtual void TerminateWorkers ( )
protectedvirtual
virtual void ThisWorkerReady ( )
virtual
virtual void ThisWorkerEndEventLoop ( )
virtual
static G4ScoringManager* GetMasterScoringManager ( )
static

References masterScM.

static masterWorlds_t& GetMasterWorlds ( )
static

References masterWorlds.

static void addWorld ( G4int  counter,
G4VPhysicalVolume w 
)
static

References masterWorlds.

const CLHEP::HepRandomEngine* getMasterRandomEngine ( ) const

References masterRNGEngine.

static G4MTRunManager* GetMasterRunManager ( )
static
static G4RunManagerKernel* GetMasterRunManagerKernel ( )
static
static G4MTRunManagerKernel* GetMTMasterRunManagerKernel ( )
static
virtual void SetUserInitialization ( G4VUserPhysicsList userPL)
virtual

Reimplemented from G4RunManager.

virtual void SetUserInitialization ( G4VUserDetectorConstruction userDC)
virtual

Reimplemented from G4RunManager.

virtual void SetUserInitialization ( G4UserWorkerInitialization userInit)
virtual

Reimplemented from G4RunManager.

virtual void SetUserInitialization ( G4UserWorkerThreadInitialization userInit)
virtual

Reimplemented from G4RunManager.

virtual void SetUserInitialization ( G4VUserActionInitialization userInit)
virtual

Reimplemented from G4RunManager.

virtual void SetUserAction ( G4UserRunAction userAction)
virtual

Reimplemented from G4RunManager.

virtual void SetUserAction ( G4VUserPrimaryGeneratorAction userAction)
virtual

Reimplemented from G4RunManager.

virtual void SetUserAction ( G4UserEventAction userAction)
virtual

Reimplemented from G4RunManager.

virtual void SetUserAction ( G4UserStackingAction userAction)
virtual

Reimplemented from G4RunManager.

virtual void SetUserAction ( G4UserTrackingAction userAction)
virtual

Reimplemented from G4RunManager.

virtual void SetUserAction ( G4UserSteppingAction userAction)
virtual

Reimplemented from G4RunManager.

void MergeScores ( const G4ScoringManager localScoringManager)
void MergeRun ( const G4Run localRun)
virtual WorkerActionRequest ThisWorkerWaitForNextAction ( )
virtual
virtual void NewActionRequest ( WorkerActionRequest  newRequest)
protectedvirtual
void RefillSeeds ( )
protected
void SetEventModulo ( G4int  i = 1)

References eventModuloDef.

G4int GetEventModulo ( ) const

References eventModuloDef.

virtual void AbortRun ( G4bool  softAbort = false)
virtual

Reimplemented from G4RunManager.

virtual void AbortEvent ( )
virtual

Reimplemented from G4RunManager.

Member Data Documentation

G4int nworkers
private

Referenced by GetNumberOfThreads().

G4int forcedNwokers
private
G4ThreadsList threads
private
std::vector<G4String> uiCmdsForWorkers
private
CLHEP::HepRandomEngine* masterRNGEngine
private

Referenced by getMasterRandomEngine().

G4int numberOfEventToBeProcessed
protected
G4ScoringManager* masterScM
staticprivate

Referenced by GetMasterScoringManager().

masterWorlds_t masterWorlds
staticprivate

Referenced by addWorld(), and GetMasterWorlds().

G4MTRunManager* fMasterRM
staticprivate
G4MTRunManagerKernel* MTkernel
private
WorkerActionRequest nextActionRequest
protected
G4int eventModuloDef
protected

Referenced by GetEventModulo(), and SetEventModulo().

G4int eventModulo
protected
G4int nSeedsUsed
protected
G4int nSeedsFilled
protected
G4int nSeedsMax
protected
G4int nSeedsPerEvent
protected
double* randDbl
protected