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);
41 G4int GetNofModules() const;
42 AliSingleModuleConstruction* GetModuleConstruction(G4int i) const;
46 void CreateSensitiveDetectors(G4bool allLVSensitive);
47 void CreateSensitiveDetectors1();
48 void CreateSensitiveDetectors2();
51 AliSingleModuleConstructionPtrVector fModuleConstructionVector; //..
52 //vector of AliSingleModuleConstruction
53 AliSDManager* fSDManager; //AliSDManager
58 inline G4int AliMoreModulesConstruction::GetNofModules() const
59 { return fModuleConstructionVector.size(); }
61 inline AliSingleModuleConstruction*
62 AliMoreModulesConstruction::GetModuleConstruction(G4int i) const
63 { return fModuleConstructionVector[i]; }
65 #endif //ALI_MORE_MODULES_CONSTRUCTION_H