]> git.uio.no Git - u/mrichter/AliRoot.git/blob - AliGeant4/AliSensitiveDetector.h
removed rule for dummy arguments; added rule for virtual member functions (no.5)
[u/mrichter/AliRoot.git] / AliGeant4 / AliSensitiveDetector.h
1 // $Id$
2 // Category: geometry
3 //
4 // Sensitive detector class,
5 // that implements G4VSensitiveDetector::ProcessHits()
6 // with AliDetector:: StepManager().
7
8 #ifndef ALI_SENSITIVE_DETECTOR_H
9 #define ALI_SENSITIVE_DETECTOR_H
10
11 #include "TG4VSensitiveDetector.h"
12
13 #include <globals.hh>
14
15 class AliModule;
16 class TG4StepManager;
17
18 class G4HCofThisEvent;
19 class G4Step;
20
21 class AliSensitiveDetector : public TG4VSensitiveDetector
22 {
23   public:
24     AliSensitiveDetector(G4String sdName, AliModule* module);
25     AliSensitiveDetector(G4String sdName, AliModule* module, G4int id);
26     AliSensitiveDetector(const AliSensitiveDetector& right);
27     // --> protected
28     // AliSensitiveDetector();
29     virtual ~AliSensitiveDetector();
30
31     // operators
32     AliSensitiveDetector& operator=(const AliSensitiveDetector& 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   protected:  
43     AliSensitiveDetector();
44     
45   private:
46     // data members
47     AliModule*       fModule;      //AliModule
48     TG4StepManager*  fStepManager; //TG4StepManager
49 };
50
51 #endif //ALI_SENSITIVE_DETECTOR_H
52
53