Geant4  10.01.p03
CCalMaterialFactory Class Reference

#include <CCalMaterialFactory.hh>

+ Collaboration diagram for CCalMaterialFactory:

Public Types

enum  MatDescription { byWeight, byVolume, byAtomic }
 

Public Member Functions

 ~CCalMaterialFactory ()
 
G4MaterialfindMaterial (const G4String &) const
 
G4ElementfindElement (const G4String &) const
 
G4ElementaddElement (const G4String &, const G4String &, G4double, G4double, G4double)
 
G4MaterialaddMaterial (const G4String &nam, G4double density, G4int nconst, G4String mats[], G4double prop[], MatDescription md=byWeight)
 
void readElements (const G4String &)
 
void readMaterials (const G4String &)
 

Static Public Member Functions

static CCalMaterialFactorygetInstance (const G4String &, const G4String &)
 
static CCalMaterialFactorygetInstance (const G4String &)
 
static CCalMaterialFactorygetInstance ()
 

Protected Member Functions

void readElements (std::ifstream &)
 
void readMaterials (std::ifstream &)
 

Private Member Functions

 CCalMaterialFactory ()
 
G4MaterialfindG4Material (const G4String &) const
 
CCalMaterialfindCCalMaterial (const G4String &) const
 
CCalAMaterialfindCCalAMaterial (const G4String &) const
 
CCalMaterialaddCCalMaterial (const G4String &nam, G4double density, G4int nconst, G4String mats[], G4double prop[], MatDescription md=byWeight)
 

Private Attributes

CCalMaterialTable theCCalMaterials
 
CCalAMaterialTable theCCalAMaterials
 

Static Private Attributes

static CCalMaterialFactoryinstance = 0
 
static G4String elementfile = ""
 
static G4String mixturefile = ""
 

Detailed Description

Definition at line 47 of file CCalMaterialFactory.hh.

Member Enumeration Documentation

Enumerator
byWeight 
byVolume 
byAtomic 

Definition at line 49 of file CCalMaterialFactory.hh.

Constructor & Destructor Documentation

CCalMaterialFactory::~CCalMaterialFactory ( )

Definition at line 96 of file CCalMaterialFactory.cc.

References theCCalAMaterials, and theCCalMaterials.

CCalMaterialFactory::CCalMaterialFactory ( )
private

Definition at line 437 of file CCalMaterialFactory.cc.

References elementfile, mixturefile, readElements(), and readMaterials().

Referenced by getInstance().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Function Documentation

CCalMaterial * CCalMaterialFactory::addCCalMaterial ( const G4String nam,
G4double  density,
G4int  nconst,
G4String  mats[],
G4double  prop[],
MatDescription  md = byWeight 
)
private

Definition at line 277 of file CCalMaterialFactory.cc.

References byAtomic, byWeight, findCCalAMaterial(), findCCalMaterial(), CCalMaterial::FTVolume, CCalMaterial::FTWeight, G4cerr, G4cout, G4endl, theCCalAMaterials, and theCCalMaterials.

Referenced by addMaterial(), and readMaterials().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Element * CCalMaterialFactory::addElement ( const G4String name,
const G4String symbol,
G4double  Z,
G4double  A,
G4double  density 
)

Definition at line 162 of file CCalMaterialFactory.cc.

References g, G4cout, G4endl, mole, and theCCalAMaterials.

Referenced by readElements().

+ Here is the caller graph for this function:

G4Material * CCalMaterialFactory::addMaterial ( const G4String nam,
G4double  density,
G4int  nconst,
G4String  mats[],
G4double  prop[],
MatDescription  md = byWeight 
)

Definition at line 179 of file CCalMaterialFactory.cc.

References addCCalMaterial(), and findMaterial().

+ Here is the call graph for this function:

CCalAMaterial * CCalMaterialFactory::findCCalAMaterial ( const G4String mat) const
private

Definition at line 264 of file CCalMaterialFactory.cc.

References G4cout, G4endl, and theCCalAMaterials.

Referenced by addCCalMaterial(), and findCCalMaterial().

+ Here is the caller graph for this function:

CCalMaterial * CCalMaterialFactory::findCCalMaterial ( const G4String mat) const
private

Definition at line 251 of file CCalMaterialFactory.cc.

References findCCalAMaterial(), G4cout, G4endl, and theCCalMaterials.

