4 #include "AliTRDtracker.h"
7 Int_t TRDPropagateBack(const Char_t *geoname, const Char_t *clrsname,
8 const Char_t *inname, const Char_t *outname, Int_t n);
10 Int_t TRDFindTracks(const Char_t *geoname, const Char_t *clrsname,
11 const Char_t *inname, const Char_t *outname, Int_t n);
13 Int_t AliTRDtrackReconstruction(Int_t n=1) {
14 const Char_t *TRDdigName="galice.root";
15 const Char_t *dummyName="dummy.root";
16 const Char_t *TRDclsName="AliTRDclusters.root";
17 const Char_t *TRDtrkName="AliTRDtracks.root";
18 const Char_t *TPCbkTrkName="AliTPCBackTracks.root";
20 AliKalmanTrack::SetConvConst(100/0.299792458/0.2/gAlice->Field()->Factor());
23 // ********** Find TRD tracks from TPC back propagated tracks *********** //
26 if (TRDPropagateBack(TRDclsName, TRDclsName, TPCbkTrkName, TRDtrkName, n)) {
27 cerr<<"Failed to propagate back through TRD !\n";
32 // ********** Find TRD tracks and make seeds for TPC *********** //
35 if (TRDFindTracks(TRDclsName,TRDclsName, TRDtrkName, TRDtrkName,n)) {
36 cerr<<"Failed to find TRD tracks !\n";
45 Int_t TRDPropagateBack(const Char_t *geoname, const Char_t *clrsname,
46 const Char_t *inname, const Char_t *outname, Int_t n)
49 const Char_t *name="TRDPropagateBack";
50 cerr<<'\n'<<name<<"...\n";
51 gBenchmark->Start(name);
53 TFile *geofile =TFile::Open(geoname);
54 TFile *out=TFile::Open(outname,"update");
55 TFile *in =TFile::Open(inname);
56 TFile *clrsfile =TFile::Open(clrsname);
58 AliTRDtracker *tracker=new AliTRDtracker(geofile);
60 for (Int_t i=0;i<n;i++){
61 printf("Processing event %d\n",i);
62 tracker->SetEventNumber(i);
63 rc=tracker->PropagateBack(in,out);
72 gBenchmark->Stop(name);
73 gBenchmark->Show(name);
79 Int_t TRDFindTracks(const Char_t *geoname, const Char_t *clrsname,
80 const Char_t *inname, const Char_t *outname, Int_t n)
83 const Char_t *name="TRDFindTracks";
84 cerr<<'\n'<<name<<"...\n";
85 gBenchmark->Start(name);
87 TFile *geofile =TFile::Open(geoname);
88 TFile *out=TFile::Open(outname,"update");
89 TFile *in =TFile::Open(inname);
90 TFile *clrsfile =TFile::Open(clrsname);
92 AliTRDtracker *tracker=new AliTRDtracker(geofile);
93 tracker->SetAddTRDseeds();
95 for (Int_t i=0;i<n;i++){
96 printf("Processing event %d\n",i);
97 tracker->SetEventNumber(i);
98 rc=tracker->Clusters2Tracks(in,out);
107 gBenchmark->Stop(name);
108 gBenchmark->Show(name);