]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCFindClusters.C
Latest version
[u/mrichter/AliRoot.git] / TPC / AliTPCFindClusters.C
index 6d3dbffe99a3679843d37f8087753d5b559b91d6..cb2d4bf17e0c2449e02c244ef6642ea8f464955a 100644 (file)
@@ -9,7 +9,7 @@
   #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");
@@ -22,13 +22,20 @@ Int_t AliTPCFindClusters() {
 
    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;
@@ -38,15 +45,25 @@ Int_t AliTPCFindClusters() {
       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:
@@ -59,6 +76,7 @@ Int_t AliTPCFindClusters() {
    delete gAlice; gAlice=0;
 
    out->Close();
+
    in->Close();
 
    return 0;