bug fix in the index calculation of eventspecie
authorschutz <schutz@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 27 Sep 2009 16:34:26 +0000 (16:34 +0000)
committerschutz <schutz@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 27 Sep 2009 16:34:26 +0000 (16:34 +0000)
STEER/AliCorrQADataMakerRec.cxx

index 575fa1c..c5dff27 100644 (file)
@@ -140,10 +140,8 @@ void AliCorrQADataMakerRec::InitRaws()
   if (fMaxRawVar == 0) { 
     AliWarning("NTUPLE not created") ; 
   } else {
-    for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) {
-      char * name = Form("%s_%s", AliQAv1::GetQACorrName(), AliRecoParam::GetEventSpecieName(specie)) ; 
-      fCorrNt[specie] = new TNtupleD(name, "Raws data correlation among detectors", varlist.Data()) ;  
-    }
+    char * name = Form("%s_%s", AliQAv1::GetQACorrName(), AliRecoParam::GetEventSpecieName(fEventSpecie)) ; 
+    fCorrNt[AliRecoParam::AConvert(fEventSpecie)] = new TNtupleD(name, "Raws data correlation among detectors", varlist.Data()) ;  
   }  
 }
 
@@ -160,6 +158,10 @@ void AliCorrQADataMakerRec::MakeESDs(AliESDEvent * /*esd*/)
 void AliCorrQADataMakerRec::MakeRaws(AliRawReader *)
 {
   //Fill prepared histograms with Raw digit properties
+  
+  if ( ! fCorrNt[AliRecoParam::AConvert(fEventSpecie)])
+      InitRaws() ; 
+  
   if ( fMaxRawVar > 0 ) {
     const Int_t kSize = fMaxRawVar ; 
     Double_t  *varvalue = new Double_t[kSize] ;
@@ -175,7 +177,7 @@ void AliCorrQADataMakerRec::MakeRaws(AliRawReader *)
         varvalue[index++] = p->GetVal() ; 
       }
     }
-    (static_cast<TNtupleD*>(fCorrNt[(Int_t)TMath::Log2(fEventSpecie)]))->Fill(varvalue);
+    static_cast<TNtupleD*>(fCorrNt[AliRecoParam::AConvert(fEventSpecie)])->Fill(varvalue);
     delete [] varvalue;
   }
 }