3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 //-------------------------------------------------------
8 // A very naive design... Should be made better by the detector experts...
9 // Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch
10 //-------------------------------------------------------
18 const Int_t kMaxCluster=77777; //maximal number of the TOF clusters
20 class AliTOFpidESD : public TObject {
22 AliTOFpidESD(){fR=376.; fDy=2.5; fDz=3.5; fN=0; fEventN=0;}
23 AliTOFpidESD(Double_t *param) throw (const Char_t *);
24 ~AliTOFpidESD(){UnloadClusters();}
26 Int_t MakePID(AliESD *event);
27 Int_t LoadClusters(const TFile *f);
28 Int_t LoadClusters(TTree *f);
29 void UnloadClusters();
30 void SetEventNumber(Int_t n) {fEventN=n;}
32 Int_t GetEventNumber() const {return fEventN;}
37 AliTOFcluster(Double_t *h, Int_t *l) {
38 fR=h[0]; fPhi=h[1]; fZ=h[2]; fTDC=h[3]; fADC=h[4];
39 fLab[0]=l[0]; fLab[1]=l[1]; fLab[2]=l[2];
41 void Use() {fADC=-fADC;}
43 Double_t GetR() const {return fR;}
44 Double_t GetPhi() const {return fPhi;}
45 Double_t GetZ() const {return fZ;}
46 Double_t GetTDC() const {return fTDC;}
47 Double_t GetADC() const {return TMath::Abs(fADC);}
48 Int_t IsUsed() const {return (fADC<0) ? 1 : 0;}
49 Int_t GetLabel(Int_t n) const {return fLab[n];}
60 Int_t InsertCluster(AliTOFcluster*);
61 Int_t FindClusterIndex(Double_t z) const;
63 Int_t fEventN; //event number
65 Double_t fR; // mean readius of the TOF barrel
66 Double_t fDy; // size of the TOF cell in R*Phi
67 Double_t fDz; // size of the TOF cell in Z
69 Double_t fSigma; // intrinsic TOF resolution
70 Double_t fRange; // one particle type PID range (in sigmas)
72 Int_t fN; // number of the TOF clusters
73 AliTOFcluster *fClusters[kMaxCluster]; // pointers to the TOF clusters
75 ClassDef(AliTOFpidESD,1) // TOF PID class