74 fGeometryWrk->ReleaseAndDestroyWorkspace();
109 typedef std::map<G4LogicalVolume*,std::pair<G4VSensitiveDetector*,G4FieldManager*> > LV2SDFM;
113 typedef std::map<G4Region*,std::pair<G4FastSimulationManager*,G4UserSteppingAction*> > R2FSM;
116 for(
size_t ip=0; ip<mLogVolStore->size(); ip++)
137 if ( sd || fmgr ) lvmap[lv] = std::make_pair(sd,fmgr);
143 for(
size_t ir=0; ir<mRegStore->size(); ir++)
148 if ( reg || usa ) rgnmap[
reg] = std::make_pair(fsm,usa);
177 for ( LV2SDFM::const_iterator it = lvmap.begin() ; it != lvmap.end() ; ++it )
196 for ( R2FSM::const_iterator it3 = rgnmap.begin() ; it3 != rgnmap.end() ; it3++ )
208 if ( affinity == 0 )
return;
212 G4int offset = affinity;
215 G4Exception(
"G4WorkerThread::SetPinAffinity",
"Run0035",
217 "Cannot set thread affinity, affinity parameter larger than number of cores");
227 cpuindex = myidx + (myidx>=offset);
231 #if defined(G4MULTITHREADED)
G4bool G4SetPinAffinity(G4int idx, G4Thread &at)
G4SolidsWorkspace * GetWorkspace()
static pool_type * GetPool()
void CreateAndUseWorkspace()
G4GeometryWorkspace * GetWorkspace()
static void UpdateGeometryAndPhysicsVectorFromMaster()
static pool_type * GetPool()
static void BuildGeometryAndPhysicsVector()
static G4SolidsWorkspacePool * GetInstance()
G4FieldManager * GetMasterFieldManager() const
void SetThreadId(G4int threadId)
void SetFieldManager(G4FieldManager *pFieldMgr, G4bool forceToAllDaughters)
static const G4double reg
void SetPinAffinity(G4int aff) const
static G4RegionStore * GetInstance()
void SetFastSimulationManager(G4FastSimulationManager *fsm)
G4FieldManager * GetFieldManager() const
G4VSensitiveDetector * GetMasterSensitiveDetector() const
G4GLOB_DLL std::ostream G4cout
G4int GetNumberThreads() const
G4int G4GetNumberOfCores()
#define G4THREADSELF(nothing)
static G4LogicalVolumeStore * GetInstance()
G4int GetThreadId() const
static const double second
void CreateAndUseWorkspace()
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
void InitialiseWorkspace()
G4FastSimulationManager * GetFastSimulationManager() const
static void DestroyGeometryAndPhysicsVector()
static G4GeometryWorkspacePool * GetInstance()
void InitialiseWorkspace()
void CreateAndUseWorkspace()
void SetRegionalSteppingAction(G4UserSteppingAction *rusa)
G4VSensitiveDetector * GetSensitiveDetector() const
void SetNumberThreads(G4int numnberThreads)
void SetSensitiveDetector(G4VSensitiveDetector *pSDetector)
G4UserSteppingAction * GetRegionalSteppingAction() const