]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TOF/AliTOFTrackV2.h
Warning fix (F. Carminati)
[u/mrichter/AliRoot.git] / TOF / AliTOFTrackV2.h
1 #ifndef ALITOFTRACKV2_H
2 #define ALITOFTRACKV2_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 //////////////////////////////////////////////////////////////
7 //  TOF Reconstructed track
8 //  AliTOFTrackV2  class                        
9 //  (see implementation file for details)
10 //                               
11 //-- Author: F. Pierella
12 /////////////////////////////////////////////////////////////
13
14
15 #include "TObject.h"
16
17 //_______________________________________________________
18 class AliTOFTrackV2 : public TObject{
19
20  public:
21   AliTOFTrackV2();
22   AliTOFTrackV2(Int_t trackLabel, Int_t matchingStatus, Float_t tpcMom, Float_t dEdX, Float_t* tpcXYZ, Float_t* tpcPtPz, Float_t* trdXYZ, Float_t* trdPxPyPz);
23   ~AliTOFTrackV2(){};
24
25   void AddRecLength(Float_t deltaRecLength)              {fRecTrackLength+=deltaRecLength;}
26   void UpdateTrack(Int_t tofDigitTrackLabel, Int_t matching, Float_t tof);
27   void UpdateTrack(Int_t pdgCode, Float_t trackLength);
28
29   void SetTrackLabel(Int_t trackLabel)                   {fTrackLabel=trackLabel;}   
30   void SetTOFDigitTrackLabel(Int_t tofDigitTrackLabel)   {fTOFDigitTrackLabel=tofDigitTrackLabel;}
31   void SetPTPC(Float_t tpcMom)                           {fPTPC=tpcMom;}
32   void SetPdgCode(Int_t pdgCode)                         {fPdgCode=pdgCode;}   
33   void SetdEdX(Float_t dEdX)                             {fdEdX=dEdX;} 
34   void SetxTPC(Float_t xTPC)                             {fxTPC=xTPC;}
35   void SetyTPC(Float_t yTPC)                             {fyTPC=yTPC;}
36   void SetzTPC(Float_t zTPC)                             {fzTPC=zTPC;}
37   void SetPtTPC(Float_t ptTPC)                           {fPtTPC=ptTPC;}
38   void SetPzTPC(Float_t pzTPC)                           {fPzTPC=pzTPC;}
39   void SetxTRD(Float_t xTRD)                             {fxTRD=xTRD;}
40   void SetyTRD(Float_t yTRD)                             {fyTRD=yTRD;}
41   void SetzTRD(Float_t zTRD)                             {fzTRD=zTRD;}
42   void SetPxTRD(Float_t pxTRD)                           {fPxTRD=pxTRD;}
43   void SetPyTRD(Float_t pyTRD)                           {fPyTRD=pyTRD;}
44   void SetPzTRD(Float_t pzTRD)                           {fPzTRD=pzTRD;}
45   void SetMatchingStatus(Int_t matching)                 {fMatchingStatus=matching;}
46   void SetLength(Float_t length)                         {fLength=length;}
47   void SetRecLength(Float_t rlength)                     {fRecTrackLength=rlength;}
48   void SetTof(Float_t tof)                               {fTof=tof;}
49   void SetMassTOF(Float_t massTOF)                       {fMassTOF=massTOF;}
50   void SetVertex(Float_t xvtx,Float_t yvtx,Float_t zvtx) {fXRecVtx=xvtx; fYRecVtx=yvtx; fZRecVtx=zvtx;}
51   void SetMomVertex(Float_t pxvtx,Float_t pyvtx,Float_t pzvtx) {fPxRecVtx=pxvtx; fPyRecVtx=pyvtx; fPzRecVtx=pzvtx;}
52
53   Int_t    GetTrackLabel()         const {return fTrackLabel;}
54   Int_t    GetTOFDigitTrackLabel() const {return fTOFDigitTrackLabel;}
55   Float_t  GetPTPC()               const {return fPTPC;}
56   Int_t    GetPdgCode()            const {return fPdgCode;}
57   Float_t  GetdEdX()               const {return fdEdX;}
58   Float_t  GetxTPC()               const {return fxTPC;}
59   Float_t  GetyTPC()               const {return fyTPC;}
60   Float_t  GetzTPC()               const {return fzTPC;}
61   Float_t  GetPtTPC()              const {return fPtTPC;}
62   Float_t  GetPzTPC()              const {return fPzTPC;}
63   Float_t  GetxTRD()               const {return fxTRD;}
64   Float_t  GetyTRD()               const {return fyTRD;}
65   Float_t  GetzTRD()               const {return fzTRD;}
66   Float_t  GetPxTRD()              const {return fPxTRD;}
67   Float_t  GetPyTRD()              const {return fPyTRD;}
68   Float_t  GetPzTRD()              const {return fPzTRD;}
69   Int_t    GetMatchingStatus()     const {return fMatchingStatus;}
70   Float_t  GetLength()             const {return fLength;}
71   Float_t  GetRecLength()          const {return fRecTrackLength;}
72   Float_t  GetTof()                const {return fTof;}
73   Float_t  GetMassTOF()            const {return fMassTOF;}
74   Float_t  GetXVtx()               const {return fXRecVtx;}
75   Float_t  GetYVtx()               const {return fYRecVtx;}
76   Float_t  GetZVtx()               const {return fZRecVtx;}
77   Float_t  GetPxVtx()              const {return fPxRecVtx;}
78   Float_t  GetPyVtx()              const {return fPyRecVtx;}
79   Float_t  GetPzVtx()              const {return fPzRecVtx;}
80
81  private:
82   Int_t    fTrackLabel;         // track label (rt->GetLabel()) as coming from TPC reconstruction
83   Int_t    fTOFDigitTrackLabel; // track label stored into the TOF digit
84                                 // assigned to the track
85   Float_t  fPTPC;      // momentum as given by reconstruction in TPC
86   Int_t    fPdgCode;   // PDG code of the particle (for MC events)
87   Float_t  fdEdX;      // total amount of loss energy in TPC and ITS
88   Float_t  fxTPC;      // x-coordinate on TPC
89   Float_t  fyTPC;      // y-coordinate on TPC
90   Float_t  fzTPC;      // z-coordinate on TPC
91   Float_t  fPtTPC;     // pt at the end of TPC
92   Float_t  fPzTPC;     // pz-momentum at the end of TPC
93   Float_t  fxTRD;      // x-coordinate on the last layer of TRD
94   Float_t  fyTRD;      // y-coordinate on the last layer of TRD
95   Float_t  fzTRD;      // y-coordinate on the last layer of TRD
96   Float_t  fPxTRD;     // x-momentum at the end of TRD
97   Float_t  fPyTRD;     // y-momentum at the end of TRD
98   Float_t  fPzTRD;     // z-momentum at the end of TRD
99   Int_t    fMatchingStatus; // matching status (not only for MC events)
100                             // see details in the implementation file
101   Float_t  fLength  ; // Track length [cm] from the origin to the TOF [cm]
102                       // GEANT track length to be compared with that coming from
103                       // reconstruction in order to evaluate the resolution
104   Float_t  fTof;      // Time [ns] determined by the TOF digit assigned to the track
105   Float_t  fMassTOF;  // Mass [GeV] determined by fTOF,fLength, and reconstructed momentum in TPC
106   Float_t  fXRecVtx;  // x component of the reconstructed vertex position MRF
107   Float_t  fYRecVtx;  // y component of the reconstructed vertex position MRF
108   Float_t  fZRecVtx;  // z component of the reconstructed vertex position MRF
109   Float_t  fPxRecVtx;  // x component of the reconstructed vertex momentum MRF
110   Float_t  fPyRecVtx;  // y component of the reconstructed vertex momentum MRF
111   Float_t  fPzRecVtx;  // z component of the reconstructed vertex momentum MRF
112   Float_t  fRecTrackLength; // reconstructed track length (coarse)
113
114   ClassDef(AliTOFTrackV2,2)   // TOF Reconstructed track
115 };
116
117 #endif /* ALITOFTRACKV2_H */