6 #include "AliTPCParam.h"
9 #include "TStopwatch.h"
12 Int_t AliTPCFindClusters(Int_t n=1) {
13 TFile *out=TFile::Open("AliTPCclusters.root","new");
14 if (!out->IsOpen()) {cerr<<"Delete old AliTPCclusters.root !\n"; return 1;}
15 TFile *in=TFile::Open("rfio:galice.root");
16 if (!in->IsOpen()) {cerr<<"Can't open galice.root !\n"; return 2;}
18 if (!(gAlice=(AliRun*)in->Get("gAlice"))) {
19 cerr<<"gAlice have not been found on galice.root !\n";
23 TDirectory *cwd = gDirectory;
25 AliTPC *TPC = (AliTPC*)gAlice->GetDetector("TPC");
26 Int_t ver = TPC->IsVersion();
27 cerr<<"TPC version "<<ver<<" has been found !\n";
29 AliTPCParamSR *dig=(AliTPCParamSR *)in->Get("75x40_100x60");
31 cerr<<"2 pad-length geom hits with 3 pad-lengths geom digits\n";
33 dig = new AliTPCParamSR();
37 dig=(AliTPCParamSR *)gDirectory->Get("75x40_100x60_150x60");
39 if (!dig) {cerr<<"TPC parameters have not been found !\n"; return 4;}
45 cerr<<"Making clusters...\n";
47 AliTPCv1 &tpc=*((AliTPCv1*)TPC);
48 tpc.SetParam(dig); timer.Start(); cwd->cd();
49 for(Int_t i=0;i<n;i++){
50 printf("Processing event %d\n",i);
52 tpc.Hits2Clusters(out,i);
57 cerr<<"Looking for clusters...\n";
59 // delete gAlice; gAlice=0;
61 tpc.SetParam(dig); timer.Start(); cwd->cd();
62 for (Int_t i=0;i<n;i++){
63 printf("Processing event %d\n",i);
64 tpc.Digits2Clusters(out,i);
65 // AliTPCclusterer::Digits2Clusters(dig, out, i);
70 cerr<<"Invalid TPC version !\n";
74 timer.Stop(); timer.Print();
76 delete gAlice; gAlice=0;