ALIfied Pythia version for PYQUEN.
[u/mrichter/AliRoot.git] / TRD / AliTRDtrackV1.h
CommitLineData
d9950a5a 1#ifndef ALITRDTRACKV1_H
2#define ALITRDTRACKV1_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8////////////////////////////////////////////////////////////////////////////
9// //
10// The TRD track //
11// //
12// Authors: //
13// Alex Bercuci <A.Bercuci@gsi.de> //
14// Markus Fasel <M.Fasel@gsi.de> //
15// //
16////////////////////////////////////////////////////////////////////////////
17
18#ifndef ALITRDTRACK_H
19#include "AliTRDtrack.h"
20#endif
21
22class AliTRDseedV1;
23class AliESDtrack;
24class AliCluster;
25
26class AliTRDtrackV1 : public AliTRDtrack
27{
28public:
29 AliTRDtrackV1();
30 AliTRDtrackV1(AliTRDseedV1 *trklts, const Double_t p[5], const Double_t cov[15], Double_t x, Double_t alpha);
31 AliTRDtrackV1(const AliESDtrack &ref);
32 AliTRDtrackV1(const AliTRDtrackV1 & /*ref*/);
33 AliTRDtrackV1& operator=(const AliTRDtrackV1 &/*ref*/){ return *this; }
34
35 Bool_t CookPID();
36 inline Int_t GetNumberOfClusters() const;
37 Double_t GetPredictedChi2(const AliTRDseedV1 *tracklet) const;
38 Double_t GetPredictedChi2(const AliCluster* /*c*/) const { return 0.0; }
39 const AliTRDseedV1* GetTracklet(Int_t plane) const {return plane >=0 && plane <6 ? &fTracklet[plane] : 0x0;}
40 Int_t* GetTrackletIndexes() {return &fTrackletIndex[0];}
41 void SetTracklet(AliTRDseedV1 *trklt, Int_t plane, Int_t index);
42 Bool_t Update(const AliTRDseedV1 *tracklet, Double_t chi2);
43virtual Bool_t Update(const AliCluster*, Double_t, Int_t) { return kTRUE; }
44 void UpdateESDdEdx(AliESDtrack *t);
45
46protected:
47 AliTRDrecoParam *fRecoParam; // reconstruction parameters
48 ClassDef(AliTRDtrackV1, 1) // development TRD track
49};
50
51//___________________________________________________________
52inline Int_t AliTRDtrackV1::GetNumberOfClusters() const
53{
54/* Int_t ntrklts = GetNumberOfTracklets();
55 printf("AliTRDtrackV1::GetNumberOfClusters() %d\n", ntrklts);
56 return ntrklts;*/
57 Int_t ncls = 0;
58 for(int ip=0; ip<6; ip++)
59 if(fTrackletIndex[ip] >= 0) ncls+=fTracklet[ip].GetN();
60
61 return ncls;
62}
63
64// //___________________________________________________________
65// inline Int_t AliTRDtrackV1::GetNumberOfTracklets() const
66// {
67// Int_t ntrklt = 0;
68// for(int ip=0; ip<6; ip++) if(fTrackletIndex[ip] >= 0) ntrklt++;
69// return ntrklt;
70// }
71
72#endif
73
74