Line data Source code
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 "AliCluster3D.h"
17 :
18 : class AliTOFcluster : public AliCluster3D {
19 : public:
20 : AliTOFcluster(); // default ctor
21 : AliTOFcluster(UShort_t volId,
22 : Float_t x, Float_t y, Float_t z,
23 : Float_t sx2, Float_t sxy, Float_t sxz,
24 : Float_t sy2, Float_t syz,
25 : Float_t sz2,
26 : Int_t *lab, Int_t * const ind, Int_t *par,
27 : Bool_t status, Int_t idx); // ctor
28 : AliTOFcluster(const AliTOFcluster & cluster); // copy ctor
29 : AliTOFcluster& operator = (const AliTOFcluster& cls);
30 : virtual ~AliTOFcluster(); // dtor
31 :
32 : // Getters and Setters
33 1256 : Double_t GetR() const {return fR;} // Cluster Radius
34 4016 : Double_t GetPhi() const {return fPhi;} // Cluster Phi
35 :
36 0 : Double_t GetQuality() const {return fQuality;} // Cluster quality getter
37 3302 : Bool_t GetStatus() const {return fStatus;} // Cluster status getter
38 1750 : Int_t GetToT() const {return fToT;} // Cluster Charge getter
39 1750 : Int_t GetTDC() const {return fTDC;} // Cluster ToF getter
40 400 : Int_t GetTDCND() const {return fTdcND;} // Cluster ToF getter
41 950 : Int_t GetTDCRAW() const {return fTdcRAW;} // Cluster Raw time getter
42 400 : Int_t GetADC() const {return TMath::Abs(fADC);} // Cluster Charge getter
43 2806 : Int_t IsUsed() const {return (fADC<0) ? 1 : 0;} // Flagging
44 12780 : Int_t GetDetInd(Int_t n) const {return fdetIndex[n];} // Cluster Detector Indices getter
45 400 : Int_t GetIndex() const {return fIdx;} // Digit Index getter
46 1024 : Int_t GetDeltaBC() const {return fDeltaBC;}; // deltaBC
47 1024 : Int_t GetL0L1Latency() const {return fL0L1Latency;}; // L0L1 latency
48 :
49 326 : void Use(Int_t = 0) {fADC=-fADC;} // setter
50 0 : void SetQuality(Double_t quality) {fQuality = quality;} // Cluster quality setter
51 0 : void SetStatus(Bool_t status) {fStatus = status;} // Cluster status setter
52 0 : void SetToT(Int_t ToT) {fToT = ToT;} // Cluster ToT setter
53 400 : void SetTDC(Int_t Tdc) {fTDC = Tdc;} // Cluster ToF setter
54 0 : void SetTDCND(Int_t Tdc) {fTdcND = Tdc;} // Cluster ToFnd setter
55 0 : void SetTDCRAW(Int_t Tdc) {fTdcRAW = Tdc;} // Cluster ToF-raw setter
56 0 : void SetDeltaBC(Int_t value) {fDeltaBC = value;}; // deltaBC
57 0 : void SetL0L1Latency(Int_t value) {fL0L1Latency = value;}; // L0-L1 latency
58 : //
59 624 : void SetESDID(Int_t id) {fESDID = id;}
60 426 : Int_t GetESDID() const {return fESDID;}
61 : //
62 : private:
63 :
64 : Int_t fIdx; // index of the digit related to this cluster
65 : Int_t fdetIndex[5]; // Cluster detector indices
66 : // (sector, plate, strip, padz, padx)
67 : // Cluster Quality
68 : Double_t fQuality; // quality of the best track
69 :
70 : // Cluster Global Position
71 : Double_t fR; // r-coordinate
72 : Double_t fPhi; // phi-coordinate
73 :
74 : // TOF Signal parameters
75 : Int_t fTDC; // TDC count
76 : Int_t fToT; // ToT
77 : Int_t fADC; // ADC count
78 : Int_t fTdcND; // TDC count
79 : Int_t fTdcRAW; // RAW TDC count
80 : Bool_t fStatus; // cluster online status
81 : Int_t fDeltaBC; // deltaBC
82 : Int_t fL0L1Latency; // L0L1 latency
83 : //
84 : Int_t fESDID; //! id in ESD clusters list (if stored)
85 :
86 34 : ClassDef(AliTOFcluster, 8) // TOF cluster
87 : };
88 :
89 : #endif
|