]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - T0/AliT0Calibrator.cxx
bugfix #38673 (Kenneth): last pad per row was always ignored; corrected cleanup og...
[u/mrichter/AliRoot.git] / T0 / AliT0Calibrator.cxx
index 1e2c8a576483634a3502b9fc2e6697e7e6bd5d11..6cae77ac84c4ecef523a6346a108396c26049f19 100644 (file)
@@ -1,3 +1,4 @@
+
 /**************************************************************************
  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  *                                                                        *
@@ -32,7 +33,7 @@
 #include <TGraph.h>
 #include <TH1F.h>
 #include <TMath.h>
-#include "iostream.h"
+#include <Riostream.h>
 
 ClassImp(AliT0Calibrator)
 
@@ -48,27 +49,31 @@ ClassImp(AliT0Calibrator)
    param->Init();
   
   fChannelWidth = param->GetChannelWidth() ;  
-  Double_t *grY ;
-  Double_t *grX ;
-  Int_t index[2500];
+  Double_t *grY ; //= new grY[2500] ;
+  // Double_t *grX ;
+  Int_t index[25000];
   Bool_t down=true;
   for (Int_t i=0; i<24; i++){
     fMaxValue[i]=0;
     fTimeDelayCFD[i] = Int_t (param->GetTimeDelayCFD(i));
-       
-    //  TGraph* fu = param ->GetWalk(i);
-     TGraph* fu  = param ->GetAmpLEDRec(i);
-    if(fu) {
+     
+    TGraph* fu = param ->GetWalk(i);
+     //    TGraph* fu  = param ->GetAmpLEDRec(i);
+       fWalk.AddAtAndExpand(fu,i);
+       
+  if(fu) {
       Int_t np=fu->GetN();
       if(np>0) {
        grY = fu->GetY();
-       grX = fu->GetX();
+       //      grX[i] = fu->GetX();
        TMath::Sort(np, grY, index,down);
        fMaxValue[i]=Int_t(grY[index[0]]);
-       fWalk.AddAtAndExpand(fu,i);
+
       }
     }
+       
   }
+
   //  delete [] grY;
   //  delete [] grX;
   
@@ -118,8 +123,11 @@ Int_t  AliT0Calibrator::WalkCorrection(Int_t ipmt, Int_t qt, Int_t time, TString
     walk=Int_t(fu1->Eval(Double_t(qt)));
   }
   if (option == "pdc") {
-    timeWalk = time + Int_t((fMaxValue[ipmt]-walk)/fChannelWidth) ;
-    timeEq= timeWalk - (fTimeDelayCFD[ipmt]-fTimeDelayCFD[0]);
+    timeWalk = time + Int_t(fMaxValue[ipmt]-walk) ;
+    //    timeEq= timeWalk - fTimeDelayCFD[ipmt];
+    timeEq= timeWalk - fTimeDelayCFD[ipmt]; //for the same as cosmic
+     AliDebug(10,Form(" ipmt %i time before %i timeWalk %i ,  qt %i timeEq %i \n ",
+                ipmt, time,timeWalk, qt, timeEq ));
   }
   if (option == "cosmic") {
     timeWalk = time + Int_t((fMaxValue[ipmt]-walk)) ;