]>
Commit | Line | Data |
---|---|---|
676fb573 | 1 | // $Id$ |
2 | // Category: geometry | |
3 | // | |
4 | // Special sensitive detector class for lego run. | |
5 | // It implements G4VSensitiveDetector::ProcessHits() | |
6 | // with AliLego:: StepManager(). | |
7 | ||
8 | #ifndef ALI_LEGO_SENSITIVE_DETECTOR_H | |
9 | #define ALI_LEGO_SENSITIVE_DETECTOR_H | |
10 | ||
11 | #include "TG4VSensitiveDetector.h" | |
12 | ||
13 | #include <globals.hh> | |
14 | ||
15 | class AliLego; | |
16 | class TG4StepManager; | |
17 | ||
18 | class G4HCofThisEvent; | |
19 | class G4Step; | |
20 | ||
21 | class AliLegoSensitiveDetector : public TG4VSensitiveDetector | |
22 | { | |
23 | public: | |
24 | AliLegoSensitiveDetector(G4String name, AliLego* lego, | |
25 | G4VSensitiveDetector* standardSD); | |
26 | AliLegoSensitiveDetector(const AliLegoSensitiveDetector& right); | |
27 | // --> protected | |
28 | // AliLegoSensitiveDetector(); | |
29 | virtual ~AliLegoSensitiveDetector(); | |
30 | ||
31 | // operators | |
32 | AliLegoSensitiveDetector& operator=(const AliLegoSensitiveDetector& right); | |
33 | ||
34 | // methods | |
35 | virtual void Initialize(G4HCofThisEvent* hc); | |
36 | virtual G4bool ProcessHits(G4Step* step, G4TouchableHistory* history); | |
37 | virtual void EndOfEvent(G4HCofThisEvent* hce); | |
38 | //virtual void clear(); | |
39 | virtual void PrintAll(); | |
40 | virtual void DrawAll(); | |
41 | ||
42 | // get methods | |
43 | G4VSensitiveDetector* GetStandardSD() const; | |
44 | ||
45 | protected: | |
46 | AliLegoSensitiveDetector(); | |
47 | ||
48 | private: | |
49 | // data members | |
50 | AliLego* fLego; //lego from AliRoot | |
51 | G4VSensitiveDetector* fStandardSD; //standard sensitive detector | |
52 | TG4StepManager* fStepManager; //TG4StepManager | |
53 | }; | |
54 | ||
55 | // inline methods | |
56 | ||
57 | inline G4VSensitiveDetector* AliLegoSensitiveDetector::GetStandardSD() const | |
58 | { return fStandardSD; } | |
59 | ||
60 | #endif //ALI_LEGO_SENSITIVE_DETECTOR_H | |
61 | ||
62 |