Added option for different binning of DCAxy axis in THnSparse. Same width for all...
[u/mrichter/AliRoot.git] / ITS / AliITSclusterTable.h
1 #ifndef ALIITSCLUSTERTABLE_H
2 #define ALIITSCLUSTERTABLE_H 
3 /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5 //////////////////////////////////////////////////////////////////////////
6 // Class used to simplify some operations with clusters.                 //
7 // -Function FillArray fills an array wich contains, for each            //
8 //  ITS module, an array with the indices of all the clusters detected   //
9 //  by the module. The indices correspond to the cluster indices in class// 
10 //  AliITSlayer of AliITStrackerV2.                                      //
11 //  This function is used in AliITStrackerSA::FindTracks.                // 
12 // -Function FillArrayLabel fills an array wich contains, for each       //
13 //  particle label, and for each layer, the information on clusters:     //
14 //  0 if there is no cluster, 1 if there is a cluster with this label.   //
15 //  This function is used to define trackable tracks.                    //   
16 ///////////////////////////////////////////////////////////////////////////
17
18
19 #include <TObject.h>
20
21
22 class AliITSclusterTable : public TObject {
23
24
25  public:
26
27   AliITSclusterTable();
28   AliITSclusterTable(Double_t x, Double_t y, Double_t z, Double_t sx, Double_t sy, Double_t sz, Double_t phi, Double_t lambda, Int_t index);
29   virtual ~AliITSclusterTable(){;}
30
31   Int_t   GetOrInd() const {return fOrInd;}
32   Double_t GetX() const {return fX;}
33   Double_t GetY() const {return fY;}
34   Double_t GetZ() const {return fZ;}
35   Double_t GetSx() const {return fSx;}
36   Double_t GetSy() const {return fSy;}
37   Double_t GetSz() const {return fSz;}
38   Double_t GetPhi() const {return fPhi;}
39   Double_t GetLambda() const {return fLam;}
40
41   virtual Bool_t IsEqual(const TObject *obj) const 
42     {return fLam == ((AliITSclusterTable*)obj)->fLam;}
43   virtual Bool_t      IsSortable() const { return kTRUE; }
44   virtual Int_t       Compare(const TObject *obj) const 
45     {if(fLam<((AliITSclusterTable*)obj)->fLam) return -1;
46     else if(fLam>((AliITSclusterTable*)obj)->fLam) return 1;
47     else return 0; }
48
49  protected: 
50
51   Int_t   fOrInd; //! original index in tracker
52   Double_t fX;  //!x of cluster 
53   Double_t fY;  //!y of cluster
54   Double_t fZ;  //!z of cluster
55   Double_t fSx; //! error on x
56   Double_t fSy; //! error on y
57   Double_t fSz; //! error on z
58   Double_t fPhi; //! azimuthal angle
59   Double_t fLam; //! lambda angle
60
61   ClassDef(AliITSclusterTable,3)
62 };
63
64 #endif
65
66
67