CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes | Friends
RunManagerMT Class Reference

#include <RunManagerMT.h>

Public Member Functions

const SensitiveDetectorCatalogcatalog () const
 
void Connect (RunAction *)
 
const std::vector< std::string > & G4Commands () const
 
void initG4 (const DDCompactView *, const cms::DDCompactView *, const HepPDT::ParticleDataTable *)
 
void initializeUserActions ()
 
PhysicsListphysicsListForWorker () const
 
 RunManagerMT (edm::ParameterSet const &)
 
void stopG4 ()
 
const DDDWorldworld () const
 
 ~RunManagerMT ()
 

Private Member Functions

void terminateRun ()
 

Private Attributes

SensitiveDetectorCatalog m_catalog
 
bool m_check
 
G4Run * m_currentRun
 
std::vector< std::string > m_G4Commands
 
edm::ParameterSet m_g4overlap
 
G4MTRunManagerKernel * m_kernel
 
bool m_managerInitialized
 
edm::ParameterSet m_p
 
std::unique_ptr< PhysicsListm_physicsList
 
const std::string m_PhysicsTablesDir
 
edm::ParameterSet m_pPhysics
 
edm::ParameterSet m_pRunAction
 
SimActivityRegistry m_registry
 
bool m_RestorePhysicsTables
 
std::unique_ptr< SimRunInterfacem_runInterface
 
bool m_runTerminated
 
G4StateManager * m_stateManager
 
bool m_StorePhysicsTables
 
CustomUIsessionm_UIsession
 
RunActionm_userRunAction
 
std::unique_ptr< DDDWorldm_world
 

Friends

class RunManagerMTWorker
 

Detailed Description

Definition at line 51 of file RunManagerMT.h.

Constructor & Destructor Documentation

◆ RunManagerMT()

RunManagerMT::RunManagerMT ( edm::ParameterSet const &  p)
explicit

Definition at line 68 of file RunManagerMT.cc.

References g4SimHits_cfi::CustomUIsession, m_check, m_currentRun, m_kernel, m_physicsList, m_runInterface, m_stateManager, m_UIsession, m_userRunAction, m_world, and AlCaHLTBitMon_ParallelJobs::p.

69  : m_managerInitialized(false),
70  m_runTerminated(false),
71  m_PhysicsTablesDir(p.getUntrackedParameter<std::string>("PhysicsTablesDirectory", "")),
72  m_StorePhysicsTables(p.getUntrackedParameter<bool>("StorePhysicsTables", false)),
73  m_RestorePhysicsTables(p.getUntrackedParameter<bool>("RestorePhysicsTables", false)),
74  m_pPhysics(p.getParameter<edm::ParameterSet>("Physics")),
75  m_pRunAction(p.getParameter<edm::ParameterSet>("RunAction")),
76  m_g4overlap(p.getUntrackedParameter<edm::ParameterSet>("G4CheckOverlap")),
77  m_G4Commands(p.getParameter<std::vector<std::string> >("G4Commands")),
78  m_p(p) {
79  m_currentRun = nullptr;
81  m_physicsList.reset(nullptr);
82  m_world.reset(nullptr);
83 
84  m_runInterface.reset(nullptr);
85  m_userRunAction = nullptr;
86  m_currentRun = nullptr;
87 
88  m_kernel = new G4MTRunManagerKernel();
89  m_stateManager = G4StateManager::GetStateManager();
90  double th = p.getParameter<double>("ThresholdForGeometryExceptions") * CLHEP::GeV;
91  bool tr = p.getParameter<bool>("TraceExceptions");
92  m_stateManager->SetExceptionHandler(new ExceptionHandler(th, tr));
93  m_check = p.getUntrackedParameter<bool>("CheckGeometry", false);
94 }
const std::string m_PhysicsTablesDir
Definition: RunManagerMT.h:95
bool m_managerInitialized
Definition: RunManagerMT.h:87
G4MTRunManagerKernel * m_kernel
Definition: RunManagerMT.h:83
edm::ParameterSet m_pRunAction
Definition: RunManagerMT.h:100
bool m_runTerminated
Definition: RunManagerMT.h:88
G4StateManager * m_stateManager
Definition: RunManagerMT.h:91
std::vector< std::string > m_G4Commands
Definition: RunManagerMT.h:102
G4Run * m_currentRun
Definition: RunManagerMT.h:90
edm::ParameterSet m_p
Definition: RunManagerMT.h:103
bool m_StorePhysicsTables
Definition: RunManagerMT.h:96
std::unique_ptr< PhysicsList > m_physicsList
Definition: RunManagerMT.h:86
std::unique_ptr< DDDWorld > m_world
Definition: RunManagerMT.h:105
edm::ParameterSet m_pPhysics
Definition: RunManagerMT.h:99
bool m_RestorePhysicsTables
Definition: RunManagerMT.h:97
std::unique_ptr< SimRunInterface > m_runInterface
Definition: RunManagerMT.h:93
edm::ParameterSet m_g4overlap
Definition: RunManagerMT.h:101
RunAction * m_userRunAction
Definition: RunManagerMT.h:89
CustomUIsession * m_UIsession
Definition: RunManagerMT.h:85

