]>
Commit | Line | Data |
---|---|---|
8918e700 | 1 | #ifndef ALIDETECTOR_H |
2 | #define ALIDETECTOR_H | |
3da30618 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8494b010 | 8 | #include <AliModule.h> |
94de3818 | 9 | class AliHit; |
fe4da5cc | 10 | |
8494b010 | 11 | class AliDetector : public AliModule { |
fe4da5cc | 12 | |
fe4da5cc | 13 | public: |
14 | ||
15 | // Creators - distructors | |
16 | AliDetector(const char* name, const char *title); | |
17 | AliDetector(); | |
8918e700 | 18 | AliDetector(const AliDetector &det) {det.Copy(*this);} |
fe4da5cc | 19 | virtual ~AliDetector(); |
20 | ||
21 | // Inline functions | |
ef42d733 | 22 | void Copy(AliDetector &det) const; |
94de3818 | 23 | virtual int GetNdigits() const {return fNdigits;} |
24 | virtual int GetNhits() const {return fNhits;} | |
25 | TClonesArray *Digits() const {return fDigits;} | |
26 | TClonesArray *Hits() const {return fHits;} | |
27 | TObjArray *Points() const {return fPoints;} | |
28 | Int_t GetIshunt() const {return fIshunt;} | |
8918e700 | 29 | void SetIshunt(Int_t ishunt) {fIshunt=ishunt;} |
ef42d733 | 30 | AliDetector &operator=(const AliDetector &det) |
8918e700 | 31 | {det.Copy(*this); return (*this);} |
fe4da5cc | 32 | |
fe4da5cc | 33 | // Other methods |
fe4da5cc | 34 | virtual void Browse(TBrowser *b); |
fe4da5cc | 35 | virtual void FinishRun(); |
fe4da5cc | 36 | virtual void LoadPoints(Int_t track); |
37 | virtual void MakeBranch(Option_t *opt=" "); | |
fe4da5cc | 38 | virtual void ResetDigits(); |
39 | virtual void ResetHits(); | |
40 | virtual void ResetPoints(); | |
41 | virtual void SetTreeAddress(); | |
42 | virtual void SetTimeGate(Float_t gate) {fTimeGate=gate;} | |
94de3818 | 43 | virtual Float_t GetTimeGate() const {return fTimeGate;} |
8494b010 | 44 | virtual void StepManager() {} |
45 | virtual void DrawModule() {} | |
8918e700 | 46 | virtual AliHit* FirstHit(Int_t track); |
fe4da5cc | 47 | virtual AliHit* NextHit(); |
48 | virtual void SetBufferSize(Int_t bufsize=8000) {fBufferSize = bufsize;} | |
fe4da5cc | 49 | |
8918e700 | 50 | // Data members |
51 | protected: | |
52 | ||
53 | Float_t fTimeGate; //Time gate in seconds | |
54 | ||
55 | Int_t fIshunt; //1 if the hit is attached to the primary | |
56 | Int_t fNhits; //Number of hits | |
57 | Int_t fNdigits; //Number of digits | |
58 | Int_t fBufferSize; //buffer size for Tree detector branches | |
59 | TClonesArray *fHits; //List of hits for one track only | |
60 | TClonesArray *fDigits; //List of digits for this detector | |
61 | TObjArray *fPoints; //Array of points for each track (all tracks in memory) | |
62 | ||
fe4da5cc | 63 | ClassDef(AliDetector,1) //Base class for ALICE detectors |
64 | }; | |
65 | #endif |