EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4SolidStore Class Reference

#include <east/blob/main/G4_Patches/G4.v11.0.p01/source/geometry/management/include/G4SolidStore.hh>

+ Inheritance diagram for G4SolidStore:
+ Collaboration diagram for G4SolidStore:

Public Member Functions

G4VSolid * GetSolid (const G4String &name, G4bool verbose=true, G4bool reverseSearch=false) const
 
G4bool IsMapValid () const
 
void SetMapValid (G4bool val)
 
const std::map< G4String,
std::vector< G4VSolid * > > & 
GetMap () const
 
void UpdateMap ()
 
virtual ~G4SolidStore ()
 
 G4SolidStore (const G4SolidStore &)=delete
 
G4SolidStoreoperator= (const G4SolidStore &)=delete
 

Static Public Member Functions

static void Register (G4VSolid *pSolid)
 
static void DeRegister (G4VSolid *pSolid)
 
static G4SolidStoreGetInstance ()
 
static void SetNotifier (G4VStoreNotifier *pNotifier)
 
static void Clean ()
 

Protected Member Functions

 G4SolidStore ()
 

Private Attributes

std::map< G4String,
std::vector< G4VSolid * > > 
bmap
 
G4bool mvalid = false
 

Static Private Attributes

static G4SolidStorefgInstance = nullptr
 
static G4ThreadLocal
G4VStoreNotifier * 
fgNotifier = nullptr
 
static G4ThreadLocal G4bool locked = false
 

Additional Inherited Members

- Public Attributes inherited from std::vector< T >
T elements
 STL member.
 

Detailed Description

Definition at line 54 of file G4SolidStore.hh.

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

Constructor & Destructor Documentation

G4SolidStore::~G4SolidStore ( )
virtual

Definition at line 65 of file G4SolidStore.cc.

View newest version in sPHENIX GitHub at line 65 of file G4SolidStore.cc

References Clean().

+ Here is the call graph for this function:

G4SolidStore::G4SolidStore ( const G4SolidStore )
delete
G4SolidStore::G4SolidStore ( )
protected

Definition at line 55 of file G4SolidStore.cc.

View newest version in sPHENIX GitHub at line 55 of file G4SolidStore.cc

Member Function Documentation

void G4SolidStore::Clean ( )
static

Definition at line 74 of file G4SolidStore.cc.

View newest version in sPHENIX GitHub at line 74 of file G4SolidStore.cc

References bmap, fgNotifier, GetInstance(), locked, mvalid, and pos().

Referenced by PHG4PhenixDetector::Construct(), and ~G4SolidStore().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SolidStore::DeRegister ( G4VSolid *  pSolid)
static

Definition at line 179 of file G4SolidStore.cc.

View newest version in sPHENIX GitHub at line 179 of file G4SolidStore.cc

References bmap, fgNotifier, GetInstance(), it, locked, and mvalid.

+ Here is the call graph for this function:

G4SolidStore * G4SolidStore::GetInstance ( )
static

Definition at line 262 of file G4SolidStore.cc.

View newest version in sPHENIX GitHub at line 262 of file G4SolidStore.cc

References fgInstance.

Referenced by Clean(), PHG4PhenixDetector::Construct(), DeRegister(), GetSolid(), eASTDetectorConstruction::ListSolids(), Register(), SetNotifier(), and UpdateMap().

+ Here is the caller graph for this function:

const std::map<G4String, std::vector<G4VSolid*> >& G4SolidStore::GetMap ( ) const
inline

Definition at line 79 of file G4SolidStore.hh.

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

References bmap.

G4VSolid * G4SolidStore::GetSolid ( const G4String &  name,
G4bool  verbose = true,
G4bool  reverseSearch = false 
) const

Definition at line 221 of file G4SolidStore.cc.

View newest version in sPHENIX GitHub at line 221 of file G4SolidStore.cc

References bmap, GetInstance(), mvalid, pos(), and UpdateMap().

+ Here is the call graph for this function:

G4bool G4SolidStore::IsMapValid ( ) const
inline

Definition at line 75 of file G4SolidStore.hh.

View newest version in sPHENIX GitHub at line 75 of file G4SolidStore.hh

References mvalid.

G4SolidStore& G4SolidStore::operator= ( const G4SolidStore )
delete
void G4SolidStore::Register ( G4VSolid *  pSolid)
static

Definition at line 156 of file G4SolidStore.cc.

View newest version in sPHENIX GitHub at line 156 of file G4SolidStore.cc

References bmap, fgNotifier, GetInstance(), it, and mvalid.

+ Here is the call graph for this function:

void G4SolidStore::SetMapValid ( G4bool  val)
inline

Definition at line 76 of file G4SolidStore.hh.

View newest version in sPHENIX GitHub at line 76 of file G4SolidStore.hh

References mvalid.

void G4SolidStore::SetNotifier ( G4VStoreNotifier *  pNotifier)
static

Definition at line 119 of file G4SolidStore.cc.

View newest version in sPHENIX GitHub at line 119 of file G4SolidStore.cc

References fgNotifier, and GetInstance().

+ Here is the call graph for this function:

void G4SolidStore::UpdateMap ( )

Definition at line 129 of file G4SolidStore.cc.

View newest version in sPHENIX GitHub at line 129 of file G4SolidStore.cc

References bmap, GetInstance(), it, mvalid, and pos().

Referenced by GetSolid().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

std::map<G4String, std::vector<G4VSolid*> > G4SolidStore::bmap
private

Definition at line 101 of file G4SolidStore.hh.

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

Referenced by Clean(), DeRegister(), GetMap(), GetSolid(), Register(), and UpdateMap().

G4SolidStore * G4SolidStore::fgInstance = nullptr
staticprivate

Definition at line 97 of file G4SolidStore.hh.

View newest version in sPHENIX GitHub at line 97 of file G4SolidStore.hh

Referenced by GetInstance().

G4ThreadLocal G4VStoreNotifier * G4SolidStore::fgNotifier = nullptr
staticprivate

Definition at line 98 of file G4SolidStore.hh.

View newest version in sPHENIX GitHub at line 98 of file G4SolidStore.hh

Referenced by Clean(), DeRegister(), Register(), and SetNotifier().

G4ThreadLocal G4bool G4SolidStore::locked = false
staticprivate

Definition at line 99 of file G4SolidStore.hh.

View newest version in sPHENIX GitHub at line 99 of file G4SolidStore.hh

Referenced by Clean(), and DeRegister().

G4bool G4SolidStore::mvalid = false
private

Definition at line 102 of file G4SolidStore.hh.

View newest version in sPHENIX GitHub at line 102 of file G4SolidStore.hh

Referenced by Clean(), DeRegister(), GetSolid(), IsMapValid(), Register(), SetMapValid(), and UpdateMap().


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