Geant4 11.3.0
Toolkit for the simulation of the passage of particles through matter
|
#include <G4MTRunManager.hh>
Public Types | |
enum class | WorkerActionRequest { UNDEFINED , NEXTITERATION , PROCESSUI , ENDWORKER } |
using | masterWorlds_t = std::map<G4int, G4VPhysicalVolume*> |
![]() | |
enum | RMType { sequentialRM , masterRM , workerRM , subEventMasterRM , subEventWorkerRM } |
Static Public Member Functions | |
static G4ThreadId | GetMasterThreadId () |
static G4ScoringManager * | GetMasterScoringManager () |
static masterWorlds_t & | GetMasterWorlds () |
static void | addWorld (G4int counter, G4VPhysicalVolume *w) |
static G4MTRunManager * | GetMasterRunManager () |
static G4RunManagerKernel * | GetMasterRunManagerKernel () |
static G4MTRunManagerKernel * | GetMTMasterRunManagerKernel () |
static G4int | SeedOncePerCommunication () |
static void | SetSeedOncePerCommunication (G4int val) |
![]() | |
static G4RunManager * | GetRunManager () |
static G4bool | IfGeometryHasBeenDestroyed () |
Protected Types | |
using | G4ThreadsList = std::list<G4Thread*> |
Protected Member Functions | |
virtual G4bool | InitializeSeeds (G4int) |
virtual void | PrepareCommandsStack () |
void | StoreRNGStatus (const G4String &filenamePrefix) override |
void | rndmSaveThisRun () override |
void | rndmSaveThisEvent () override |
virtual void | CreateAndStartWorkers () |
virtual void | WaitForReadyWorkers () |
virtual void | WaitForEndEventLoopWorkers () |
virtual void | TerminateWorkers () |
virtual void | NewActionRequest (WorkerActionRequest newRequest) |
virtual void | RefillSeeds () |
![]() | |
G4RunManager (RMType rmType) | |
virtual void | StackPreviousEvent (G4Event *anEvent) |
virtual void | CleanUpPreviousEvents () |
virtual void | CleanUpUnnecessaryEvents (G4int keepNEvents) |
void | UpdateScoring (const G4Event *evt=nullptr) |
virtual void | DeleteUserInitializations () |
Static Protected Attributes | |
static G4MTRUN_DLL G4ScoringManager * | masterScM = nullptr |
static G4MTRUN_DLL G4MTRunManager * | fMasterRM = nullptr |
static G4ThreadId | masterThreadId = G4ThisThread::get_id() |
static G4int | seedOncePerCommunication = 0 |
![]() | |
static G4RUN_DLL G4bool | fGeometryHasBeenDestroyed = false |
Friends | |
class | G4RunManagerFactory |
Definition at line 57 of file G4MTRunManager.hh.
|
protected |
Definition at line 273 of file G4MTRunManager.hh.
using G4MTRunManager::masterWorlds_t = std::map<G4int, G4VPhysicalVolume*> |
Definition at line 63 of file G4MTRunManager.hh.
|
strong |
Enumerator | |
---|---|
UNDEFINED | |
NEXTITERATION | |
PROCESSUI | |
ENDWORKER |
Definition at line 159 of file G4MTRunManager.hh.
G4MTRunManager::G4MTRunManager | ( | ) |
Definition at line 120 of file G4MTRunManager.cc.
Referenced by GetMasterRunManager(), G4SubEvtRunManager::RequestWorkersProcessCommandsStack(), and G4TaskRunManager::RequestWorkersProcessCommandsStack().
|
override |
Definition at line 191 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 655 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 641 of file G4MTRunManager.cc.
|
static |
Definition at line 96 of file G4MTRunManager.cc.
Referenced by ConstructScoringWorlds(), G4SubEvtRunManager::ConstructScoringWorlds(), and G4TaskRunManager::ConstructScoringWorlds().
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 463 of file G4MTRunManager.cc.
|
protectedvirtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 304 of file G4MTRunManager.cc.
Referenced by InitializeEventLoop().
std::vector< G4String > G4MTRunManager::GetCommandStack | ( | ) |
Definition at line 297 of file G4MTRunManager.cc.
Referenced by G4SubEvtRunManager::CreateAndStartWorkers(), G4TaskRunManager::CreateAndStartWorkers(), G4WorkerRunManager::DoWork(), G4WorkerSubEvtRunManager::ProcessUI(), G4WorkerTaskRunManager::ProcessUI(), G4SubEvtRunManager::RequestWorkersProcessCommandsStack(), and G4TaskRunManager::RequestWorkersProcessCommandsStack().
|
inline |
Definition at line 182 of file G4MTRunManager.hh.
Referenced by G4WorkerRunManager::GenerateEvent(), G4WorkerSubEvtRunManager::GenerateEvent(), and G4WorkerTaskRunManager::GenerateEvent().
|
inline |
|
static |
Definition at line 65 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::DoWork(), G4WorkerRunManager::GenerateEvent(), G4WorkerSubEvtRunManager::GenerateEvent(), G4WorkerTaskRunManager::GenerateEvent(), G4SubEvtRunManager::GetMasterRunManager(), G4TaskRunManager::GetMasterRunManager(), G4RunManagerFactory::GetMTMasterRunManager(), G4WorkerRunManager::MergePartialResults(), G4SubEvtRunManager::RequestWorkersProcessCommandsStack(), G4TaskRunManager::RequestWorkersProcessCommandsStack(), G4WorkerRunManager::RunInitialization(), G4WorkerSubEvtRunManager::RunInitialization(), G4WorkerTaskRunManager::RunInitialization(), G4WorkerRunManager::RunTermination(), G4WorkerSubEvtRunManager::RunTermination(), G4WorkerTaskRunManager::RunTermination(), G4WorkerRunManager::SetupDefaultRNGEngine(), G4WorkerSubEvtRunManager::SetupDefaultRNGEngine(), G4WorkerTaskRunManager::SetupDefaultRNGEngine(), G4MTRunManagerKernel::StartThread(), G4RunManagerKernel::WorkerDefineWorldVolume(), and G4RunManagerKernel::WorkerUpdateWorldVolume().
|
static |
Definition at line 71 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::InitializeGeometry().
|
static |
Definition at line 83 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::ConstructScoringWorlds(), and G4WorkerRunManager::G4WorkerRunManager().
|
static |
Definition at line 102 of file G4MTRunManager.cc.
Referenced by G4TaskRunManagerKernel::ExecuteWorkerInit(), G4TaskRunManagerKernel::ExecuteWorkerTask(), G4TaskRunManager::GetMasterThreadId(), and G4TaskRunManagerKernel::InitializeWorker().
|
static |
Definition at line 89 of file G4MTRunManager.cc.
Referenced by addWorld(), ConstructScoringWorlds(), G4SubEvtRunManager::ConstructScoringWorlds(), G4TaskRunManager::ConstructScoringWorlds(), G4RunManagerKernel::WorkerDefineWorldVolume(), and G4RunManagerKernel::WorkerUpdateWorldVolume().
|
static |
Definition at line 77 of file G4MTRunManager.cc.
|
inlinevirtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 114 of file G4MTRunManager.hh.
Referenced by NewActionRequest(), RequestWorkersProcessCommandsStack(), WaitForEndEventLoopWorkers(), and WaitForReadyWorkers().
|
inlineoverridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4TaskRunManager.
Definition at line 70 of file G4MTRunManager.hh.
|
inline |
Definition at line 72 of file G4MTRunManager.hh.
Referenced by G4TaskRunManagerKernel::InitializeWorker(), and G4MTRunManagerKernel::StartThread().
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 263 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 337 of file G4MTRunManager.cc.
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 195 of file G4MTRunManager.hh.
Referenced by InitializeEventLoop().
|
inlinevirtual |
|
virtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 565 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::MergePartialResults().
|
virtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 558 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::MergePartialResults().
|
protectedvirtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 689 of file G4MTRunManager.cc.
Referenced by CreateAndStartWorkers(), RequestWorkersProcessCommandsStack(), and TerminateWorkers().
|
protectedvirtual |
Definition at line 285 of file G4MTRunManager.cc.
Referenced by InitializeEventLoop(), G4SubEvtRunManager::InitializeEventLoop(), G4TaskRunManager::InitializeEventLoop(), RequestWorkersProcessCommandsStack(), G4SubEvtRunManager::RequestWorkersProcessCommandsStack(), and G4TaskRunManager::RequestWorkersProcessCommandsStack().
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 273 of file G4MTRunManager.cc.
|
protectedvirtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 426 of file G4MTRunManager.cc.
Referenced by SetUpAnEvent(), and SetUpNEvents().
|
virtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 706 of file G4MTRunManager.cc.
Referenced by TerminateWorkers().
|
overrideprotectedvirtual |
Reimplemented from G4RunManager.
Definition at line 235 of file G4MTRunManager.cc.
|
overrideprotectedvirtual |
Reimplemented from G4RunManager.
Definition at line 210 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 449 of file G4MTRunManager.cc.
|
static |
Definition at line 108 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::GenerateEvent(), G4WorkerSubEvtRunManager::GenerateEvent(), G4WorkerTaskRunManager::GenerateEvent(), G4RunMessenger::GetCurrentValue(), G4SubEvtRunManager::InitializeEventLoop(), G4TaskRunManager::InitializeEventLoop(), G4SubEvtRunManager::RefillSeeds(), G4TaskRunManager::RefillSeeds(), and G4TaskRunManager::SetUpNEvents().
|
inline |
Definition at line 181 of file G4MTRunManager.hh.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4TaskRunManager.
Definition at line 242 of file G4MTRunManager.cc.
Referenced by G4RunManagerFactory::CreateRunManager().
void G4MTRunManager::SetPinAffinity | ( | G4int | n = 1 | ) |
Definition at line 721 of file G4MTRunManager.cc.
|
static |
Definition at line 114 of file G4MTRunManager.cc.
Referenced by G4SubEvtRunManager::Initialize(), G4SubEvtRunManager::InitializeEventLoop(), G4TaskRunManager::InitializeEventLoop(), and G4RunMessenger::SetNewValue().
|
virtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 572 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::GenerateEvent(), G4WorkerSubEvtRunManager::GenerateEvent(), and G4WorkerTaskRunManager::GenerateEvent().
|
virtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 594 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::GenerateEvent(), G4WorkerSubEvtRunManager::GenerateEvent(), and G4WorkerTaskRunManager::GenerateEvent().
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 526 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 511 of file G4MTRunManager.cc.
Referenced by G4TheMTRayTracer::RestoreUserActions(), and G4TheMTRayTracer::StoreUserActions().
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 534 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 550 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 542 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 518 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 479 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 485 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 491 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 505 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager.
Definition at line 498 of file G4MTRunManager.cc.
Referenced by G4TheMTRayTracer::RestoreUserActions(), and G4TheMTRayTracer::StoreUserActions().
|
overrideprotectedvirtual |
Reimplemented from G4RunManager.
Reimplemented in G4TaskRunManager.
Definition at line 202 of file G4MTRunManager.cc.
|
overridevirtual |
Reimplemented from G4RunManager.
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 279 of file G4MTRunManager.cc.
|
protectedvirtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 622 of file G4MTRunManager.cc.
Referenced by ~G4MTRunManager().
|
virtual |
Reimplemented in G4TaskRunManager.
Definition at line 683 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::RunTermination(), G4WorkerSubEvtRunManager::RunTermination(), and G4WorkerTaskRunManager::RunTermination().
|
virtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 715 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::DoWork(), G4SubEvtRunManager::RequestWorkersProcessCommandsStack(), and G4TaskRunManager::RequestWorkersProcessCommandsStack().
|
virtual |
Reimplemented in G4TaskRunManager.
Definition at line 669 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::RunInitialization(), G4WorkerSubEvtRunManager::RunInitialization(), and G4WorkerTaskRunManager::RunInitialization().
|
virtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 699 of file G4MTRunManager.cc.
Referenced by G4WorkerRunManager::DoWork().
|
protectedvirtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 675 of file G4MTRunManager.cc.
Referenced by RunTermination().
|
protectedvirtual |
Reimplemented in G4SubEvtRunManager, and G4TaskRunManager.
Definition at line 661 of file G4MTRunManager.cc.
Referenced by InitializeEventLoop().
|
friend |
Definition at line 59 of file G4MTRunManager.hh.
Referenced by G4RunManagerFactory.
|
protected |
Definition at line 266 of file G4MTRunManager.hh.
Referenced by ThisWorkerReady(), WaitForEndEventLoopWorkers(), and WaitForReadyWorkers().
|
protected |
Definition at line 267 of file G4MTRunManager.hh.
Referenced by ThisWorkerEndEventLoop(), WaitForEndEventLoopWorkers(), and WaitForReadyWorkers().
|
protected |
Definition at line 240 of file G4MTRunManager.hh.
Referenced by G4SubEvtRunManager::ComputeNumberOfTasks(), G4TaskRunManager::ComputeNumberOfTasks(), InitializeEventLoop(), G4TaskRunManager::InitializeEventLoop(), RefillSeeds(), G4SubEvtRunManager::RefillSeeds(), G4TaskRunManager::RefillSeeds(), SetUpNEvents(), and G4TaskRunManager::SetUpNEvents().
|
protected |
Definition at line 239 of file G4MTRunManager.hh.
Referenced by G4TaskRunManager::ComputeNumberOfTasks(), GetEventModulo(), InitializeEventLoop(), and SetEventModulo().
|
staticprotected |
Definition at line 235 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), G4TaskRunManager::G4TaskRunManager(), GetMasterRunManager(), GetMasterRunManagerKernel(), and GetMTMasterRunManagerKernel().
|
protected |
Definition at line 228 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), G4TaskRunManager::G4TaskRunManager(), SetNumberOfThreads(), and G4TaskRunManager::SetNumberOfThreads().
|
protected |
Definition at line 286 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), getMasterRandomEngine(), InitializeEventLoop(), and RefillSeeds().
|
staticprotected |
Definition at line 233 of file G4MTRunManager.hh.
Referenced by ConstructScoringWorlds(), G4SubEvtRunManager::ConstructScoringWorlds(), G4TaskRunManager::ConstructScoringWorlds(), G4MTRunManager(), G4TaskRunManager::G4TaskRunManager(), GetMasterScoringManager(), MergeScores(), G4SubEvtRunManager::MergeScores(), and G4TaskRunManager::MergeScores().
|
staticprotected |
Definition at line 247 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), and GetMasterThreadId().
|
protected |
Definition at line 288 of file G4MTRunManager.hh.
Referenced by AbortRun(), G4MTRunManager(), and InitializeEventLoop().
|
protected |
Definition at line 237 of file G4MTRunManager.hh.
Referenced by NewActionRequest(), and ThisWorkerWaitForNextAction().
|
protected |
Definition at line 268 of file G4MTRunManager.hh.
Referenced by NewActionRequest(), and ThisWorkerWaitForNextAction().
|
protected |
Definition at line 242 of file G4MTRunManager.hh.
Referenced by InitializeEventLoop(), G4SubEvtRunManager::InitializeEventLoop(), G4TaskRunManager::InitializeEventLoop(), RefillSeeds(), G4SubEvtRunManager::RefillSeeds(), G4TaskRunManager::RefillSeeds(), SetUpAnEvent(), G4TaskRunManager::SetUpAnEvent(), SetUpNEvents(), G4TaskRunManager::SetUpNEvents(), and G4SubEvtRunManager::SetUpSeedsForSubEvent().
|
protected |
Definition at line 243 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), G4TaskRunManager::G4TaskRunManager(), InitializeEventLoop(), G4SubEvtRunManager::InitializeEventLoop(), G4TaskRunManager::InitializeEventLoop(), RefillSeeds(), G4SubEvtRunManager::RefillSeeds(), and G4TaskRunManager::RefillSeeds().
|
protected |
Definition at line 244 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), G4TaskRunManager::G4TaskRunManager(), InitializeEventLoop(), G4SubEvtRunManager::InitializeEventLoop(), G4TaskRunManager::InitializeEventLoop(), RefillSeeds(), G4SubEvtRunManager::RefillSeeds(), G4TaskRunManager::RefillSeeds(), SetUpAnEvent(), G4TaskRunManager::SetUpAnEvent(), SetUpNEvents(), G4TaskRunManager::SetUpNEvents(), and G4SubEvtRunManager::SetUpSeedsForSubEvent().
|
protected |
Definition at line 241 of file G4MTRunManager.hh.
Referenced by InitializeEventLoop(), G4SubEvtRunManager::InitializeEventLoop(), G4TaskRunManager::InitializeEventLoop(), SetUpAnEvent(), G4TaskRunManager::SetUpAnEvent(), SetUpNEvents(), G4TaskRunManager::SetUpNEvents(), and G4SubEvtRunManager::SetUpSeedsForSubEvent().
|
protected |
Definition at line 230 of file G4MTRunManager.hh.
Referenced by G4TaskRunManager::ComputeNumberOfTasks(), G4TaskRunManager::CreateAndStartWorkers(), G4TaskRunManager::G4TaskRunManager(), InitializeEventLoop(), G4SubEvtRunManager::InitializeEventLoop(), G4TaskRunManager::InitializeEventLoop(), RefillSeeds(), G4SubEvtRunManager::RefillSeeds(), G4TaskRunManager::RefillSeeds(), SetUpAnEvent(), G4TaskRunManager::SetUpAnEvent(), SetUpNEvents(), and G4TaskRunManager::SetUpNEvents().
|
protected |
Definition at line 225 of file G4MTRunManager.hh.
Referenced by CreateAndStartWorkers(), G4MTRunManager(), G4TaskRunManager::G4TaskRunManager(), GetNumberOfThreads(), G4TaskRunManager::GetNumberOfThreads(), InitializeEventLoop(), G4SubEvtRunManager::InitializeEventLoop(), G4TaskRunManager::InitializeThreadPool(), RefillSeeds(), SetNumberOfThreads(), and G4TaskRunManager::SetNumberOfThreads().
|
protected |
Definition at line 276 of file G4MTRunManager.hh.
Referenced by GetPinAffinity(), and SetPinAffinity().
|
protected |
Definition at line 269 of file G4MTRunManager.hh.
Referenced by RequestWorkersProcessCommandsStack(), and ThisWorkerProcessCommandsStackDone().
|
protected |
Definition at line 245 of file G4MTRunManager.hh.
Referenced by G4MTRunManager(), G4TaskRunManager::G4TaskRunManager(), InitializeEventLoop(), G4SubEvtRunManager::InitializeEventLoop(), G4TaskRunManager::InitializeEventLoop(), RefillSeeds(), G4SubEvtRunManager::RefillSeeds(), G4TaskRunManager::RefillSeeds(), and ~G4MTRunManager().
|
staticprotected |
Definition at line 263 of file G4MTRunManager.hh.
Referenced by InitializeEventLoop(), RefillSeeds(), SeedOncePerCommunication(), SetSeedOncePerCommunication(), and SetUpNEvents().
|
protected |
Definition at line 280 of file G4MTRunManager.hh.
Referenced by CreateAndStartWorkers(), GetNumberActiveThreads(), G4SubEvtRunManager::GetNumberActiveThreads(), SetNumberOfThreads(), and TerminateWorkers().
|
protected |
Definition at line 283 of file G4MTRunManager.hh.
Referenced by GetCommandStack(), and PrepareCommandsStack().