Geant4  10.01.p02
RE06DetectorConstruction Class Reference

#include <RE06DetectorConstruction.hh>

+ Inheritance diagram for RE06DetectorConstruction:
+ Collaboration diagram for RE06DetectorConstruction:

Public Member Functions

 RE06DetectorConstruction ()
 
virtual ~RE06DetectorConstruction ()
 
virtual G4VPhysicalVolumeConstruct ()
 
void ConstructSDandField ()
 
void PrintCalorParameters () const
 
void SetAbsorberMaterial (G4String materialChoice)
 
G4String GetAbsorberMaterial () const
 
void SetGapMaterial (G4String materialChoice)
 
G4String GetGapMaterial () const
 
void SetSerialGeometry (G4bool ser)
 
void SetNumberOfLayers (G4int nl)
 
G4int GetNumberOfLayers () const
 
G4bool IsSerial () const
 
void AddMaterial ()
 
G4int GetVerboseLevel () const
 
void SetVerboseLevel (G4int val)
 
- Public Member Functions inherited from G4VUserDetectorConstruction
 G4VUserDetectorConstruction ()
 
virtual ~G4VUserDetectorConstruction ()
 
virtual void CloneSD ()
 
virtual void CloneF ()
 
void RegisterParallelWorld (G4VUserParallelWorld *)
 
G4int ConstructParallelGeometries ()
 
void ConstructParallelSD ()
 
G4int GetNumberOfParallelWorld () const
 
G4VUserParallelWorldGetParallelWorld (G4int i) const
 

Private Member Functions

void DefineMaterials ()
 
void SetupGeometry ()
 
void SetupDetectors ()
 

Private Attributes

G4int fNumberOfLayers
 
G4double fTotalThickness
 total thinkness of one calorimeter More...
 
G4double fLayerThickness
 = fTotalThickness / fNumberOfLayers More...
 
G4bool fConstructed
 
G4String fCalName [3]
 
G4MaterialfWorldMaterial
 
G4MaterialfAbsorberMaterial
 
G4MaterialfGapMaterial
 
G4BoxfLayerSolid
 
G4BoxfGapSolid
 
G4LogicalVolumefWorldLogical
 
G4LogicalVolumefCalorLogical [3]
 
G4LogicalVolumefLayerLogical [3]
 
G4LogicalVolumefGapLogical [3]
 
G4VPhysicalVolumefWorldPhysical
 
G4VPhysicalVolumefCalorPhysical [3]
 
G4PVReplicafLayerPhysical [3]
 
G4VPhysicalVolumefGapPhysical [3]
 
G4bool fSerial
 
RE06DetectorMessengerfDetectorMessenger
 
G4int fVerboseLevel
 

Static Private Attributes

static G4ThreadLocal G4bool fConstructedSDandField = false
 

Additional Inherited Members

