]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/global/AliFlatTPCCluster.h
Merge branch 'master' into flatdev
[u/mrichter/AliRoot.git] / HLT / global / AliFlatTPCCluster.h
1 #ifndef ALIFLATTPCCLUSTER_H
2 #define ALIFLATTPCCLUSTER_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               *
6  * Primary Authors : Sergey Gorbunov, Jochen Thaeder, Chiara Zampolli     */
7
8 /**
9  * >> Flat structure representing a TPC cluster <<
10  */
11
12 #include "Rtypes.h"
13
14 struct AliFlatTPCCluster
15 {
16   Float_t fX;       // X coordinate in local coordinates
17   Float_t fY;       // Y coordinate in local coordinates
18   Float_t fZ;       // Z coordinate in local coordinates
19   UChar_t fPadRow;  // Pad row number
20   Float_t fSigmaY2; // error (former width) of the clusters
21   Float_t fSigmaZ2; // error (former width) of the clusters
22   UInt_t  fCharge;  // total charge of cluster
23   UInt_t  fQMax;    // QMax of cluster
24
25   void SetX(Float_t x)             {fX = x;}
26   void SetY(Float_t y)             {fY = y;}
27   void SetZ(Float_t z)             {fZ = z;}
28   void SetPadRow(Short_t padrow)   {fPadRow = padrow;}
29   void SetSigmaY2(Float_t sigmaY2) {fSigmaY2 = sigmaY2;}
30   void SetSigmaZ2(Float_t sigmaZ2) {fSigmaZ2 = sigmaZ2;}
31   void SetCharge(UShort_t charge)  {fCharge = charge;}
32   void SetQMax(UShort_t qmax)      {fQMax = qmax;}
33
34   Float_t  GetX()       const      {return fX;}
35   Float_t  GetY()       const      {return fY;}
36   Float_t  GetZ()       const      {return fZ;}
37   UShort_t GetPadRow()  const      {return fPadRow;}
38   Float_t  GetSigmaY2() const      {return fSigmaY2;}
39   Float_t  GetSigmaZ2() const      {return fSigmaZ2;}
40   UShort_t GetCharge()  const      {return fCharge;}
41   UShort_t GetQMax()    const      {return fQMax;}
42
43   AliFlatTPCCluster() 
44   : fX(0.), fY(0.), fZ(0.), fPadRow(0), fSigmaY2(0.), fSigmaZ2(0.), fCharge(0), fQMax(0) {}
45
46   static Bool_t SortClusters(const AliFlatTPCCluster &first, const AliFlatTPCCluster &second){
47     // Method to sort two clusters according to pad row
48     Int_t padrowfirst  = first.GetPadRow();  
49     Int_t padrowsecond = second.GetPadRow();
50     return (padrowfirst < padrowsecond);
51   }
52 };
53
54 typedef struct AliFlatTPCCluster AliFlatTPCCluster;
55
56 #endif