◆ ~RunManagerMT()

RunManagerMT::~RunManagerMT ( )

Definition at line 96 of file RunManagerMT.cc.

References m_UIsession.

96 { delete m_UIsession; }
CustomUIsession * m_UIsession
Definition: RunManagerMT.h:85

Member Function Documentation

◆ catalog()

const SensitiveDetectorCatalog& RunManagerMT::catalog ( ) const
inline

Definition at line 72 of file RunManagerMT.h.

References m_catalog.

Referenced by RunManagerMTWorker::initializeG4().

72 { return m_catalog; }
SensitiveDetectorCatalog m_catalog
Definition: RunManagerMT.h:107

◆ Connect()

void RunManagerMT::Connect ( RunAction runAction)

Definition at line 273 of file RunManagerMT.cc.

References SimActivityRegistry::beginOfRunSignal_, sim_act::Signaler< T >::connect(), SimActivityRegistry::endOfRunSignal_, RunAction::m_beginOfRunSignal, RunAction::m_endOfRunSignal, and m_registry.

Referenced by SimRunInterface::Connect(), and initializeUserActions().

273  {
276 }
void connect(Observer< const T *> *iObs)
does not take ownership of memory
Definition: Signaler.h:55
SimActivityRegistry::EndOfRunSignal m_endOfRunSignal
Definition: RunAction.h:24
BeginOfRunSignal beginOfRunSignal_
EndOfRunSignal endOfRunSignal_
SimActivityRegistry::BeginOfRunSignal m_beginOfRunSignal
Definition: RunAction.h:23
SimActivityRegistry m_registry
Definition: RunManagerMT.h:106

◆ G4Commands()

const std::vector<std::string>& RunManagerMT::G4Commands ( ) const
inline

Definition at line 74 of file RunManagerMT.h.

References m_G4Commands.

Referenced by RunManagerMTWorker::initializeG4().

74 { return m_G4Commands; }
std::vector< std::string > m_G4Commands
Definition: RunManagerMT.h:102

◆ initG4()

void RunManagerMT::initG4 ( const DDCompactView pDD,
const cms::DDCompactView pDD4hep,
const HepPDT::ParticleDataTable fPDGTable 
)

Definition at line 98 of file RunManagerMT.cc.

References RunAction::BeginOfRunAction(), RPCNoise_example::check, mps_setup::cmd, mps_check::command, beamerCreator::create(), cuts, SimActivityRegistry::dddWorldSignal_, DeadROC_duringRun::dir, Exception, ecalTB2006H4_GenSimDigiReco_cfg::G4cout, get, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), recoMuon::in, initializeUserActions(), m_catalog, m_check, m_currentRun, m_G4Commands, m_g4overlap, m_kernel, m_managerInitialized, m_p, m_physicsList, m_PhysicsTablesDir, m_pPhysics, m_registry, m_RestorePhysicsTables, m_stateManager, m_StorePhysicsTables, m_UIsession, m_userRunAction, m_world, SiStripPI::max, groupFilesInBlocks::nn, FSQDQM_cfi::pvs, AlCaHLTBitMon_QueryRunRegistry::string, and world().

