]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSglobalRecPoint.h
Mostly minor style modifications to be ready for cloning with EMCAL
[u/mrichter/AliRoot.git] / ITS / AliITSglobalRecPoint.h
1 #ifndef ALIITSGLOBALRECPOINT_H
2 #define ALIITSGLOBALRECPOINT_H
3
4 #include <TObject.h>
5
6 class AliITSglobalRecPoint : public TObject {
7
8         public:
9                         
10                 AliITSglobalRecPoint();
11       AliITSglobalRecPoint(Double_t gx, Double_t gy, Double_t gz, Double_t gsx, Double_t gsy, Double_t gsz, Int_t l);
12                 
13                 virtual ~AliITSglobalRecPoint() { }
14                 
15                 // difference in azymuthal angle
16                 Double_t DPhi  (AliITSglobalRecPoint *p); 
17                 // difference in polar angle
18                 Double_t DTheta(AliITSglobalRecPoint *p); 
19                 // checks if the pt contains a given positive label
20                 Bool_t   HasID (Int_t ID)      
21                 { if (ID < 0) return kFALSE; else return (fLabel[0]==ID || fLabel[1]==ID || fLabel[2]==ID); }
22                 // checks if the pt shares at least a positive label with another one
23                 Bool_t   SharesID(AliITSglobalRecPoint *p) 
24                 { return (HasID(p->fLabel[0]) || HasID(p->fLabel[1]) || HasID(p->fLabel[2])); }
25                 
26                 // Parameters for sorting
27                 Bool_t  IsSortable() const { return kTRUE; }
28                 Int_t   Compare(const TObject *O) const;
29                 
30         public:
31                         
32                 Double_t fGX, fGY, fGZ; // (x,y,z) in the global reference
33                         
34                 Double_t fR2;    // = sqrt(x^2 + y^2)
35                 Double_t fR3;    // = sqrt(x^2 + y^2 + z^2)
36                 Double_t fPhi;   // = atan(y/x)
37                 Double_t fTheta; // = acos(z/r3)
38                 
39                 Double_t fGSX; //
40                 Double_t fGSY; // sigmas of global coords
41                 Double_t fGSZ; //
42                 
43                 Int_t fModule;      // ITS module containing the point
44                 Int_t fPosInModule; // position in TClonesArray of TreeR
45                 Int_t fLayer;       // ITS layer containing the point
46                 Int_t fLabel[3];    // Generated tracks containing the point
47                 Int_t fKalmanLabel; // Kalman recognized track containing the point
48                 
49                 Int_t fSign;        //   0 if the point doesn't belong to a Kalman track
50                                     // + 1 if the point belongs to a Kalman good track
51                                     // - 1 if the point belongs to a Kalman fake track
52                 
53                 Int_t fUsed;        // a flag to avoid point recycling
54                 
55                 ClassDef(AliITSglobalRecPoint, 1) // AliITSglobalRecPoints class
56 };
57
58 #endif