fix signature of GetNFoundable to be compatible with AliTPCtrack
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliVVtrack.h
1 #ifndef ALIVVTRACK_H
2 #define ALIVVTRACK_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 : Mikolaj Krzewicki mkrzewic@cern.ch     */
7
8 /*
9  * See implementation file for documentation
10  */
11
12 #include "AliPID.h"
13
14 struct AliFlatTPCCluster;
15 struct AliFlatExternalTrackParam;
16
17 class AliVVtrack {
18  public:
19   // --------------------------------------------------------------------------------
20   // -- Constructor / Destructors
21   AliVVtrack() {} 
22   virtual ~AliVVtrack() {}
23
24   // --------------------------------------------------------------------------------
25   // -- Getter methods
26   virtual AliFlatExternalTrackParam* GetTrackParamRefitted() { return NULL; } 
27   virtual AliFlatExternalTrackParam* GetTrackParamIp() { return NULL; } 
28   virtual AliFlatExternalTrackParam* GetTrackParamTPCInner() { return NULL; } 
29   virtual AliFlatExternalTrackParam* GetTrackParamOp() { return NULL; } 
30   virtual AliFlatExternalTrackParam* GetTrackParamCp() { return NULL; } 
31   virtual AliFlatExternalTrackParam* GetTrackParamITSOut() { return NULL; } 
32
33   // --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  
34   virtual Int_t GetNumberOfTPCClusters() { return 0; } 
35   virtual AliFlatTPCCluster* GetTPCClusters() { return NULL; } 
36   virtual AliFlatTPCCluster* GetTPCCluster(Int_t /*ind*/) { return NULL; } 
37   virtual Int_t GetNumberOfITSClusters() { return 0; }
38   virtual AliVVtrack *GetNextTrack() {return NULL; }
39
40   virtual Bool_t GetXYZ(Double_t* /*p*/) const {return kFALSE;}
41   virtual void  GetXYZ(Double_t& /*x*/, Double_t& /*y*/, Double_t& /*z*/) const {}
42   virtual Double_t GetTgl()  const {return 0.;}
43   virtual UShort_t GetTPCNclsF() const { return 0;}
44
45   virtual Double_t GetTOFsignalDz() const {return 0.;}
46   virtual void GetImpactParameters(Float_t& /*xy*/,Float_t& /*z*/) const {}
47   //TODO:
48   virtual void GetDZ(Double_t /*x*/,Double_t /*y*/,Double_t /*z*/,Double_t /*b*/, Float_t dz[2]) const {if (dz[0]==0) return;}
49
50   virtual Float_t GetTPCClusterInfo(Int_t nNeighbours=3, Int_t type=0, Int_t row0=0, Int_t row1=159, Int_t bitType=0 ) const {return 0.*nNeighbours*type*row0*row1*bitType;}
51   virtual UShort_t GetTPCncls(Int_t row0=0,Int_t row1=159) const {return 0*row0*row1;}
52   virtual Bool_t IsOn(Int_t /*mask*/) const {return kFALSE;}
53   virtual void GetDirection(Double_t d[3]) const {if (d[0]==0) return;}
54   virtual const Double_t *GetParameter() const {return 0;}
55   virtual void GetImpactParametersTPC(Float_t& /*xy*/,Float_t& /*z*/) const {}
56   virtual Int_t GetNumberOfClusters() const {return 0;} 
57   virtual const AliVVtrack* GetTPCInnerParam() const {return NULL;}
58   virtual Double_t Pt() const {return 0.;}
59   virtual Double_t GetP() const {return 0.;}
60   virtual Double_t GetTPCmomentum() const {return 0.;}
61   virtual ULong_t GetStatus() const {return 0;}
62   virtual const AliVVtrack * GetOuterParam() const { return NULL;}
63   virtual const AliVVtrack * GetInnerParam() const { return NULL;}
64   virtual Int_t GetKinkIndex(Int_t /*i*/) const { return 0;}
65   virtual Double_t Eta() const {return 0.;}
66   virtual Double_t GetY() const {return 0.;}
67   
68   virtual Double_t GetX() const {return 0.;}
69   virtual Double_t GetZ() const {return 0.;}
70   virtual Int_t GetNcls(Int_t /*idet*/) const {return 0;}
71   virtual void GetIntegratedTimes(Double_t* /*times*/, Int_t nspec=AliPID::kSPECIES) const {if (nspec<0) return;}
72   virtual Double_t GetSigned1Pt()  const {return 0.;}  
73   virtual Double_t GetLinearD(Double_t /*xv*/, Double_t /*yv*/) const {return 0.;}
74   virtual const AliVVtrack *GetConstrainedParam() const {return NULL;}
75   virtual Double_t GetAlpha() const {return 0.;}
76   virtual Char_t GetITSclusters(Int_t* /*idx*/) const {return 0;}
77   virtual Double_t GetSign() const {return 0.;}
78   virtual UShort_t GetTPCNcls() const { return 0;}
79   virtual Float_t GetTPCCrossedRows() const {return 0.;}
80   virtual Double_t GetTPCsignal() const {return 0.;}
81   virtual Double_t GetTOFsignal() const {return 0.;}
82   virtual UChar_t GetTRDclusters(Int_t* /*idx*/) const {return 0;}
83   
84   //AliTPCtrack
85   virtual Int_t GetNFoundable() const {return 0;} 
86   virtual Double_t GetdEdx()  const {return 0.;}
87
88   //  ClassDef(AliVVtrack, 1)   
89
90 };
91 #endif