]> git.uio.no Git - u/mrichter/AliRoot.git/blame - AliGeant4/AliMoreModulesConstruction.h
removed unnecessary includes
[u/mrichter/AliRoot.git] / AliGeant4 / AliMoreModulesConstruction.h
CommitLineData
676fb573 1// $Id$
2// Category: geometry
3//
4// Class for geometry construction of a set of dependent
5// modules (AliModule).
6
7
8#ifndef ALI_MORE_MODULES_CONSTRUCTION_H
9#define ALI_MORE_MODULES_CONSTRUCTION_H
10
11#include "AliModuleType.h"
12
676fb573 13#include <globals.hh>
14
63c8351a 15#include <g4std/vector>
676fb573 16
17class AliSingleModuleConstruction;
18class AliSDManager;
19
20class AliMoreModulesConstruction
21{
5f1d09c5 22 typedef G4std::vector<AliSingleModuleConstruction*>
23 AliSingleModuleConstructionPtrVector;
24
676fb573 25 public:
26 AliMoreModulesConstruction();
27 AliMoreModulesConstruction(const AliMoreModulesConstruction& right);
28 virtual ~AliMoreModulesConstruction();
29
30 // operators
31 AliMoreModulesConstruction& operator=(
32 const AliMoreModulesConstruction& right);
33
34 // methods
35 void AddModule(G4String moduleName, G4int version,
36 AliModuleType moduleType);
50aef0f4 37 void Configure();
676fb573 38 void Construct();
39
40 // get methods
41 G4int GetNofModules() const;
42 AliSingleModuleConstruction* GetModuleConstruction(G4int i) const;
43
44 private:
45 // methods
46 void CreateSensitiveDetectors(G4bool allLVSensitive);
47 void CreateSensitiveDetectors1();
48 void CreateSensitiveDetectors2();
49
50 // data members
5f1d09c5 51 AliSingleModuleConstructionPtrVector fModuleConstructionVector; //..
676fb573 52 //vector of AliSingleModuleConstruction
53 AliSDManager* fSDManager; //AliSDManager
54};
55
56// inline methods
57
58inline G4int AliMoreModulesConstruction::GetNofModules() const
59{ return fModuleConstructionVector.size(); }
60
61inline AliSingleModuleConstruction*
62 AliMoreModulesConstruction::GetModuleConstruction(G4int i) const
63{ return fModuleConstructionVector[i]; }
64
65#endif //ALI_MORE_MODULES_CONSTRUCTION_H