New base class AliPIDResponse
[u/mrichter/AliRoot.git] / STEER / AliVTrack.h
CommitLineData
4f6e22bd 1#ifndef AliVTrack_H
2#define AliVTrack_H
3/* Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6
7//-------------------------------------------------------------------------
8// base class for ESD and AOD tracks
9// Author: A. Dainese
10//-------------------------------------------------------------------------
11
6dc40b1c 12#include <TBits.h>
13
4f6e22bd 14#include "AliVParticle.h"
15
6dc40b1c 16class AliVVertex;
c8fe2783 17class AliExternalTrackParam;
4f6e22bd 18
19class AliVTrack: public AliVParticle {
20
21public:
22 AliVTrack() { }
23 virtual ~AliVTrack() { }
24 AliVTrack(const AliVTrack& vTrack);
25 AliVTrack& operator=(const AliVTrack& vTrack);
26
27 virtual Int_t GetID() const = 0;
28 virtual UChar_t GetITSClusterMap() const = 0;
29bf19f2 29 virtual Float_t GetTPCClusterInfo(Int_t /*nNeighbours*/, Int_t /*type*/, Int_t /*row0*/=0, Int_t /*row1*/=159) const {return 0.;}
07cc7a48 30 virtual UShort_t GetTPCNcls() const { return 0;}
29bf19f2 31 virtual UShort_t GetTPCNclsF() const { return 0;}
32
33 //pid info
34 virtual Double_t GetITSsignal() const {return 0.;}
35 virtual Double_t GetTPCsignal() const {return 0.;}
36 virtual UShort_t GetTPCsignalN() const {return 0 ;}
37 virtual Double_t GetTPCmomentum() const {return 0.;}
38 virtual Double_t GetTOFsignal() const {return 0.;}
39
4f6e22bd 40 virtual ULong_t GetStatus() const = 0;
892be05f 41 virtual Bool_t GetXYZ(Double_t *p) const = 0;
f7a1cc68 42 virtual Double_t GetBz() const;
8b6e3369 43 virtual void GetBxByBz(Double_t b[3]) const;
4f6e22bd 44 virtual Bool_t GetCovarianceXYZPxPyPz(Double_t cv[21]) const = 0;
6dc40b1c 45 virtual Bool_t PropagateToDCA(const AliVVertex *vtx,Double_t b,Double_t maxd,Double_t dz[2],Double_t covar[3]) = 0;
c8fe2783 46 virtual const AliExternalTrackParam * GetOuterParam() const { return NULL; }
47 virtual Int_t GetNcls(Int_t /*idet*/) const { return 0; }
48 virtual Bool_t GetPxPyPz(Double_t */*p*/) const { return kFALSE; }
49 virtual void SetID(Short_t /*id*/) {;}
50
4f6e22bd 51
606fdf76 52 ClassDef(AliVTrack,1) // base class for tracks
4f6e22bd 53};
54
55#endif