100  {
101  if (m_managerInitialized) {
102  edm::LogWarning("SimG4CoreApplication") << "RunManagerMT::initG4 was already done - exit";
103  return;
104  }
105  bool geoFromDD4hep = m_p.getParameter<bool>("g4GeometryDD4hepSource");
106  bool cuts = m_pPhysics.getParameter<bool>("CutsPerRegion");
107  bool protonCut = m_pPhysics.getParameter<bool>("CutsOnProton");
108  int verb = m_pPhysics.getUntrackedParameter<int>("Verbosity", 0);
109  int stepverb = m_p.getUntrackedParameter<int>("SteppingVerbosity", 0);
110  edm::LogVerbatim("SimG4CoreApplication")
111  << "RunManagerMT: start initialising of geometry DD4hep: " << geoFromDD4hep << "\n"
112  << " cutsPerRegion: " << cuts << " cutForProton: " << protonCut << "\n"
113  << " G4 verbosity: " << verb;
114 
115  G4Timer timer;
116  timer.Start();
117 
118  G4UImanager::GetUIpointer()->SetCoutDestination(m_UIsession);
119  G4UImanager::GetUIpointer()->SetMasterUIManager(true);
120 
121  m_world = std::make_unique<DDDWorld>(pDD, pDD4hep, m_catalog, verb, cuts, protonCut);
122  G4VPhysicalVolume* world = m_world.get()->GetWorldVolume();
123 
124  m_kernel->SetVerboseLevel(verb);
125  edm::LogVerbatim("SimG4CoreApplication")
126  << "RunManagerMT: Define cuts: " << cuts << " Geant4 run manager verbosity: " << verb;
127 
128  const G4RegionStore* regStore = G4RegionStore::GetInstance();
129  const G4PhysicalVolumeStore* pvs = G4PhysicalVolumeStore::GetInstance();
130  const G4LogicalVolumeStore* lvs = G4LogicalVolumeStore::GetInstance();
131  unsigned int numPV = pvs->size();
132  unsigned int numLV = lvs->size();
133  unsigned int nn = regStore->size();
134  edm::LogVerbatim("SimG4CoreApplication")
135  << "RunManagerMT: " << numPV << " physical volumes; " << numLV << " logical volumes; " << nn << " regions.";
136 
137  if (m_check) {
138  m_kernel->SetVerboseLevel(2);
139  }
140  m_kernel->DefineWorldVolume(world, true);
142  m_stateManager->SetNewState(G4State_PreInit);
143 
144  // Create physics list
145  edm::LogVerbatim("SimG4CoreApplication") << "RunManagerMT: create PhysicsList";
146 
147  std::unique_ptr<PhysicsListMakerBase> physicsMaker(
149  if (physicsMaker.get() == nullptr) {
150  throw cms::Exception("Configuration") << "Unable to find the Physics list requested";
151  }
152  m_physicsList = physicsMaker->make(m_pPhysics, m_registry);
153 
154  PhysicsList* phys = m_physicsList.get();
155  if (phys == nullptr) {
156  throw cms::Exception("Configuration") << "Physics list construction failed!";
157  }
158  if (stepverb > 0) {
159  verb = std::max(verb, 1);
160  }
161  G4HadronicParameters::Instance()->SetVerboseLevel(verb);
162  G4EmParameters::Instance()->SetVerbose(verb);
163  G4EmParameters::Instance()->SetWorkerVerbose(std::max(verb - 1, 0));
164 
165  // exotic particle physics
166  double monopoleMass = m_pPhysics.getUntrackedParameter<double>("MonopoleMass", 0);
167  if (monopoleMass > 0.0) {
168  phys->RegisterPhysics(new CMSMonopolePhysics(fPDGTable, m_pPhysics));
169  }
170  bool exotica = m_pPhysics.getUntrackedParameter<bool>("ExoticaTransport", false);
171  if (exotica) {
172  CMSExoticaPhysics exo(phys, m_pPhysics);
173  }
174 
175  // adding GFlash, Russian Roulette for eletrons and gamma,
176  // step limiters on top of any Physics Lists
177  phys->RegisterPhysics(new ParametrisedEMPhysics("EMoptions", m_pPhysics));
178 
180  m_physicsList->SetPhysicsTableRetrieved(m_PhysicsTablesDir);
181  }
182  edm::LogVerbatim("SimG4CoreApplication") << "RunManagerMT: start initialisation of PhysicsList for master";
183 
184  m_physicsList->SetDefaultCutValue(m_pPhysics.getParameter<double>("DefaultCutValue") * CLHEP::cm);
185  m_physicsList->SetCutsWithDefault();
186  m_kernel->SetPhysics(phys);
187 
188  edm::LogVerbatim("SimG4CoreApplication") << "RunManagerMT: PhysicsList and cuts are defined";
189 
190  // Enable couple transportation
191  bool scorer = m_p.getParameter<bool>("UseCommandBaseScorer");
192  if (scorer) {
193  G4ScoringManager* scManager = G4ScoringManager::GetScoringManager();
194  scManager->SetVerboseLevel(1);
195  }
196  // Geant4 UI commands before initialisation of physics
197  if (!m_G4Commands.empty()) {
198  edm::LogVerbatim("SimG4CoreApplication") << "RunManagerMT: Requested UI commands: ";
199  for (const std::string& command : m_G4Commands) {
200  edm::LogVerbatim("SimG4CoreApplication") << " " << command;
201  G4UImanager::GetUIpointer()->ApplyCommand(command);
202  }
203  }
204 
205  m_stateManager->SetNewState(G4State_Init);
206  edm::LogVerbatim("SimG4CoreApplication") << "RunManagerMT: G4State is Init";
207  m_kernel->InitializePhysics();
208  m_kernel->SetUpDecayChannels();
209 
210  if (m_kernel->RunInitialization()) {
211  m_managerInitialized = true;
212  } else {
213  throw cms::Exception("LogicError") << "G4RunManagerKernel initialization failed!";
214  }
215 
216  if (m_StorePhysicsTables) {
217  std::ostringstream dir;
218  dir << m_PhysicsTablesDir << '\0';
219  std::string cmd = std::string("/control/shell mkdir -p ") + m_PhysicsTablesDir;
220  if (!std::ifstream(dir.str().c_str(), std::ios::in))
221  G4UImanager::GetUIpointer()->ApplyCommand(cmd);
222  m_physicsList->StorePhysicsTable(m_PhysicsTablesDir);
223  }
224  // Appload nuclear level data up to Z=84
225  G4NuclearLevelData::GetInstance()->UploadNuclearLevelData(84);
226 
227  if (verb > 1) {
228  m_physicsList->DumpCutValuesTable();
229  }
230  edm::LogVerbatim("SimG4CoreApplication")
231  << "RunManagerMT: Physics is initilized, now initialise user actions, verb=" << verb;
232 
234 
235  // geometry dump
236  auto writeFile = m_p.getUntrackedParameter<std::string>("FileNameGDML", "");
237  if (!writeFile.empty()) {
238  G4GDMLParser gdml;
239  gdml.SetRegionExport(true);
240  gdml.SetEnergyCutsExport(true);
241  gdml.Write(writeFile, m_world->GetWorldVolume(), true);
242  }
243 
244  // G4Region dump file name
245  auto regionFile = m_p.getUntrackedParameter<std::string>("FileNameRegions", "");
246 
247  // Geometry checks
248  if (m_check || !regionFile.empty()) {
250  }
251 
252  m_stateManager->SetNewState(G4State_PreInit);
253  G4HadronicParameters::Instance()->SetVerboseLevel(std::max(verb - 1, 0));
254 
255  // If the Geant4 particle table is needed, decomment the lines below
256  //
257  //G4ParticleTable::GetParticleTable()->DumpTable("ALL");
258  //
259  m_stateManager->SetNewState(G4State_GeomClosed);
260  m_currentRun = new G4Run();
262  timer.Stop();
263  G4cout.precision(4);
264  G4cout << "RunManagerMT: initG4 done " << timer << G4endl;
265 }
const std::string m_PhysicsTablesDir
Definition: RunManagerMT.h:95
Log< level::Info, true > LogVerbatim
bool m_managerInitialized
Definition: RunManagerMT.h:87
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
void BeginOfRunAction(const G4Run *aRun) override
Definition: RunAction.cc:17
G4MTRunManagerKernel * m_kernel
Definition: RunManagerMT.h:83
SensitiveDetectorCatalog m_catalog
Definition: RunManagerMT.h:107
def create(alignables, pedeDump, additionalData, outputFile, config)
G4StateManager * m_stateManager
Definition: RunManagerMT.h:91
std::vector< std::string > m_G4Commands
Definition: RunManagerMT.h:102
G4Run * m_currentRun
Definition: RunManagerMT.h:90
void initializeUserActions()
T getUntrackedParameter(std::string const &, T const &) const
TkSoA const *__restrict__ CAHitNtupletGeneratorKernelsGPU::QualityCuts cuts
edm::ParameterSet m_p
Definition: RunManagerMT.h:103
bool m_StorePhysicsTables
Definition: RunManagerMT.h:96
const DDDWorld & world() const
Definition: RunManagerMT.h:70
std::unique_ptr< PhysicsList > m_physicsList
Definition: RunManagerMT.h:86
std::unique_ptr< DDDWorld > m_world
Definition: RunManagerMT.h:105
edm::ParameterSet m_pPhysics
Definition: RunManagerMT.h:99
DDDWorldSignal dddWorldSignal_
bool m_RestorePhysicsTables
Definition: RunManagerMT.h:97
list command
Definition: mps_check.py:25
list cmd
Definition: mps_setup.py:244
edm::ParameterSet m_g4overlap
Definition: RunManagerMT.h:101
#define get
Log< level::Warning, false > LogWarning
RunAction * m_userRunAction
Definition: RunManagerMT.h:89
CustomUIsession * m_UIsession
Definition: RunManagerMT.h:85
SimActivityRegistry m_registry
Definition: RunManagerMT.h:106

