1 #ifndef ALIFLATTPCCLUSTER_H
2 #define ALIFLATTPCCLUSTER_H
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 */
9 * >> Flat structure representing a TPC cluster <<
13 #include "AliVVcluster.h"
14 #include "AliFlatESDMisc.h"
16 class AliFlatTPCCluster: public AliVVcluster
18 friend class AliFlatESDTrack;
20 void SetX(Float_t x) {fX = x;}
21 void SetY(Float_t y) {fY = y;}
22 void SetZ(Float_t z) {fZ = z;}
23 void SetPadRow(Short_t padrow) {fPadRow = padrow;}
24 void SetSigmaY2(Float_t sigmaY2) {fSigmaY2 = sigmaY2;}
25 void SetSigmaZ2(Float_t sigmaZ2) {fSigmaZ2 = sigmaZ2;}
26 void SetCharge(UShort_t charge) {fCharge = charge;}
27 void SetQMax(UShort_t qmax) {fQMax = qmax;}
29 Float_t GetX() const {return fX;}
30 Float_t GetY() const {return fY;}
31 Float_t GetZ() const {return fZ;}
32 UShort_t GetPadRow() const {return fPadRow;}
33 Float_t GetSigmaY2() const {return fSigmaY2;}
34 Float_t GetSigmaZ2() const {return fSigmaZ2;}
35 UShort_t GetCharge() const {return fCharge;}
36 UShort_t GetQMax() const {return fQMax;}
39 : fX(0.), fY(0.), fZ(0.), fPadRow(0), fSigmaY2(0.), fSigmaZ2(0.), fCharge(0), fQMax(0) {}
41 static Bool_t SortClusters(const AliFlatTPCCluster &first, const AliFlatTPCCluster &second){
42 // Method to sort two clusters according to pad row
43 Int_t padrowfirst = first.GetPadRow();
44 Int_t padrowsecond = second.GetPadRow();
45 return (padrowfirst < padrowsecond);
49 AliFlatTPCCluster(AliFlatESDSpecialConstructorFlag);
50 virtual ~AliFlatTPCCluster() {}
51 Float_t fX; // X coordinate in local coordinates
52 Float_t fY; // Y coordinate in local coordinates
53 Float_t fZ; // Z coordinate in local coordinates
54 UChar_t fPadRow; // Pad row number
55 Float_t fSigmaY2; // error (former width) of the clusters
56 Float_t fSigmaZ2; // error (former width) of the clusters
57 UInt_t fCharge; // total charge of cluster
58 UInt_t fQMax; // QMax of cluster