ScintillatorConstruction.h
Go to the documentation of this file.
1 #ifndef _EdepSimulatorAG_ScintillatorConstruction_h_
2 #define _EdepSimulatorAG_ScintillatorConstruction_h_
3 
4 #include <G4VUserDetectorConstruction.hh>
5 
6 #include <utl/MessageLoggerConfig.h>
7 #include <utl/ConfigParameter.h>
8 #include <utl/UnitsConfig.h>
9 
10 class G4LogicalVolume;
11 class G4VPhysicalVolume;
12 class G4Element;
13 class G4Material;
14 
15 
16 namespace EdepSimulatorAG {
17 
18  class ScintillatorConstruction : public G4VUserDetectorConstruction {
19  private:
22 
23  public:
26 
27  G4VPhysicalVolume* Construct();
28 
29  private:
30  // World
31  G4LogicalVolume* fLogicalWorld;
32  G4VPhysicalVolume* fPhysicalWorld;
33 
34  //Scintillators (Central, Left, Right)
35  G4LogicalVolume* fLogicalScintillator;
36  G4VPhysicalVolume* fPhysicalScintillator;
37 
38  G4LogicalVolume* L_LogScintillator;
39  G4VPhysicalVolume* L_PhyScintillator;
40 
41  G4LogicalVolume* R_LogScintillator;
42  G4VPhysicalVolume* R_PhyScintillator;
43 
44  private:
45  void CreateMaterials();
46 
47  G4Element* H;
48  G4Element* C;
49  G4Element* N;
50  G4Element* O;
51 
52  G4Material* fWorldMaterial;
53  G4Material* fScintillatorMaterial;
54 
55  private:
56  G4double fWorld_Side_X;
57  G4double fWorld_Side_Y;
58  G4double fWorld_Side_Z;
59 
60  G4double fScint_Side_X;
61  G4double fScint_Side_Y;
62  G4double fScint_Side_Z;
71  };
72 
73 }
74 
75 
76 #endif
Helper class for configuration of units: value and name.
Definition: UnitsConfig.h:22
Wraps a message to logger (received as parameter or created here), its access and configuration...
utl::UnitsConfig fUnits
Units configuration.
utl::MessageLoggerConfig fLog
Output messages handler.
ScintillatorConstruction()
Mean scintillator density from samples.

, generated on Tue Sep 26 2023.