Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Static Public Member Functions
G4PhysicsModelCatalog Class Reference

#include <G4PhysicsModelCatalog.hh>

Static Public Member Functions

static G4int Register (G4String &)
 
static G4StringGetModelName (G4int)
 
static G4int GetIndex (G4String &)
 
static G4int Entries ()
 
static void Destroy ()
 

Detailed Description

Definition at line 46 of file G4PhysicsModelCatalog.hh.

Member Function Documentation

void G4PhysicsModelCatalog::Destroy ( void  )
static

Definition at line 74 of file G4PhysicsModelCatalog.cc.

References G4Threading::IsWorkerThread().

75 {
76 #ifdef G4MULTITHREADED
77  if(G4Threading::IsWorkerThread()) return;
78 #endif
79  if(catalog) delete catalog;
80  catalog = 0;
81 }
G4bool IsWorkerThread()
Definition: G4Threading.cc:104
G4int G4PhysicsModelCatalog::Entries ( )
static

Definition at line 71 of file G4PhysicsModelCatalog.cc.

Referenced by GetIndex(), and GetModelName().

72 { return (catalog) ? G4int(catalog->size()) : -1; }
int G4int
Definition: G4Types.hh:78
G4int G4PhysicsModelCatalog::GetIndex ( G4String name)
static

Definition at line 63 of file G4PhysicsModelCatalog.cc.

References Entries().

Referenced by Register().

64 {
65  if(!catalog) new G4PhysicsModelCatalog;
66  for(G4int idx=0;idx<Entries();idx++)
67  { if((*catalog)[idx]==name) return idx; }
68  return -1;
69 }
const XML_Char * name
int G4int
Definition: G4Types.hh:78
G4String & G4PhysicsModelCatalog::GetModelName ( G4int  idx)
static

Definition at line 55 of file G4PhysicsModelCatalog.cc.

References Entries().

Referenced by G4Track::GetCreatorModelName().

56 {
57  static G4String undef = "Undefined";
58  if(!catalog) new G4PhysicsModelCatalog;
59  if(idx>=0 && idx<Entries()) return (*catalog)[idx];
60  return undef;
61 }
G4int G4PhysicsModelCatalog::Register ( G4String name)
static

Definition at line 44 of file G4PhysicsModelCatalog.cc.

References GetIndex(), and G4Threading::IsWorkerThread().

Referenced by G4VAtomDeexcitation::G4VAtomDeexcitation(), G4VEmProcess::PreparePhysicsTable(), and G4VEnergyLossProcess::PreparePhysicsTable().

45 {
46  G4int idx = GetIndex(name);
47  if(idx>=0) return idx;
48 #ifdef G4MULTITHREADED
49  if(G4Threading::IsWorkerThread()) return -1;
50 #endif
51  catalog->push_back(name);
52  return catalog->size()-1;
53 }
static G4int GetIndex(G4String &)
int G4int
Definition: G4Types.hh:78
G4bool IsWorkerThread()
Definition: G4Threading.cc:104

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