Geant4  10.01.p02
B2aDetectorConstruction Class Reference

Detector construction class to define materials, geometry and global uniform magnetic field. More...

#include <B2aDetectorConstruction.hh>

+ Inheritance diagram for B2aDetectorConstruction:
+ Collaboration diagram for B2aDetectorConstruction:

Public Member Functions

 B2aDetectorConstruction ()
 
virtual ~B2aDetectorConstruction ()
 
virtual G4VPhysicalVolumeConstruct ()
 
virtual void ConstructSDandField ()
 
void SetTargetMaterial (G4String)
 
void SetChamberMaterial (G4String)
 
void SetMaxStep (G4double)
 
void SetCheckOverlaps (G4bool)
 
- 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 ()
 
G4VPhysicalVolumeDefineVolumes ()
 

Private Attributes

G4int fNbOfChambers
 
G4LogicalVolumefLogicTarget
 
G4LogicalVolume ** fLogicChamber
 
G4MaterialfTargetMaterial
 
G4MaterialfChamberMaterial
 
G4UserLimitsfStepLimit
 
B2aDetectorMessengerfMessenger
 
G4bool fCheckOverlaps
 

Static Private Attributes

static G4ThreadLocal
G4GlobalMagFieldMessenger
fMagFieldMessenger = 0
 

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

Detector construction class to define materials, geometry and global uniform magnetic field.

Definition at line 49 of file B2aDetectorConstruction.hh.

Constructor & Destructor Documentation

B2aDetectorConstruction::B2aDetectorConstruction ( )

Definition at line 60 of file B2aDetectorConstruction.cc.

References fLogicChamber, fMessenger, and fNbOfChambers.

B2aDetectorConstruction::~B2aDetectorConstruction ( )
virtual

Definition at line 76 of file B2aDetectorConstruction.cc.

References fLogicChamber, fMessenger, and fStepLimit.

Member Function Documentation

G4VPhysicalVolume * B2aDetectorConstruction::Construct ( void  )
virtual

Implements G4VUserDetectorConstruction.

Definition at line 85 of file B2aDetectorConstruction.cc.

References DefineMaterials(), and DefineVolumes().

+ Here is the call graph for this function:

void B2aDetectorConstruction::ConstructSDandField ( )
virtual

Reimplemented from G4VUserDetectorConstruction.

Definition at line 290 of file B2aDetectorConstruction.cc.

References fMagFieldMessenger, G4AutoDelete::Register(), G4VUserDetectorConstruction::SetSensitiveDetector(), and G4GlobalMagFieldMessenger::SetVerboseLevel().

+ Here is the call graph for this function:

void B2aDetectorConstruction::DefineMaterials ( )
private

Definition at line 96 of file B2aDetectorConstruction.cc.

References fChamberMaterial, G4NistManager::FindOrBuildMaterial(), fTargetMaterial, G4cout, G4endl, G4Material::GetMaterialTable(), and G4NistManager::Instance().

Referenced by Construct().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VPhysicalVolume * B2aDetectorConstruction::DefineVolumes ( )
private

Set additional contraints on the track, with G4UserSpecialCuts

G4double maxLength = 2*trackerLength, maxTime = 0.1*ns, minEkin = 10*MeV; trackerLV->SetUserLimits(new G4UserLimits(maxStep, maxLength, maxTime, minEkin));

Definition at line 117 of file B2aDetectorConstruction.cc.

References cm, deg, FatalException, fChamberMaterial, fCheckOverlaps, fLogicChamber, fLogicTarget, fNbOfChambers, fStepLimit, fTargetMaterial, G4cout, G4endl, G4Exception(), G4GeometryTolerance::GetInstance(), G4GeometryManager::GetInstance(), G4Material::GetMaterial(), G4Material::GetName(), G4GeometryTolerance::GetSurfaceTolerance(), mm, G4LogicalVolume::SetUserLimits(), G4LogicalVolume::SetVisAttributes(), and G4GeometryManager::SetWorldMaximumExtent().

Referenced by Construct().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void B2aDetectorConstruction::SetChamberMaterial ( G4String  materialName)

Definition at line 339 of file B2aDetectorConstruction.cc.

References fChamberMaterial, G4NistManager::FindOrBuildMaterial(), fLogicChamber, fNbOfChambers, G4cout, G4endl, and G4NistManager::Instance().

Referenced by B2aDetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void B2aDetectorConstruction::SetCheckOverlaps ( G4bool  checkOverlaps)

Definition at line 374 of file B2aDetectorConstruction.cc.

References fCheckOverlaps.

void B2aDetectorConstruction::SetMaxStep ( G4double  maxStep)

Definition at line 367 of file B2aDetectorConstruction.cc.

References fStepLimit, and G4UserLimits::SetMaxAllowedStep().

Referenced by B2aDetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void B2aDetectorConstruction::SetTargetMaterial ( G4String  materialName)

Definition at line 314 of file B2aDetectorConstruction.cc.

References G4NistManager::FindOrBuildMaterial(), fLogicTarget, fTargetMaterial, G4cout, G4endl, G4NistManager::Instance(), and G4LogicalVolume::SetMaterial().

Referenced by B2aDetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4Material* B2aDetectorConstruction::fChamberMaterial
private

Definition at line 77 of file B2aDetectorConstruction.hh.

Referenced by DefineMaterials(), DefineVolumes(), and SetChamberMaterial().

G4bool B2aDetectorConstruction::fCheckOverlaps
private

Definition at line 86 of file B2aDetectorConstruction.hh.

Referenced by DefineVolumes(), and SetCheckOverlaps().

G4LogicalVolume** B2aDetectorConstruction::fLogicChamber
private
G4LogicalVolume* B2aDetectorConstruction::fLogicTarget
private

Definition at line 73 of file B2aDetectorConstruction.hh.

Referenced by DefineVolumes(), and SetTargetMaterial().

G4ThreadLocal G4GlobalMagFieldMessenger * B2aDetectorConstruction::fMagFieldMessenger = 0
staticprivate

Definition at line 83 of file B2aDetectorConstruction.hh.

Referenced by ConstructSDandField().

B2aDetectorMessenger* B2aDetectorConstruction::fMessenger
private

Definition at line 81 of file B2aDetectorConstruction.hh.

Referenced by B2aDetectorConstruction(), and ~B2aDetectorConstruction().

G4int B2aDetectorConstruction::fNbOfChambers
private
G4UserLimits* B2aDetectorConstruction::fStepLimit
private

Definition at line 79 of file B2aDetectorConstruction.hh.

Referenced by DefineVolumes(), SetMaxStep(), and ~B2aDetectorConstruction().

G4Material* B2aDetectorConstruction::fTargetMaterial
private

Definition at line 76 of file B2aDetectorConstruction.hh.

Referenced by DefineMaterials(), DefineVolumes(), and SetTargetMaterial().


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