]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSRcuDA1.cxx
syst. check that reads the MC information for the case of TPC-only
[u/mrichter/AliRoot.git] / PHOS / AliPHOSRcuDA1.cxx
index a9864903dfcfa3da496b18ffccad3ebe6748f920..e40d7766150950c381509bc2b37bf0701a3b1720 100644 (file)
@@ -13,10 +13,13 @@ AliPHOSRcuDA1::AliPHOSRcuDA1(Int_t module, Int_t rcu) : TNamed(),
   // Checks existence of histograms which might have been left
   // from the previous runs to continue their filling.
   // Histogram names: module_iX_iZ_gain for TH2 and  module_iX_iZ for TH1.
-  // Root file name: PHOS_ModuleX_Calib.root, where X - module number.
+  // Root file name: PHOS_ModuleX_RCUY_Calib.root, where X - module number,
+  // Y - RCU number. If no RCU specified (rcu<0), file name is simply
+  // PHOS_ModuleX_Calib.root.
   
   char name[128];
-  sprintf(name,"PHOS_Module%d_RCU%d_Calib",fMod,fRCU);
+  if(rcu<0) sprintf(name,"PHOS_Module%d_Calib",fMod);
+  else sprintf(name,"PHOS_Module%d_RCU%d_Calib",fMod,fRCU);
   SetName(name);
 
   SetTitle("Calibration Detector Algorithm");
@@ -27,8 +30,6 @@ AliPHOSRcuDA1::AliPHOSRcuDA1(Int_t module, Int_t rcu) : TNamed(),
   fHistoFile =  new TFile(rootname,"update");
   fHistoArray.SetName("histo_container");
 
-  TObjArray* objr = (TObjArray*)fHistoFile->Get(fHistoArray.GetName());
-
   char hname[128];
   TH1F* hist1=0;
   TH2F* hist2=0;
@@ -37,8 +38,7 @@ AliPHOSRcuDA1::AliPHOSRcuDA1(Int_t module, Int_t rcu) : TNamed(),
     for(Int_t iZ=0; iZ<56; iZ++) {
 
       sprintf(hname,"%d_%d_%d",fMod,iX,iZ);
-      if(objr)
-       hist1 = (TH1F*)objr->FindObject(hname);
+      hist1 = (TH1F*)fHistoFile->Get(hname);
       if(hist1) { 
        fHgLgRatio[iX][iZ] = hist1;
        fHistoArray.Add(hist1);
@@ -48,8 +48,7 @@ AliPHOSRcuDA1::AliPHOSRcuDA1(Int_t module, Int_t rcu) : TNamed(),
 
       for(Int_t iGain=0; iGain<2; iGain++) {
        sprintf(hname,"%d_%d_%d_%d",fMod,iX,iZ,iGain);
-       if(objr)
-         hist2 = (TH2F*)objr->FindObject(hname);
+       hist2 = (TH2F*)fHistoFile->Get(hname);
        if(hist2) {
          fTimeEnergy[iX][iZ][iGain] = hist2;
          fHistoArray.Add(hist2);
@@ -73,7 +72,8 @@ AliPHOSRcuDA1::AliPHOSRcuDA1(Int_t module, Int_t rcu, TObjArray* oldTimeEnergy)
   // By default the final histograms will not be saved to the root file.
 
   char name[128];
-  sprintf(name,"PHOS_Module%d_RCU%d_Calib",fMod,fRCU);
+  if(rcu<0) sprintf(name,"PHOS_Module%d_Calib",fMod);
+  else sprintf(name,"PHOS_Module%d_RCU%d_Calib",fMod,fRCU);
   SetName(name);
   
   SetTitle("Calibration Detector Algorithm");
@@ -192,7 +192,7 @@ void AliPHOSRcuDA1::UpdateHistoFile()
   if(!fHistoFile) return;
   if(!fHistoFile->IsOpen()) return;
 
-  fHistoArray.Write(fHistoArray.GetName(),TObject::kSingleKey);
+  fHistoArray.Write();
   fHistoFile->Purge();
 
 }