Geant4  10.01.p02
G4SolidsWorkspacePool Class Reference

#include <G4SolidsWorkspacePool.hh>

+ Collaboration diagram for G4SolidsWorkspacePool:

Public Member Functions

G4SolidsWorkspaceCreateWorkspace ()
 
void CreateAndUseWorkspace ()
 
G4SolidsWorkspaceFindOrCreateWorkspace ()
 
G4SolidsWorkspaceGetWorkspace ()
 
void Recycle (G4SolidsWorkspace *)
 
void CleanUpAndDestroyAllWorkspaces ()
 

Static Public Member Functions

static G4SolidsWorkspacePoolGetInstance ()
 

Protected Member Functions

void ReleaseAndDestroyWorkspace (G4SolidsWorkspace *)
 

Private Member Functions

 G4SolidsWorkspacePool ()
 
 ~G4SolidsWorkspacePool ()
 

Static Private Attributes

static G4SolidsWorkspacePoolthePool =0
 
static G4ThreadLocal
G4SolidsWorkspace
fMyWorkspace =0
 

Detailed Description

Definition at line 38 of file G4SolidsWorkspacePool.hh.

Constructor & Destructor Documentation

G4SolidsWorkspacePool::G4SolidsWorkspacePool ( )
private

Definition at line 123 of file G4SolidsWorkspacePool.cc.

Referenced by GetInstance().

+ Here is the caller graph for this function:

G4SolidsWorkspacePool::~G4SolidsWorkspacePool ( )
private

Definition at line 128 of file G4SolidsWorkspacePool.cc.

Member Function Documentation

void G4SolidsWorkspacePool::CleanUpAndDestroyAllWorkspaces ( )

Definition at line 118 of file G4SolidsWorkspacePool.cc.

void G4SolidsWorkspacePool::CreateAndUseWorkspace ( )

Definition at line 74 of file G4SolidsWorkspacePool.cc.

References CreateWorkspace().

Referenced by G4WorkerThread::BuildGeometryAndPhysicsVector().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4SolidsWorkspace * G4SolidsWorkspacePool::CreateWorkspace ( )

Definition at line 50 of file G4SolidsWorkspacePool.cc.

References FatalException, fMyWorkspace, and G4Exception().

Referenced by CreateAndUseWorkspace(), and FindOrCreateWorkspace().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4SolidsWorkspace * G4SolidsWorkspacePool::FindOrCreateWorkspace ( )

Definition at line 81 of file G4SolidsWorkspacePool.cc.

References CreateWorkspace(), fMyWorkspace, and G4SolidsWorkspace::UseWorkspace().

+ Here is the call graph for this function:

G4SolidsWorkspacePool * G4SolidsWorkspacePool::GetInstance ( void  )
static

Definition at line 42 of file G4SolidsWorkspacePool.cc.

References G4SolidsWorkspacePool(), and thePool.

Referenced by G4WorkerThread::BuildGeometryAndPhysicsVector(), G4WorkerThread::DestroyGeometryAndPhysicsVector(), and G4WorkerThread::UpdateGeometryAndPhysicsVectorFromMaster().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4SolidsWorkspace* G4SolidsWorkspacePool::GetWorkspace ( )
inline

Definition at line 53 of file G4SolidsWorkspacePool.hh.

References fMyWorkspace.

Referenced by G4WorkerThread::DestroyGeometryAndPhysicsVector(), and G4WorkerThread::UpdateGeometryAndPhysicsVectorFromMaster().

+ Here is the caller graph for this function:

void G4SolidsWorkspacePool::Recycle ( G4SolidsWorkspace geometryWrk)

Definition at line 107 of file G4SolidsWorkspacePool.cc.

References G4SolidsWorkspace::ReleaseWorkspace().

+ Here is the call graph for this function:

void G4SolidsWorkspacePool::ReleaseAndDestroyWorkspace ( G4SolidsWorkspace )
protected

Member Data Documentation

G4ThreadLocal G4SolidsWorkspace * G4SolidsWorkspacePool::fMyWorkspace =0
staticprivate

Definition at line 76 of file G4SolidsWorkspacePool.hh.

Referenced by CreateWorkspace(), FindOrCreateWorkspace(), and GetWorkspace().

G4SolidsWorkspacePool * G4SolidsWorkspacePool::thePool =0
staticprivate

Definition at line 74 of file G4SolidsWorkspacePool.hh.

Referenced by GetInstance().


The documentation for this class was generated from the following files: