EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FairDetector.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file FairDetector.h
1 
2 #ifndef FAIRDETECTOR_H
3 #define FAIRDETECTOR_H
4 
5 #include "FairModule.h"
6 
7 class FairLogger;
8 class FairVolume;
9 class TClonesArray;
10 
17 class FairDetector : public FairModule
18 {
19 
20  public:
21 
28  FairDetector(const char* Name, Bool_t Active, Int_t DetId=0);
32  FairDetector();
36  virtual ~FairDetector();
40  virtual void Initialize();
44  virtual Bool_t ProcessHits( FairVolume* v=0)=0;
48  virtual void EndOfEvent() {
49  ;
50  }
54  virtual void Register()=0;
55 
57  virtual TClonesArray* GetCollection(Int_t iColl) const = 0;
58 
62  virtual void Reset()=0;
63 
64  virtual void CopyClones( TClonesArray* cl1, TClonesArray* cl2 , Int_t offset) {
65  ;
66  }
67 
68  virtual void FinishPrimary() {
69  ;
70  }
71  virtual void FinishRun() {
72  ;
73  }
74  virtual void BeginPrimary() {
75  ;
76  }
77  virtual void PostTrack() {
78  ;
79  }
80  virtual void PreTrack() {
81  ;
82  }
83  virtual void BeginEvent() {
84  ;
85  }
86  virtual void FinishEvent() {
87  ;
88  }
89  virtual void SetSpecialPhysicsCuts() {
90  ;
91  }
92  void SaveGeoParams();
93  Int_t GetDetId() {
94  return fDetId;
95  }
96 
97  private:
98  FairDetector(const FairDetector& M);
100  return *this;
101  }
102 
103 
104  protected:
105 
106  Int_t fDetId; // Detector Id has to be set from ctr.
108 
109  ClassDef(FairDetector,1)
110 
111 };
112 #endif //FAIRDETECTOR_H