◆ initializeUserActions()

void RunManagerMT::initializeUserActions ( )

Definition at line 267 of file RunManagerMT.cc.

References Connect(), m_pRunAction, m_runInterface, m_userRunAction, and g4SimHits_cfi::RunAction.

Referenced by initG4().

267  {
268  m_runInterface = std::make_unique<SimRunInterface>(this, true);
271 }
void Connect(RunAction *)
edm::ParameterSet m_pRunAction
Definition: RunManagerMT.h:100
RunAction
list of unwanted particles (gluons and quarks)
std::unique_ptr< SimRunInterface > m_runInterface
Definition: RunManagerMT.h:93
RunAction * m_userRunAction
Definition: RunManagerMT.h:89

◆ physicsListForWorker()

PhysicsList* RunManagerMT::physicsListForWorker ( ) const
inline

Definition at line 78 of file RunManagerMT.h.

References m_physicsList.

Referenced by RunManagerMTWorker::initializeG4().

78 { return m_physicsList.get(); }
std::unique_ptr< PhysicsList > m_physicsList
Definition: RunManagerMT.h:86

◆ stopG4()

void RunManagerMT::stopG4 ( )

Definition at line 278 of file RunManagerMT.cc.

References m_runTerminated, m_stateManager, and terminateRun().

