]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TOF/AliTOFcluster.h
changes for proper protection against failed retrieval of CDB Reco object (moved...
[u/mrichter/AliRoot.git] / TOF / AliTOFcluster.h
1 #ifndef ALITOFCLUSTER_H
2 #define ALITOFCLUSTER_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */
8
9 //////////////////////////////////////////////
10 //                                          //
11 //     Class for TOF cluster definition     //
12 //                                          //
13 //////////////////////////////////////////////
14
15 #include "TMath.h"
16 #include "TObject.h"
17
18 class AliTOFcluster : public TObject {
19  public:
20   AliTOFcluster(); // default ctor
21   AliTOFcluster(Double_t *h, Int_t *l, Int_t *ind, Int_t idx, Float_t ToT, Double_t TdcND, Bool_t status); // ctor
22   AliTOFcluster(Double_t *h, Int_t *l, Int_t *ind, Int_t idx, Float_t ToT, Double_t TdcND); // ctor
23   AliTOFcluster(Double_t *h, Int_t *l, Int_t *ind, Int_t idx, Float_t ToT, Double_t TdcND, Double_t TdcRAW, Bool_t status); // ctor
24   AliTOFcluster(Double_t *h, Int_t *l, Int_t *ind, Int_t idx, Float_t ToT, Double_t TdcND, Double_t TdcRAW); // ctor
25   AliTOFcluster(Double_t *h, Int_t *ind); // new ctor
26   AliTOFcluster(const AliTOFcluster & cluster); // copy ctor
27   virtual ~AliTOFcluster(); // dtor
28
29   Double_t GetR() const   {return fR;}   // Cluster Radius
30   Double_t GetPhi() const {return fPhi;} // Cluster Phi
31   Double_t GetZ()   const {return fZ;}   // Cluster Z
32   Double_t GetTDC() const {return fTDC;} // Cluster ToF
33   Double_t GetTDCND() const {return fTdcND;} // Cluster ToF
34   Double_t GetTDCRAW() const {return fTdcRAW;} // Cluster Raw time
35   Double_t GetADC() const {return TMath::Abs(fADC);}  // Cluster Charge
36   Double_t GetToT() const {return fToT;}  // Cluster Charge
37   Int_t    IsUsed() const {return (fADC<0) ? 1 : 0;}  // Flagging
38   Int_t    GetLabel(Int_t n) const  {return fLab[n];} // Labels of tracks in Cluster
39   Int_t    GetDetInd(Int_t n) const {return fdetIndex[n];} // Cluster Detector Indeces
40   Int_t    GetIndex() const         {return fIdx;}         // Cluster Index
41   void     Use() {fADC=-fADC;}
42   Double_t GetQuality() const {return fQuality;}
43   void     SetQuality(Double_t quality) {fQuality = quality;}
44   Bool_t   GetStatus() const {return fStatus;}
45   void     SetStatus(Bool_t status) {fStatus = status;}
46   void     SetToT(Float_t ToT) {fToT = ToT;}
47   void     SetTDC(Float_t Tdc) {fTDC = Tdc;}
48   void     SetTDCND(Float_t Tdc) {fTdcND = Tdc;}
49   void     SetTDCRAW(Float_t Tdc) {fTdcRAW = Tdc;}
50  private:
51
52   Int_t fLab[3];      // track labels
53   Int_t fIdx;         // index of this cluster
54   Int_t fdetIndex[5]; // Cluster detector Indeces (sector,plate,strip,padz,padx)
55   Double_t fR;        // r-coordinate
56   Double_t fPhi;      // phi-coordinate
57   Double_t fZ;        // z-coordinate
58   Double_t fTDC;      // TDC count
59   Double_t fADC;      // ADC count
60   Double_t fQuality;  // quality of the best track 
61   Float_t  fToT;       // ToT
62   Double_t fTdcND;      // TDC count
63   Double_t fTdcRAW;      // RAW TDC count
64   Bool_t   fStatus;      // cluster online status 
65
66   ClassDef(AliTOFcluster, 4) // TOF cluster
67 };
68
69 #endif