]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliQADataMakerSteer.cxx
ESD QA Histograms implemented in AliITSQADataMakerRec. (A. Dainese)
[u/mrichter/AliRoot.git] / STEER / AliQADataMakerSteer.cxx
index a9f867bc54deeff90b629bbb7670cab2a9ebead9..0ce7acf3f086e713aeb7706eed84c1417c7ffe06 100644 (file)
@@ -41,6 +41,7 @@
 #include "AliCDBId.h"
 #include "AliCDBMetaData.h"
 #include "AliESDEvent.h"
+#include "AliGeomManager.h"
 #include "AliHeader.h"
 #include "AliLog.h"
 #include "AliModule.h"
@@ -234,6 +235,9 @@ Bool_t AliQADataMakerSteer::DoIt(const AliQA::TASKINDEX_t taskIndex, const char
        } // event loop 
 //     // Save QA data for all detectors
        rv = Finish(taskIndex, mode) ;
+       
+       if ( taskIndex == AliQA::kRAWS ) 
+               fRawReader->RewindEvents() ;
 
        return rv ; 
 }
@@ -254,8 +258,7 @@ TObjArray * AliQADataMakerSteer::GetFromOCDB(AliQA::DETECTORINDEX_t det, AliQA::
 {
        // Retrieve the list of QA data for a given detector and a given task 
        TObjArray * rv = NULL ;
-       TString tmp(AliQA::GetQARefStorage()) ; 
-       if ( tmp.IsNull() ) { 
+       if ( !strlen(AliQA::GetQARefStorage()) ) { 
                AliError("No storage defined, use AliQA::SetQARefStorage") ; 
                return NULL ; 
        }       
@@ -438,6 +441,9 @@ Bool_t AliQADataMakerSteer::Init(const AliQA::TASKINDEX_t taskIndex, const char
                }
        } 
        // Initialize all QA data makers for all detectors
+       fRunNumber = AliCDBManager::Instance()->GetRun() ; 
+       if ( !  AliGeomManager::GetGeometry() ) 
+               AliGeomManager::LoadGeometry() ; 
        for (Int_t i = 0; i < fQADataMakers.GetEntriesFast() ; i++) {
                AliQADataMaker * qadm = static_cast<AliQADataMaker *>(fQADataMakers.At(i));
                qadm->Init(taskIndex, fRunNumber, GetQACycles(qadm->GetUniqueID())) ;
@@ -625,11 +631,7 @@ TString AliQADataMakerSteer::Run(const char * detectors, AliRawReader * rawReade
        fDetectorsW      = detectors ;  
        
        AliCDBManager* man = AliCDBManager::Instance() ; 
-       if ( ! man->GetLock() ) { 
-               man->SetDefaultStorage(AliQA::GetQARefStorage()) ; 
-               man->SetSpecificStorage("*", AliQA::GetQARefStorage()) ;
-       }
-       
+
        if ( man->GetRun() == -1 ) {// check if run number not set previously and set it from raw data
                rawReader->NextEvent() ; 
                man->SetRun(fRawReader->GetRunNumber()) ;
@@ -770,10 +772,10 @@ Bool_t AliQADataMakerSteer::SaveIt2OCDB(const Int_t runNumber, TFile * inputFile
                if ( tmp.Contains(AliQA::GetLabLocalOCDB()) ) 
                        man->SetDefaultStorage(AliQA::GetQARefStorage()) ;
                else {
-                       TString tmp(AliQA::GetQARefDefaultStorage()) ; 
-                       tmp.Append(year) ; 
-                       tmp.Append("?user=alidaq") ; 
-                       man->SetDefaultStorage(tmp.Data()) ; 
+                       TString tmp1(AliQA::GetQARefDefaultStorage()) ; 
+                       tmp1.Append(year) ; 
+                       tmp1.Append("?user=alidaq") ; 
+                       man->SetDefaultStorage(tmp1.Data()) ; 
                }
        }
        man->SetSpecificStorage("*", AliQA::GetQARefStorage()) ;