ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4GeomSplitter< T > Class Template Reference

#include <geant4/tree/geant4-10.6-release/source/geometry/management/include/G4GeomSplitter.hh>

Public Member Functions

 G4GeomSplitter ()
 
TReallocate (G4int size)
 
G4int CreateSubInstance ()
 
void CopyMasterContents ()
 
void SlaveCopySubInstanceArray ()
 
void SlaveInitializeSubInstance ()
 
void SlaveReCopySubInstanceArray ()
 
void FreeSlave ()
 
TGetOffset ()
 
void UseWorkArea (T *newOffset)
 
TFreeWorkArea ()
 

Static Public Attributes

static G4GEOM_DLL G4ThreadLocal Toffset = nullptr
 

Private Attributes

G4int totalobj
 
G4int totalspace
 
TsharedOffset
 
G4Mutex mutex
 

Detailed Description

template<class T>
class G4GeomSplitter< T >

Definition at line 44 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 44 of file G4GeomSplitter.hh

Constructor & Destructor Documentation

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

Definition at line 48 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 48 of file G4GeomSplitter.hh

References G4MUTEXINIT.

Member Function Documentation

template<class T >
void G4GeomSplitter< T >::CopyMasterContents ( )
inline

Definition at line 79 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 79 of file G4GeomSplitter.hh

References G4GeomSplitter< T >::offset, G4GeomSplitter< T >::sharedOffset, T, and G4GeomSplitter< T >::totalspace.

Referenced by G4GeomSplitter< T >::SlaveCopySubInstanceArray(), and G4GeomSplitter< T >::SlaveReCopySubInstanceArray().

+ Here is the caller graph for this function:

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

Definition at line 60 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 60 of file G4GeomSplitter.hh

References FatalException, G4Exception(), G4GeomSplitter< T >::offset, G4GeomSplitter< T >::Reallocate(), G4GeomSplitter< T >::sharedOffset, G4GeomSplitter< T >::totalobj, and G4GeomSplitter< T >::totalspace.

Referenced by G4LogicalVolume::G4LogicalVolume(), G4PolyconeSide::G4PolyconeSide(), G4PolyhedraSide::G4PolyhedraSide(), G4PVReplica::G4PVReplica(), G4Region::G4Region(), and G4VPhysicalVolume::G4VPhysicalVolume().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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

Definition at line 138 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 138 of file G4GeomSplitter.hh

References G4GeomSplitter< T >::offset.

Referenced by G4VPhysicalVolume::Clean(), G4Region::Clean(), G4LogicalVolume::Clean(), G4SolidsWorkspace::DestroyWorkspace(), and G4GeometryWorkspace::DestroyWorkspace().

+ Here is the caller graph for this function:

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

Definition at line 162 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 162 of file G4GeomSplitter.hh

References G4GeomSplitter< T >::offset, and T.

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

Definition at line 148 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 148 of file G4GeomSplitter.hh

References G4GeomSplitter< T >::offset.

Referenced by G4GeometryWorkspace::G4GeometryWorkspace(), and G4SolidsWorkspace::G4SolidsWorkspace().

+ Here is the caller graph for this function:

template<class T >
T* G4GeomSplitter< T >::Reallocate ( G4int  size)
inline

Definition at line 54 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 54 of file G4GeomSplitter.hh

References G4GeomSplitter< T >::offset, T, and G4GeomSplitter< T >::totalspace.

Referenced by G4GeomSplitter< T >::CreateSubInstance(), G4GeomSplitter< T >::SlaveCopySubInstanceArray(), and G4GeomSplitter< T >::SlaveInitializeSubInstance().

+ Here is the caller graph for this function:

template<class T >
void G4GeomSplitter< T >::SlaveCopySubInstanceArray ( )
inline

Definition at line 85 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 85 of file G4GeomSplitter.hh

References G4GeomSplitter< T >::CopyMasterContents(), FatalException, G4Exception(), G4GeomSplitter< T >::offset, G4GeomSplitter< T >::Reallocate(), G4GeomSplitter< T >::totalspace, and G4TemplateAutoLock< _Mutex_t >::unlock().

Referenced by G4PVReplica::InitialiseWorker(), G4VPhysicalVolume::InitialiseWorker(), G4LogicalVolume::InitialiseWorker(), and G4GeometryWorkspace::InitialiseWorkspace().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class T >
void G4GeomSplitter< T >::SlaveInitializeSubInstance ( )
inline

Definition at line 101 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 101 of file G4GeomSplitter.hh

References FatalException, G4Exception(), G4GeomSplitter< T >::offset, G4GeomSplitter< T >::Reallocate(), and G4GeomSplitter< T >::totalspace.

Referenced by G4SolidsWorkspace::InitialiseWorkspace(), G4GeometryWorkspace::InitialiseWorkspace(), and G4GeomSplitter< T >::SlaveReCopySubInstanceArray().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class T >
void G4GeomSplitter< T >::SlaveReCopySubInstanceArray ( )
inline

Definition at line 122 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 122 of file G4GeomSplitter.hh

References G4GeomSplitter< T >::CopyMasterContents(), G4Exception(), JustWarning, G4GeomSplitter< T >::offset, and G4GeomSplitter< T >::SlaveInitializeSubInstance().

+ Here is the call graph for this function:

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

Definition at line 150 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 150 of file G4GeomSplitter.hh

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

Referenced by G4SolidsWorkspace::ReleaseWorkspace(), G4GeometryWorkspace::ReleaseWorkspace(), G4SolidsWorkspace::UseWorkspace(), and G4GeometryWorkspace::UseWorkspace().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

template<class T >
G4Mutex G4GeomSplitter< T >::mutex
private

Definition at line 180 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 180 of file G4GeomSplitter.hh

template<class T >
T* G4GeomSplitter< T >::sharedOffset
private

Definition at line 179 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 179 of file G4GeomSplitter.hh

Referenced by G4GeomSplitter< T >::CopyMasterContents(), and G4GeomSplitter< T >::CreateSubInstance().

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

Definition at line 177 of file G4GeomSplitter.hh.

View newest version in sPHENIX GitHub at line 177 of file G4GeomSplitter.hh

Referenced by G4GeomSplitter< T >::CreateSubInstance().


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