Referenced by addCCalMaterial(), and findMaterial().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Element * CCalMaterialFactory::findElement ( const G4String mat) const

Definition at line 149 of file CCalMaterialFactory.cc.

References G4cout, G4endl, and G4Element::GetElementTable().

Referenced by findMaterial().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Material * CCalMaterialFactory::findG4Material ( const G4String mat) const
private

Definition at line 240 of file CCalMaterialFactory.cc.

References G4Material::GetMaterialTable().

Referenced by findMaterial().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Material * CCalMaterialFactory::findMaterial ( const G4String mat) const

Definition at line 111 of file CCalMaterialFactory.cc.

References G4Material::AddElement(), cm3, CCalMaterial::Density(), CCalMaterial::Element(), FatalException, findCCalMaterial(), findElement(), findG4Material(), g, G4cerr, G4cout, G4endl, G4Exception(), CCalMaterial::Name(), CCalMaterial::NElements(), and CCalMaterial::Weight().

Referenced by addMaterial(), CCalG4Hcal::constructAbsorberLayer(), CCalG4Ecal::constructGlobal(), CCalG4Hall::constructIn(), CCalG4Hcal::constructIn(), and CCalG4Hcal::constructScintillatorLayer().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

CCalMaterialFactory * CCalMaterialFactory::getInstance ( const G4String matfile,
const G4String mixfile 
)
static

Definition at line 53 of file CCalMaterialFactory.cc.

References elementfile, G4cerr, G4endl, getInstance(), and mixturefile.

+ Here is the call graph for this function:

CCalMaterialFactory * CCalMaterialFactory::getInstance ( const G4String matfile)
static

Definition at line 74 of file CCalMaterialFactory.cc.

References getInstance().

+ Here is the call graph for this function:

CCalMaterialFactory * CCalMaterialFactory::getInstance ( )
static

Definition at line 79 of file CCalMaterialFactory.cc.

References CCalMaterialFactory(), elementfile, G4cerr, G4endl, instance, and mixturefile.

Referenced by CCalDetectorConstruction::Construct(), CCalG4Hcal::constructAbsorberLayer(), CCalG4Ecal::constructGlobal(), CCalG4Hall::constructIn(), CCalG4Hcal::constructIn(), CCalG4Hcal::constructScintillatorLayer(), and getInstance().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void CCalMaterialFactory::readElements ( const G4String matfile)

Definition at line 190 of file CCalMaterialFactory.cc.

References findDO(), G4cerr, G4cout, G4endl, and openGeomFile().

Referenced by CCalMaterialFactory().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void CCalMaterialFactory::readElements ( std::ifstream &  is)
protected

Definition at line 346 of file CCalMaterialFactory.cc.

References A, addElement(), density, G4cout, G4endl, G4Element::GetElementTable(), jump(), name, readName(), and symbol.

+ Here is the call graph for this function:

void CCalMaterialFactory::readMaterials ( const G4String matfile)

Definition at line 213 of file CCalMaterialFactory.cc.

References findDO(), G4cerr, G4cout, G4endl, and openGeomFile().

Referenced by CCalMaterialFactory().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void CCalMaterialFactory::readMaterials ( std::ifstream &  is)
protected

Definition at line 373 of file CCalMaterialFactory.cc.

References addCCalMaterial(), byAtomic, byVolume, byWeight, density, g, G4cout, G4endl, jump(), kelvin, kStateGas, mixturefile, mole, name, pascal, readName(), and theCCalMaterials.

+ Here is the call graph for this function:

Member Data Documentation

G4String CCalMaterialFactory::elementfile = ""
staticprivate

Definition at line 92 of file CCalMaterialFactory.hh.

Referenced by CCalMaterialFactory(), and getInstance().

CCalMaterialFactory * CCalMaterialFactory::instance = 0
staticprivate

Definition at line 90 of file CCalMaterialFactory.hh.

Referenced by getInstance().

G4String CCalMaterialFactory::mixturefile = ""
staticprivate

Definition at line 93 of file CCalMaterialFactory.hh.

Referenced by CCalMaterialFactory(), getInstance(), and readMaterials().

CCalAMaterialTable CCalMaterialFactory::theCCalAMaterials
private
CCalMaterialTable CCalMaterialFactory::theCCalMaterials
private

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