278  {
279  edm::LogVerbatim("SimG4CoreApplication") << "RunManagerMT::stopG4";
280  G4GeometryManager::GetInstance()->OpenGeometry();
281  m_stateManager->SetNewState(G4State_Quit);
282  if (!m_runTerminated) {
283  terminateRun();
284  }
285  edm::LogVerbatim("SimG4CoreApplication") << "RunManagerMT::stopG4 done";
286 }
Log< level::Info, true > LogVerbatim
void terminateRun()
bool m_runTerminated
Definition: RunManagerMT.h:88
G4StateManager * m_stateManager
Definition: RunManagerMT.h:91

◆ terminateRun()

void RunManagerMT::terminateRun ( )
private

Definition at line 288 of file RunManagerMT.cc.

References RunAction::EndOfRunAction(), m_currentRun, m_kernel, m_runTerminated, and m_userRunAction.

Referenced by stopG4().

288  {
289  edm::LogVerbatim("SimG4CoreApplication") << "RunManagerMT::terminateRun";
290  if (nullptr != m_userRunAction) {
292  delete m_userRunAction;
293  m_userRunAction = nullptr;
294  }
295  if (!m_runTerminated) {
296  m_kernel->RunTermination();
297  }
298  m_runTerminated = true;
299  edm::LogVerbatim("SimG4CoreApplication") << "RunManagerMT::terminateRun done";
300 }
Log< level::Info, true > LogVerbatim
G4MTRunManagerKernel * m_kernel
Definition: RunManagerMT.h:83
bool m_runTerminated
Definition: RunManagerMT.h:88
G4Run * m_currentRun
Definition: RunManagerMT.h:90
RunAction * m_userRunAction
Definition: RunManagerMT.h:89
void EndOfRunAction(const G4Run *aRun) override
Definition: RunAction.cc:26

◆ world()

const DDDWorld& RunManagerMT::world ( ) const
inline

Definition at line 70 of file RunManagerMT.h.

References m_world.

Referenced by initG4(), and RunManagerMTWorker::initializeG4().

