Warning, file /geant4/examples/advanced/exp_microdosimetry/include/DetectorConstruction.hh was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031 #ifndef DetectorConstruction_H
0032 #define DetectorConstruction_H 1
0033 #include "G4VUserDetectorConstruction.hh"
0034 #include "globals.hh"
0035 #include "AnalysisManager.hh"
0036 #include "DetectorMessenger.hh"
0037 #include "G4NistManager.hh"
0038
0039 class G4VPhysicalVolume;
0040 class DetectorMessenger;
0041 class G4LogicalVolume;
0042 class G4Material;
0043
0044 class DetectorConstruction : public G4VUserDetectorConstruction
0045 {
0046 public:
0047 DetectorConstruction(AnalysisManager* analysis, DetectorMessenger* messenger);
0048 ~DetectorConstruction();
0049
0050 G4VPhysicalVolume* Construct();
0051
0052 void ConstructSDandField();
0053
0054 private:
0055 AnalysisManager* analysis;
0056 DetectorMessenger* messenger;
0057
0058 G4String detectorType;
0059 G4double detectorSizeWidth;
0060 G4double detectorSizeThickness;
0061 G4double secondStageSizeDim;
0062 G4double secondStageSizeThickness;
0063 G4bool usingWaterPhantom;
0064 G4double detectorPositionDepth;
0065
0066
0067 void ConstructWorldWithWaterPhantom();
0068 void ConstructVacuumWorld();
0069 void ConstructDiamondDetector();
0070 void ConstructMicroDiamondDetector();
0071 void ConstructSiliconDetector();
0072 void ConstructSiliconBridgeDetector();
0073 void ConstructDiamondTelescope();
0074 void ConstructSiC();
0075
0076
0077 G4VPhysicalVolume* physical_world;
0078 G4LogicalVolume* logical_motherVolumeForDetector;
0079 G4Material* materialOfMotherVolume;
0080
0081 G4NistManager* nistMan;
0082 };
0083 #endif