#include "TStopwatch.h"
#endif
-Int_t AliTPCFindClusters() {
+Int_t AliTPCFindClusters(Int_t n=1) {
TFile *out=TFile::Open("AliTPCclusters.root","new");
if (!out->IsOpen()) {cerr<<"Delete old AliTPCclusters.root !\n"; return 1;}
TFile *in=TFile::Open("rfio:galice.root");
TDirectory *cwd = gDirectory;
- gAlice->GetEvent(0);
-
AliTPC *TPC = (AliTPC*)gAlice->GetDetector("TPC");
Int_t ver = TPC->IsVersion();
cerr<<"TPC version "<<ver<<" has been found !\n";
- AliTPCParam *dig=(AliTPCParam *)in->Get("75x40_100x60");
+ AliTPCParamSR *dig=(AliTPCParamSR *)in->Get("75x40_100x60");
+ if(dig){
+ cerr<<"2 pad-length geom hits with 3 pad-lengths geom digits\n";
+ delete dig;
+ dig = new AliTPCParamSR();
+ }
+ else
+ {
+ dig=(AliTPCParamSR *)gDirectory->Get("75x40_100x60_150x60");
+ }
if (!dig) {cerr<<"TPC parameters have not been found !\n"; return 4;}
TStopwatch timer;
cerr<<"Making clusters...\n";
{
AliTPCv1 &tpc=*((AliTPCv1*)TPC);
- tpc.SetParam(dig); timer.Start(); cwd->cd(); tpc.Hits2Clusters(out);
+ tpc.SetParam(dig); timer.Start(); cwd->cd();
+ for(Int_t i=0;i<n;i++){
+ printf("Processing event %d\n",i);
+ gAlice->GetEvent(i);
+ tpc.Hits2Clusters(out,i);
+ }
}
break;
case 2:
cerr<<"Looking for clusters...\n";
{
- delete gAlice; gAlice=0;
+ // delete gAlice; gAlice=0;
AliTPCv2 tpc;
- tpc.SetParam(dig); timer.Start(); cwd->cd(); tpc.Digits2Clusters(out);
+ tpc.SetParam(dig); timer.Start(); cwd->cd();
+ for (Int_t i=0;i<n;i++){
+ printf("Processing event %d\n",i);
+ tpc.Digits2Clusters(out,i);
+ // AliTPCclusterer::Digits2Clusters(dig, out, i);
+ }
}
break;
default:
delete gAlice; gAlice=0;
out->Close();
+
in->Close();
return 0;