aboutsummaryrefslogtreecommitdiffstats
path: root/include/G4BeamTestDetectorConstruction.h
blob: c2720ceaf4e1c4149c2b7b683f10de1c6b4d31f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#ifndef _TOPSIMULATOR_G4BEAMTESTDETECTORCONSTRUCTION_H_
#define _TOPSIMULATOR_G4BEAMTESTDETECTORCONSTRUCTION_H_

#include <G4VUserDetectorConstruction.hh>
#include <G4ThreeVector.hh>

#include "G4BeamTestTank.h"
#include "G4BeamTestSC4SD.h"

class G4BeamTestDetectorConstruction: public G4VUserDetectorConstruction
{
 public:
  G4BeamTestDetectorConstruction();

  ~G4BeamTestDetectorConstruction();

  G4VPhysicalVolume* Construct();

  void SetVerboseLevel(G4int level) {verboseLevel_=level;}

  void InstallTank(G4BeamTestTank* tank) {tank_ = tank;}

  const G4ThreeVector& GetWorldOrigin() const {return origin_;}

 private:

  void CreateMaterials();

  void CreateAir();
  void CreateWater();
  void CreatePlastic();
  void CreateGlassSphere();
  void CreateEffectiveDOMMaterial();
  void CreateSC4();

  G4ThreeVector origin_;

  G4int verboseLevel_;

  G4BeamTestTank* tank_;
  G4BeamTestSC4SD* sc4SD_;
};

#endif