]>
Commit | Line | Data |
---|---|---|
8d3676ae | 1 | // $Id$ |
2 | // Category: digits+hits | |
3 | // | |
4 | // Geant4 implementation of the MonteCarlo interface methods | |
5 | // for access to Geant4 geometry related with sensitive detectors. | |
6 | ||
7 | #ifndef TG4_SD_MANAGER_H | |
8 | #define TG4_SD_MANAGER_H | |
9 | ||
10 | #include <globals.hh> | |
11 | ||
12 | #include <Rtypes.h> | |
13 | ||
14 | class TG4SDServices; | |
15 | class TG4VSDConstruction; | |
16 | ||
17 | class TG4SDManager | |
18 | { | |
19 | public: | |
20 | TG4SDManager(TG4VSDConstruction* sdConstruction); | |
21 | // --> protected | |
22 | // TG4SDManager(); | |
23 | // TG4SDManager(const TG4SDManager& right); | |
24 | virtual ~TG4SDManager(); | |
25 | ||
26 | // static methods | |
27 | static TG4SDManager* Instance(); | |
28 | ||
29 | // methods | |
30 | void Initialize(); | |
31 | ||
32 | // AliMC methods | |
33 | Int_t VolId(const Text_t* volName) const; | |
34 | const char* VolName(Int_t id) const; | |
35 | Int_t NofVolumes() const; | |
36 | Int_t VolId2Mate(Int_t volumeId) const; | |
37 | ||
38 | // get methods | |
39 | TG4VSDConstruction* GetSDConstruction() const; | |
40 | ||
41 | protected: | |
42 | TG4SDManager(); | |
43 | TG4SDManager(const TG4SDManager& right); | |
44 | ||
45 | // operators | |
46 | TG4SDManager& operator=(const TG4SDManager& right); | |
47 | ||
48 | // static data members | |
49 | static TG4SDManager* fgInstance; //this instance | |
50 | ||
51 | // data members | |
52 | TG4VSDConstruction* fSDConstruction; //sensitive detectors construction | |
53 | TG4SDServices* fSDServices; //services related with sensitive | |
54 | //detectors | |
55 | ||
56 | }; | |
57 | ||
58 | // inline methods | |
59 | ||
60 | inline TG4SDManager* TG4SDManager::Instance() | |
61 | { return fgInstance; } | |
62 | ||
63 | inline TG4VSDConstruction* TG4SDManager::GetSDConstruction() const | |
64 | { return fSDConstruction; } | |
65 | ||
66 | #endif //TG4_SD_MANAGER_H | |
67 |