Geant4  10.02.p01
G4PDefSplitter< T > Class Template Reference

#include <G4PDefSplitter.hh>

Public Member Functions

 G4PDefSplitter ()
 
G4int CreateSubInstance ()
 
void NewSubInstances ()
 
void FreeSlave ()
 
T * GetOffset ()
 
void UseWorkArea (T *newOffset)
 
T * FreeWorkArea ()
 

Public Attributes

G4PART_DLL G4ThreadLocalStatic
G4int 
slavetotalspace = 0
 
G4PART_DLL G4ThreadLocalStatic T * offset = 0
 

Private Attributes

G4int totalobj
 
G4Mutex mutex
 

Detailed Description

template<class T>
class G4PDefSplitter< T >

Definition at line 53 of file G4PDefSplitter.hh.

Constructor & Destructor Documentation

template<class T >
G4PDefSplitter< T >::G4PDefSplitter ( )
inline

Definition at line 57 of file G4PDefSplitter.hh.

References G4MUTEXINIT, and G4PDefSplitter< T >::mutex.

Member Function Documentation

template<class T >
G4int G4PDefSplitter< T >::CreateSubInstance ( )
inline

Definition at line 61 of file G4PDefSplitter.hh.

References G4TemplateAutoLock< M, L, U >::lock(), G4PDefSplitter< T >::mutex, G4PDefSplitter< T >::NewSubInstances(), G4PDefSplitter< T >::slavetotalspace, G4PDefSplitter< T >::totalobj, and G4TemplateAutoLock< M, L, U >::unlock().

Referenced by G4ParticleDefinition::SetParticleDefinitionID().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class T >
void G4PDefSplitter< T >::FreeSlave ( )
inline

Definition at line 99 of file G4PDefSplitter.hh.

References free, and G4PDefSplitter< T >::offset.

Referenced by G4ParticlesWorkspace::DestroyWorkspace().

+ Here is the caller graph for this function:

template<class T >
T* G4PDefSplitter< T >::FreeWorkArea ( )
inline

Definition at line 133 of file G4PDefSplitter.hh.

References G4PDefSplitter< T >::offset.

template<class T >
T* G4PDefSplitter< T >::GetOffset ( )
inline

Definition at line 108 of file G4PDefSplitter.hh.

References G4PDefSplitter< T >::offset.

Referenced by G4ParticlesWorkspace::G4ParticlesWorkspace().

+ Here is the caller graph for this function:

template<class T >
void G4PDefSplitter< T >::NewSubInstances ( )
inline

Definition at line 76 of file G4PDefSplitter.hh.

References FatalException, G4Exception(), G4PDefSplitter< T >::mutex, G4PDefSplitter< T >::offset, G4PDefSplitter< T >::slavetotalspace, and G4PDefSplitter< T >::totalobj.

Referenced by G4PDefSplitter< T >::CreateSubInstance(), and G4ParticlesWorkspace::InitialiseWorkspace().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class T >
void G4PDefSplitter< T >::UseWorkArea ( T *  newOffset)
inline

Definition at line 110 of file G4PDefSplitter.hh.

References FatalException, G4Exception(), JustWarning, and G4PDefSplitter< T >::offset.

Referenced by G4ParticlesWorkspace::ReleaseWorkspace(), and G4ParticlesWorkspace::UseWorkspace().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

template<class T >
G4int G4PDefSplitter< T >::totalobj
private

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