]>
Commit | Line | Data |
---|---|---|
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 | ||
0906e73e | 8 | /////////////////////////////////////////////////////////////////////////////// |
9 | // // | |
10 | // Represents a reconstructed TRD track // | |
11 | // // | |
12 | /////////////////////////////////////////////////////////////////////////////// | |
d9950a5a | 13 | |
14 | #ifndef ALITRDTRACK_H | |
15 | #include "AliTRDtrack.h" | |
16 | #endif | |
17 | ||
18 | class AliTRDseedV1; | |
19 | class AliESDtrack; | |
d9950a5a | 20 | |
21 | class AliTRDtrackV1 : public AliTRDtrack | |
22 | { | |
0906e73e | 23 | |
24 | public: | |
d9950a5a | 25 | AliTRDtrackV1(); |
26 | AliTRDtrackV1(AliTRDseedV1 *trklts, const Double_t p[5], const Double_t cov[15], Double_t x, Double_t alpha); | |
27 | AliTRDtrackV1(const AliESDtrack &ref); | |
0906e73e | 28 | AliTRDtrackV1(const AliTRDtrackV1 &ref); |
29 | AliTRDtrackV1 &operator=(const AliTRDtrackV1 &ref) { *(new(this) AliTRDtrackV1(ref)); | |
30 | return *this; } | |
d9950a5a | 31 | |
0906e73e | 32 | Bool_t CookPID(); |
33 | Float_t GetMomentum(Int_t plane) const; | |
34 | inline Int_t GetNumberOfClusters() const; | |
35 | Double_t GetPredictedChi2(const AliTRDseedV1 *tracklet) const; | |
36 | Double_t GetPredictedChi2(const AliCluster* /*c*/) const { return 0.0; } | |
d9950a5a | 37 | const AliTRDseedV1* GetTracklet(Int_t plane) const {return plane >=0 && plane <6 ? &fTracklet[plane] : 0x0;} |
0906e73e | 38 | Int_t* GetTrackletIndexes() {return &fTrackletIndex[0];} |
39 | ||
40 | Bool_t IsOwner() const; | |
41 | ||
42 | void SetOwner(Bool_t own = kTRUE); | |
43 | void SetTracklet(AliTRDseedV1 *trklt, Int_t plane, Int_t index); | |
44 | Bool_t Update(AliTRDseedV1 *tracklet, Double_t chi2); | |
45 | Bool_t Update(const AliTRDcluster*, Double_t, Int_t, Double_t) { return kFALSE; }; | |
46 | Bool_t Update(const AliCluster *, Double_t, Int_t) { return kFALSE; }; | |
47 | void UpdateESDtrack(AliESDtrack *t); | |
d9950a5a | 48 | |
0906e73e | 49 | protected: |
d9950a5a | 50 | AliTRDrecoParam *fRecoParam; // reconstruction parameters |
0906e73e | 51 | |
d9950a5a | 52 | ClassDef(AliTRDtrackV1, 1) // development TRD track |
0906e73e | 53 | |
d9950a5a | 54 | }; |
55 | ||
56 | //___________________________________________________________ | |
57 | inline Int_t AliTRDtrackV1::GetNumberOfClusters() const | |
58 | { | |
59 | /* Int_t ntrklts = GetNumberOfTracklets(); | |
60 | printf("AliTRDtrackV1::GetNumberOfClusters() %d\n", ntrklts); | |
61 | return ntrklts;*/ | |
62 | Int_t ncls = 0; | |
63 | for(int ip=0; ip<6; ip++) | |
64 | if(fTrackletIndex[ip] >= 0) ncls+=fTracklet[ip].GetN(); | |
65 | ||
66 | return ncls; | |
67 | } | |
68 | ||
69 | // //___________________________________________________________ | |
70 | // inline Int_t AliTRDtrackV1::GetNumberOfTracklets() const | |
71 | // { | |
72 | // Int_t ntrklt = 0; | |
73 | // for(int ip=0; ip<6; ip++) if(fTrackletIndex[ip] >= 0) ntrklt++; | |
74 | // return ntrklt; | |
75 | // } | |
76 | ||
77 | #endif | |
78 | ||
79 |