]>
Commit | Line | Data |
---|---|---|
1c53abe2 | 1 | #ifndef ALITPCCLUSTERMI_H |
2 | #define ALITPCCLUSTERMI_H | |
3 | ||
4 | //------------------------------------------------------- | |
5 | // TPC Cluster Class | |
6d171107 | 6 | // Parallel tracking |
1c53abe2 | 7 | // Origin: Marian Ivanov |
8 | //------------------------------------------------------- | |
9 | ||
6d171107 | 10 | /* $Id$ */ |
11 | ||
12 | ||
1c53abe2 | 13 | #include "AliCluster.h" |
14 | #include "TMath.h" | |
03fe1804 | 15 | class AliTPCclusterInfo; |
1c53abe2 | 16 | //_____________________________________________________________________________ |
17 | class AliTPCclusterMI : public AliCluster { | |
18 | public: | |
d101caf3 | 19 | AliTPCclusterMI(); |
03fe1804 | 20 | AliTPCclusterMI(const AliTPCclusterMI & cluster); |
21 | AliTPCclusterMI &operator = (const AliTPCclusterMI & cluster); //assignment operator | |
2f32844a | 22 | AliTPCclusterMI(Int_t *lab, Float_t *hit); |
03fe1804 | 23 | virtual ~AliTPCclusterMI(); |
1c53abe2 | 24 | virtual Bool_t IsSortable() const; |
25 | virtual Int_t Compare(const TObject* obj) const; | |
7fd61510 | 26 | inline void Use(Int_t inc=10); |
508541c7 | 27 | virtual Int_t GetDetector() const {return fDetector;} |
28 | virtual Int_t GetRow() const {return fRow;} | |
1ac29fc4 | 29 | virtual void SetDetector(Int_t detector); |
508541c7 | 30 | virtual void SetRow(Int_t row){fRow = (UChar_t)(row%256);} |
03fe1804 | 31 | virtual void SetTimeBin(Float_t timeBin){ fTimeBin= timeBin;} |
32 | virtual void SetPad(Float_t pad){ fPad = pad;} | |
508541c7 | 33 | // |
6c024a0e | 34 | void SetQ(Float_t q) {fQ=(UShort_t)q;} |
1c53abe2 | 35 | void SetType(Char_t type) {fType=type;} |
6c024a0e | 36 | void SetMax(UShort_t max) {fMax=max;} |
7fd61510 | 37 | Int_t IsUsed(Int_t th=10) const {return (fUsed>=th) ? 1 : 0;} |
1c53abe2 | 38 | Float_t GetQ() const {return TMath::Abs(fQ);} |
39 | Float_t GetMax() const {return fMax;} | |
40 | Char_t GetType()const {return fType;} | |
03fe1804 | 41 | Float_t GetTimeBin() const { return fTimeBin;} |
42 | Float_t GetPad() const { return fPad;} | |
43 | AliTPCclusterInfo * GetInfo() const { return fInfo;} | |
b127a65f | 44 | void SetInfo(AliTPCclusterInfo * info); |
03fe1804 | 45 | |
1c53abe2 | 46 | private: |
e32b09f8 | 47 | AliTPCclusterInfo * fInfo; // pointer to the cluster debug info |
48 | Float_t fTimeBin; //time bin coordinate | |
49 | Float_t fPad; //pad coordinate | |
1c53abe2 | 50 | Short_t fQ ; //Q of cluster (in ADC counts) |
1c53abe2 | 51 | Short_t fMax; //maximal amplitude in cluster |
e32b09f8 | 52 | Char_t fType; //type of the cluster 0 means golden |
7fd61510 | 53 | Char_t fUsed; //counter of usage |
508541c7 | 54 | UChar_t fDetector; //detector number |
55 | UChar_t fRow; //row number number | |
76dc9fe0 | 56 | ClassDef(AliTPCclusterMI,5) // Time Projection Chamber clusters |
1c53abe2 | 57 | }; |
58 | ||
7fd61510 | 59 | void AliTPCclusterMI::Use(Int_t inc) |
60 | { | |
61 | if (inc>0) fUsed+=inc; | |
62 | else | |
63 | fUsed=0; | |
64 | } | |
65 | ||
1c53abe2 | 66 | |
67 | ||
68 | #endif | |
69 | ||
70 |