4 // Class for geometry construction of a set of dependent
5 // modules (AliModule).
8 #ifndef ALI_MORE_MODULES_CONSTRUCTION_H
9 #define ALI_MORE_MODULES_CONSTRUCTION_H
11 #include "AliModuleType.h"
13 #include <G3VolTable.hh>
16 #include <g4std/vector>
18 class AliSingleModuleConstruction;
21 class AliMoreModulesConstruction
23 typedef G4std::vector<AliSingleModuleConstruction*>
24 AliSingleModuleConstructionPtrVector;
27 AliMoreModulesConstruction();
28 AliMoreModulesConstruction(const AliMoreModulesConstruction& right);
29 virtual ~AliMoreModulesConstruction();
32 AliMoreModulesConstruction& operator=(
33 const AliMoreModulesConstruction& right);
36 void AddModule(G4String moduleName, G4int version,
37 AliModuleType moduleType);
42 G4int GetNofModules() const;
43 AliSingleModuleConstruction* GetModuleConstruction(G4int i) const;
47 void CreateSensitiveDetectors(G4bool allLVSensitive);
48 void CreateSensitiveDetectors1();
49 void CreateSensitiveDetectors2();
52 AliSingleModuleConstructionPtrVector fModuleConstructionVector; //..
53 //vector of AliSingleModuleConstruction
54 AliSDManager* fSDManager; //AliSDManager
59 inline G4int AliMoreModulesConstruction::GetNofModules() const
60 { return fModuleConstructionVector.size(); }
62 inline AliSingleModuleConstruction*
63 AliMoreModulesConstruction::GetModuleConstruction(G4int i) const
64 { return fModuleConstructionVector[i]; }
66 #endif //ALI_MORE_MODULES_CONSTRUCTION_H