]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALITOFSDIGIT_H | |
2 | #define ALITOFSDIGIT_H | |
3 | ||
4 | //////////////////////////////////////////////// | |
5 | // // | |
6 | // Class for TOF SDigits // | |
7 | // // | |
8 | //////////////////////////////////////////////// | |
9 | ||
10 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
11 | * See cxx source for full Copyright notice */ | |
12 | ||
13 | /* $Id$ */ | |
14 | ||
15 | #include "TArrayF.h" | |
16 | #include "TArrayI.h" | |
17 | #include "AliDigit.h" | |
18 | ||
19 | //class TArrayF; | |
20 | //class TArrayI; | |
21 | ||
22 | // number 3 is a legacy from AliDigit object | |
23 | const Int_t kMAXDIGITS = 3; | |
24 | ||
25 | class AliTOFSDigit : public TObject { | |
26 | ||
27 | //overloading of the streamer << operator | |
28 | //friend ostream& operator << ( ostream& , const AliTOFSDigit&) ; | |
29 | ||
30 | public: | |
31 | AliTOFSDigit(); | |
32 | AliTOFSDigit(Int_t tracknum, Int_t* vol, Float_t* digit); | |
33 | // new ctor for sdigits | |
34 | AliTOFSDigit(Int_t sector, Int_t plate, Int_t strip, Int_t padx, Int_t padz, Float_t tdc, Float_t adc); | |
35 | // copy ctor | |
36 | AliTOFSDigit(const AliTOFSDigit & digit) ; | |
37 | virtual ~AliTOFSDigit(); | |
38 | void GetLocation(Int_t* Loc) const; | |
39 | Int_t GetTotPad() const; | |
40 | ||
41 | void Update(Int_t tdc, Int_t adc, Int_t track); | |
42 | ||
43 | // getters for AliTOFSDigit object | |
44 | Int_t GetNDigits() const {return fNDigits;} | |
45 | Float_t GetTdc(Int_t i) const {return fTdc->At(i);} | |
46 | Float_t GetAdc(Int_t i) const {return fAdc->At(i);} | |
47 | // Int_t GetNTracks(Int_t i) const {return fTracks[i]->GetSize();} | |
48 | Int_t GetTrack(Int_t i, Int_t j) const {return fTracks->At(i*kMAXDIGITS+j);} | |
49 | Int_t GetSector() const {return fSector;} | |
50 | Int_t GetPlate() const {return fPlate;} | |
51 | Int_t GetStrip() const {return fStrip;} | |
52 | Int_t GetPadx() const {return fPadx;} | |
53 | Int_t GetPadz() const {return fPadz;} | |
54 | ||
55 | protected: | |
56 | Int_t fSector; // number of sector | |
57 | Int_t fPlate; // number of plate | |
58 | Int_t fStrip; // number of strip | |
59 | Int_t fPadx; // number of pad along x | |
60 | Int_t fPadz; // number of pad along z | |
61 | Int_t fNDigits; // dimension of fTdc array | |
62 | TArrayF *fTdc; // tdc values for sdigit | |
63 | TArrayF *fAdc; // adc values for sdigit | |
64 | TArrayI *fTracks; // contributing tracks, kMAXDIGITS entries per | |
65 | // 1 tdc value | |
66 | ||
67 | // Float_t *fTdc; //[fNDigits] tdc values for sdigit | |
68 | // Float_t *fAdc; //[fNDigits] adc values for sdigit | |
69 | // Int_t **fTracks; //[fNDigits] contributing tracks, pointers to | |
70 | // arrays with track indices | |
71 | ||
72 | ClassDef(AliTOFSDigit,1) // SDigit for Time Of Flight | |
73 | }; | |
74 | ||
75 | #endif /* ALITOFSDIGIT_H */ |