Import Geant4 10.4.0.beta source tree
This commit is contained in:
@@ -31,22 +31,20 @@
|
||||
#define G4SOLIDSWORKSPACEPOOL_HH
|
||||
|
||||
class G4SolidsWorkspace;
|
||||
// #include "G4SolidsWorkspace.hh"
|
||||
|
||||
//Note: Investigate potential to make it a template - on the workspace type
|
||||
|
||||
class G4SolidsWorkspacePool
|
||||
{
|
||||
public:
|
||||
static G4SolidsWorkspacePool* GetInstance();
|
||||
|
||||
// For use with simple MT mode - each thread gets a workspace and uses it until end
|
||||
G4SolidsWorkspace* CreateWorkspace();
|
||||
// For use with simple MT mode - each thread gets a workspace
|
||||
// and uses it until end
|
||||
|
||||
void CreateAndUseWorkspace(); // Create it (as above) and use it
|
||||
|
||||
// For use with 'dynamic' model of threading - workspaces can be recycled
|
||||
G4SolidsWorkspace* FindOrCreateWorkspace();
|
||||
// For use with 'dynamic' model of threading - workspaces can be recycled
|
||||
// Reuse an existing workspace - or create a new one if needed.
|
||||
// This will never fail, except if system is out of resources
|
||||
|
||||
@@ -60,8 +58,6 @@ class G4SolidsWorkspacePool
|
||||
// To be called once at the end of the job
|
||||
|
||||
protected:
|
||||
void ReleaseAndDestroyWorkspace(G4SolidsWorkspace*);
|
||||
// Destroy workspace - after releasing it
|
||||
|
||||
// void RegisterWarehouse( G4GeometryWarehouse *) ;
|
||||
// The (optional) warehouse keeps a list of free workspaces
|
||||
@@ -73,7 +69,7 @@ class G4SolidsWorkspacePool
|
||||
private:
|
||||
static G4SolidsWorkspacePool* thePool;
|
||||
|
||||
static G4ThreadLocal G4SolidsWorkspace* fMyWorkspace;
|
||||
static G4ThreadLocal G4SolidsWorkspace* fMyWorkspace;
|
||||
// The thread's workspace - if assigned.
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user