]> git.uio.no Git - u/mrichter/AliRoot.git/blob - AliGeant4/AliDetConstruction.h
updated commands description
[u/mrichter/AliRoot.git] / AliGeant4 / AliDetConstruction.h
1 // $Id$
2 // Category: geometry
3 //
4 // Author: I. Hrivnacova
5 //
6 // Class AliDetConstruction
7 // ------------------------
8 // Detector construction class with interactive setting of detectors setup 
9 // available.  
10 // In case the detector setup is not defined in Root macro Config.C
11 // the commands /alDet/switchOn/Off can be used either interactively or
12 // in Geant4 macro.
13
14 #ifndef ALI_DET_CONSTRUCTION_H
15 #define ALI_DET_CONSTRUCTION_H
16
17 #include "AliModulesComposition.h"
18
19 #include <globals.hh>
20
21 class G4VPhysicalVolume;
22
23 class AliDetConstruction : public AliModulesComposition
24 {
25   public:
26     AliDetConstruction();
27     // --> protected
28     // AliDetConstruction(const AliDetConstruction& right);
29     virtual ~AliDetConstruction();
30
31     // methods
32     virtual G4VPhysicalVolume* Construct();
33
34     // set methods
35     void SetTopVolumeName(G4String name);
36     
37   protected:
38     AliDetConstruction(const AliDetConstruction& right);
39
40     // operators
41     AliDetConstruction& operator=(const AliDetConstruction& right);
42
43   private:  
44     // methods
45     void BuildDetectors();
46     void CreateDetectors();
47     void CheckDetDependencies();
48   
49     // data members
50     G4String  fTopVolumeName;  //top volume name
51 };
52
53 // inline methods
54
55 inline void AliDetConstruction::SetTopVolumeName(G4String name)
56 { fTopVolumeName = name; }
57
58 #endif //ALI_DET_CONSTRUCTION_H
59