- Protected Member Functions inherited from G4VUserDetectorConstruction
void SetSensitiveDetector (const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
 
void SetSensitiveDetector (G4LogicalVolume *logVol, G4VSensitiveDetector *aSD)
 

Detailed Description

Definition at line 45 of file RE06DetectorConstruction.hh.

Constructor & Destructor Documentation

RE06DetectorConstruction::RE06DetectorConstruction ( )
RE06DetectorConstruction::~RE06DetectorConstruction ( )
virtual

Definition at line 106 of file RE06DetectorConstruction.cc.

References fDetectorMessenger.

Member Function Documentation

void RE06DetectorConstruction::AddMaterial ( )

Definition at line 515 of file RE06DetectorConstruction.cc.

References a, G4Material::AddElement(), atmosphere, cm3, CO2, density, g, G4Element::GetElement(), kelvin, kStateGas, mg, mole, name, symbol, and z.

Referenced by RE06DetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VPhysicalVolume * RE06DetectorConstruction::Construct ( void  )
virtual

Implements G4VUserDetectorConstruction.

Definition at line 109 of file RE06DetectorConstruction.cc.

References DefineMaterials(), fConstructed, fWorldPhysical, GetVerboseLevel(), PrintCalorParameters(), and SetupGeometry().

+ Here is the call graph for this function:

void RE06DetectorConstruction::ConstructSDandField ( )
virtual

Reimplemented from G4VUserDetectorConstruction.

Definition at line 123 of file RE06DetectorConstruction.cc.

References fConstructedSDandField, and SetupDetectors().

+ Here is the call graph for this function:

void RE06DetectorConstruction::DefineMaterials ( void  )
private

Definition at line 134 of file RE06DetectorConstruction.cc.

References a, G4Material::AddElement(), G4Element::AddIsotope(), Air, cm3, density, fAbsorberMaterial, fGapMaterial, fWorldMaterial, g, G4cout, G4endl, G4Material::GetMaterialTable(), GetVerboseLevel(), iz, kelvin, kStateGas, mg, mole, n, name, pascal, perCent, symbol, and z.

Referenced by Construct().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4String RE06DetectorConstruction::GetAbsorberMaterial ( ) const

Definition at line 435 of file RE06DetectorConstruction.cc.

References fAbsorberMaterial, and G4Material::GetName().

Referenced by RE06DetectorMessenger::GetCurrentValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4String RE06DetectorConstruction::GetGapMaterial ( ) const

Definition at line 461 of file RE06DetectorConstruction.cc.

References fGapMaterial, and G4Material::GetName().

Referenced by RE06DetectorMessenger::GetCurrentValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int RE06DetectorConstruction::GetNumberOfLayers ( ) const
inline

Definition at line 62 of file RE06DetectorConstruction.hh.

References fNumberOfLayers.

Referenced by RE06DetectorMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

G4int RE06DetectorConstruction::GetVerboseLevel ( ) const
inline

Definition at line 67 of file RE06DetectorConstruction.hh.

References fVerboseLevel.

Referenced by Construct(), DefineMaterials(), RE06DetectorMessenger::GetCurrentValue(), SetAbsorberMaterial(), and SetGapMaterial().

+ Here is the caller graph for this function:

G4bool RE06DetectorConstruction::IsSerial ( ) const
inline

Definition at line 63 of file RE06DetectorConstruction.hh.

References fSerial.

Referenced by RE06DetectorMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

void RE06DetectorConstruction::PrintCalorParameters ( ) const

Definition at line 393 of file RE06DetectorConstruction.cc.

References fAbsorberMaterial, fGapMaterial, fSerial, G4cout, G4endl, and G4Material::GetName().

Referenced by Construct(), SetAbsorberMaterial(), and SetGapMaterial().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void RE06DetectorConstruction::SetAbsorberMaterial ( G4String  materialChoice)

Definition at line 409 of file RE06DetectorConstruction.cc.

References fAbsorberMaterial, fCalorLogical, fConstructed, fLayerLogical, G4cerr, G4endl, G4RunManager::GeometryHasBeenModified(), G4Material::GetMaterial(), G4RunManager::GetRunManager(), GetVerboseLevel(), PrintCalorParameters(), and G4LogicalVolume::SetMaterial().

Referenced by RE06DetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void RE06DetectorConstruction::SetGapMaterial ( G4String  materialChoice)

Definition at line 440 of file RE06DetectorConstruction.cc.

References fConstructed, fGapLogical, fGapMaterial, G4cerr, G4endl, G4RunManager::GeometryHasBeenModified(), G4Material::GetMaterial(), G4RunManager::GetRunManager(), GetVerboseLevel(), PrintCalorParameters(), and G4LogicalVolume::SetMaterial().

Referenced by RE06DetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void RE06DetectorConstruction::SetNumberOfLayers ( G4int  nl)

Definition at line 493 of file RE06DetectorConstruction.cc.

References fCalName, fCalorLogical, fConstructed, fGapPhysical, fGapSolid, fLayerLogical, fLayerPhysical, fLayerSolid, fLayerThickness, fNumberOfLayers, fTotalThickness, G4RunManager::GeometryHasBeenModified(), G4RunManager::GetRunManager(), kZAxis, G4LogicalVolume::RemoveDaughter(), G4VPhysicalVolume::SetTranslation(), and G4Box::SetZHalfLength().

Referenced by RE06DetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void RE06DetectorConstruction::SetSerialGeometry ( G4bool  ser)

Definition at line 466 of file RE06DetectorConstruction.cc.

References fCalorPhysical, fConstructed, fSerial, G4RunManager::GeometryHasBeenModified(), G4VUserDetectorConstruction::GetParallelWorld(), G4RunManager::GetRunManager(), G4RunManager::GetUserPrimaryGeneratorAction(), m, RE06PrimaryGeneratorAction::SetSerial(), and G4VPhysicalVolume::SetTranslation().

Referenced by RE06DetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void RE06DetectorConstruction::SetupDetectors ( )
private

Definition at line 319 of file RE06DetectorConstruction.cc.

References G4SDParticleFilter::add(), fCalName, fGapLogical, fLayerLogical, G4SDManager::GetSDMpointer(), G4MultiFunctionalDetector::RegisterPrimitive(), G4VPrimitiveScorer::SetFilter(), G4VUserDetectorConstruction::SetSensitiveDetector(), and G4SDManager::SetVerboseLevel().

Referenced by ConstructSDandField().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void RE06DetectorConstruction::SetupGeometry ( )
private

Definition at line 235 of file RE06DetectorConstruction.cc.

References G4Region::AddRootLogicalVolume(), fAbsorberMaterial, fCalName, fCalorLogical, fCalorPhysical, fGapLogical, fGapMaterial, fGapPhysical, fGapSolid, fLayerLogical, fLayerPhysical, fLayerSolid, fLayerThickness, fNumberOfLayers, fSerial, fTotalThickness, fWorldLogical, fWorldMaterial, fWorldPhysical, G4VisAttributes::Invisible, kZAxis, m, G4LogicalVolume::SetRegion(), G4LogicalVolume::SetVisAttributes(), and G4VisAttributes::SetVisibility().

Referenced by Construct().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void RE06DetectorConstruction::SetVerboseLevel ( G4int  val)
inline

Definition at line 68 of file RE06DetectorConstruction.hh.

References fVerboseLevel.

Referenced by RE06DetectorMessenger::SetNewValue().

+ Here is the caller graph for this function:

Member Data Documentation

G4Material* RE06DetectorConstruction::fAbsorberMaterial
private
G4String RE06DetectorConstruction::fCalName[3]
private
G4LogicalVolume* RE06DetectorConstruction::fCalorLogical[3]
private
G4VPhysicalVolume* RE06DetectorConstruction::fCalorPhysical[3]
private
G4bool RE06DetectorConstruction::fConstructed
private
G4ThreadLocal G4bool RE06DetectorConstruction::fConstructedSDandField = false
staticprivate

Definition at line 82 of file RE06DetectorConstruction.hh.

Referenced by ConstructSDandField().

RE06DetectorMessenger* RE06DetectorConstruction::fDetectorMessenger
private
G4LogicalVolume* RE06DetectorConstruction::fGapLogical[3]
private
G4Material* RE06DetectorConstruction::fGapMaterial
private
G4VPhysicalVolume* RE06DetectorConstruction::fGapPhysical[3]
private
G4Box* RE06DetectorConstruction::fGapSolid
private

Definition at line 91 of file RE06DetectorConstruction.hh.

Referenced by SetNumberOfLayers(), and SetupGeometry().

G4LogicalVolume* RE06DetectorConstruction::fLayerLogical[3]
private
G4PVReplica* RE06DetectorConstruction::fLayerPhysical[3]
private
G4Box* RE06DetectorConstruction::fLayerSolid
private

Definition at line 90 of file RE06DetectorConstruction.hh.

Referenced by SetNumberOfLayers(), and SetupGeometry().

G4double RE06DetectorConstruction::fLayerThickness
private

= fTotalThickness / fNumberOfLayers

Definition at line 79 of file RE06DetectorConstruction.hh.

Referenced by RE06DetectorConstruction(), SetNumberOfLayers(), and SetupGeometry().

G4int RE06DetectorConstruction::fNumberOfLayers
private
G4bool RE06DetectorConstruction::fSerial
private
G4double RE06DetectorConstruction::fTotalThickness
private

total thinkness of one calorimeter

Definition at line 78 of file RE06DetectorConstruction.hh.

Referenced by RE06DetectorConstruction(), SetNumberOfLayers(), and SetupGeometry().

G4int RE06DetectorConstruction::fVerboseLevel
private

Definition at line 107 of file RE06DetectorConstruction.hh.

Referenced by GetVerboseLevel(), and SetVerboseLevel().

G4LogicalVolume* RE06DetectorConstruction::fWorldLogical
private

Definition at line 93 of file RE06DetectorConstruction.hh.

Referenced by SetupGeometry().

G4Material* RE06DetectorConstruction::fWorldMaterial
private

Definition at line 86 of file RE06DetectorConstruction.hh.

Referenced by DefineMaterials(), and SetupGeometry().

G4VPhysicalVolume* RE06DetectorConstruction::fWorldPhysical
private

Definition at line 98 of file RE06DetectorConstruction.hh.

Referenced by Construct(), and SetupGeometry().


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