70 { return *m_world; }
std::unique_ptr< DDDWorld > m_world
Definition: RunManagerMT.h:105

Friends And Related Function Documentation

◆ RunManagerMTWorker

friend class RunManagerMTWorker
friend

Definition at line 52 of file RunManagerMT.h.

Member Data Documentation

◆ m_catalog

SensitiveDetectorCatalog RunManagerMT::m_catalog
private

Definition at line 107 of file RunManagerMT.h.

Referenced by catalog(), and initG4().

◆ m_check

bool RunManagerMT::m_check
private

Definition at line 98 of file RunManagerMT.h.

Referenced by initG4(), and RunManagerMT().

◆ m_currentRun

G4Run* RunManagerMT::m_currentRun
private

Definition at line 90 of file RunManagerMT.h.

Referenced by initG4(), RunManagerMT(), and terminateRun().

◆ m_G4Commands

std::vector<std::string> RunManagerMT::m_G4Commands
private

Definition at line 102 of file RunManagerMT.h.

Referenced by G4Commands(), and initG4().

◆ m_g4overlap

edm::ParameterSet RunManagerMT::m_g4overlap
private

Definition at line 101 of file RunManagerMT.h.

Referenced by initG4().

◆ m_kernel

G4MTRunManagerKernel* RunManagerMT::m_kernel
private

Definition at line 83 of file RunManagerMT.h.

Referenced by initG4(), RunManagerMT(), and terminateRun().

◆ m_managerInitialized

bool RunManagerMT::m_managerInitialized
private

Definition at line 87 of file RunManagerMT.h.

Referenced by initG4().

◆ m_p

edm::ParameterSet RunManagerMT::m_p
private

Definition at line 103 of file RunManagerMT.h.

Referenced by initG4().

◆ m_physicsList

std::unique_ptr<PhysicsList> RunManagerMT::m_physicsList
private

Definition at line 86 of file RunManagerMT.h.

Referenced by initG4(), physicsListForWorker(), and RunManagerMT().

◆ m_PhysicsTablesDir

const std::string RunManagerMT::m_PhysicsTablesDir
private

Definition at line 95 of file RunManagerMT.h.

Referenced by initG4().

◆ m_pPhysics

edm::ParameterSet RunManagerMT::m_pPhysics
private

Definition at line 99 of file RunManagerMT.h.

Referenced by initG4().

◆ m_pRunAction

edm::ParameterSet RunManagerMT::m_pRunAction
private

Definition at line 100 of file RunManagerMT.h.

Referenced by initializeUserActions().

◆ m_registry

SimActivityRegistry RunManagerMT::m_registry
private

Definition at line 106 of file RunManagerMT.h.

Referenced by Connect(), and initG4().

◆ m_RestorePhysicsTables

bool RunManagerMT::m_RestorePhysicsTables
private

Definition at line 97 of file RunManagerMT.h.

Referenced by initG4().

◆ m_runInterface

std::unique_ptr<SimRunInterface> RunManagerMT::m_runInterface
private

Definition at line 93 of file RunManagerMT.h.

Referenced by initializeUserActions(), and RunManagerMT().

◆ m_runTerminated

bool RunManagerMT::m_runTerminated
private

Definition at line 88 of file RunManagerMT.h.

Referenced by stopG4(), and terminateRun().

◆ m_stateManager

G4StateManager* RunManagerMT::m_stateManager
private

Definition at line 91 of file RunManagerMT.h.

Referenced by initG4(), RunManagerMT(), and stopG4().

◆ m_StorePhysicsTables

bool RunManagerMT::m_StorePhysicsTables
private

Definition at line 96 of file RunManagerMT.h.

Referenced by initG4().

◆ m_UIsession

CustomUIsession* RunManagerMT::m_UIsession
private

Definition at line 85 of file RunManagerMT.h.

Referenced by initG4(), RunManagerMT(), and ~RunManagerMT().

◆ m_userRunAction

RunAction* RunManagerMT::m_userRunAction
private

Definition at line 89 of file RunManagerMT.h.

Referenced by initG4(), initializeUserActions(), RunManagerMT(), and terminateRun().

◆ m_world

std::unique_ptr<DDDWorld> RunManagerMT::m_world
private

Definition at line 105 of file RunManagerMT.h.

Referenced by initG4(), RunManagerMT(), and world().