#ifndef CONSTRUCTION_HH #define CONSTRUCTION_HH #include "G4VUserDetectorConstruction.hh" #include "G4VPhysicalVolume.hh" #include "G4LogicalVolume.hh" #include "G4Box.hh" #include "G4PVPlacement.hh" #include "G4NistManager.hh" #include "G4SystemOfUnits.hh" #include "G4GenericMessenger.hh" class MyDetectorMessenger; class MyDetectorConstruction : public G4VUserDetectorConstruction{ public: MyDetectorConstruction(); ~MyDetectorConstruction(); virtual G4VPhysicalVolume *Construct(); void SetMiniX_XY(const G4double sizeXY ); G4double GetMiniX_XY() const { return fsizeXY; } void SetMiniX_Z(const G4double sizeZ ); G4double GetMiniX_Z() const { return fsizeZ; } private: G4Box *solidWorld; G4LogicalVolume *logicWorld,*logicMiniX; G4VPhysicalVolume *physWorld,*physMiniX; G4Material *H2O,*worldMat; void DefineMaterial(); virtual void ConstructSDandField(); MyDetectorMessenger *fMessenger; // MiniX dimensions G4double fsizeXY, fsizeZ; G4double xWorld, yWorld, zWorld; }; #endif