From: schutz Date: Thu, 17 Apr 2008 07:44:18 +0000 (+0000) Subject: Moving CDB dependence from AliQA to AliQADataMakerSteer X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=commitdiff_plain;h=95932286f45698fc04ebfd4e786c097b703e630d Moving CDB dependence from AliQA to AliQADataMakerSteer --- diff --git a/STEER/AliQA.cxx b/STEER/AliQA.cxx index 2dc1412b03a..69825003cde 100644 --- a/STEER/AliQA.cxx +++ b/STEER/AliQA.cxx @@ -39,7 +39,6 @@ // --- Standard library --- // --- AliRoot header files --- -#include "AliCDBManager.h" #include "AliLog.h" #include "AliQA.h" @@ -483,12 +482,6 @@ void AliQA::SetQARefStorage(const char * name) } TString tmp(fgQARefDirName) ; // + fgQARefFileName) ; printf("AliQA::SetQARefDir: QA references are in %s\n", tmp.Data() ) ; - - AliCDBManager* man = AliCDBManager::Instance() ; - if ( ! man->IsDefaultStorageSet() ) { - man->SetDefaultStorage(AliQA::GetQARefStorage()) ; - man->SetSpecificStorage("*", AliQA::GetQARefStorage()) ; - } } //_____________________________________________________________________________ diff --git a/STEER/AliQADataMakerSteer.cxx b/STEER/AliQADataMakerSteer.cxx index 45bd16dbf16..9eba4be1f4a 100644 --- a/STEER/AliQADataMakerSteer.cxx +++ b/STEER/AliQADataMakerSteer.cxx @@ -151,10 +151,10 @@ AliQADataMakerSteer::~AliQADataMakerSteer() Bool_t AliQADataMakerSteer::DoIt(const AliQA::TASKINDEX_t taskIndex, const char * mode) { // Runs all the QA data Maker for every detector - + Bool_t rv = kFALSE ; // Fill QA data in event loop - for (UInt_t iEvent = fFirstEvent ; iEvent < fMaxEvents ; iEvent++) { + for (UInt_t iEvent = fFirstEvent ; iEvent < (UInt_t)fMaxEvents ; iEvent++) { fCurrentEvent++ ; // Get the event if ( iEvent%10 == 0 ) @@ -171,7 +171,7 @@ Bool_t AliQADataMakerSteer::DoIt(const AliQA::TASKINDEX_t taskIndex, const char } // loop over active loaders for (Int_t i = 0; i < fQADataMakers.GetEntriesFast() ; i++) { - AliQADataMaker * qadm = static_cast(fQADataMakers.At(i)); //GetQADataMaker(iDet, mode) ; + AliQADataMaker * qadm = static_cast(fQADataMakers.At(i)) ; if ( qadm->IsCycleDone() ) { qadm->EndOfCycle(AliQA::kRAWS) ; qadm->StartOfCycle(AliQA::kRAWS) ; @@ -537,7 +537,7 @@ Bool_t AliQADataMakerSteer::Merge(const Int_t runNumber) const ifstream in("tempo.txt") ; const Int_t runMax = 10 ; TString file[AliQA::kNDET*runMax] ; - Int_t run[AliQA::kNDET*runMax] = {-1.0} ; + Int_t run[AliQA::kNDET*runMax] = {-1} ; Int_t index = 0 ; while ( 1 ) { @@ -626,6 +626,19 @@ TString AliQADataMakerSteer::Run(const char * detectors, AliRawReader * rawReade return kFALSE ; fRawReaderDelete = kFALSE ; + AliCDBManager* man = AliCDBManager::Instance() ; + if ( ! man->IsDefaultStorageSet() ) { + 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()) ; + rawReader->RewindEvents() ; + } + DoIt(AliQA::kRAWS, "rec") ; return fDetectorsW ; } @@ -642,6 +655,28 @@ TString AliQADataMakerSteer::Run(const char * detectors, const char * fileName, if ( !Init(AliQA::kRAWS, "rec", fileName) ) return kFALSE ; + AliCDBManager* man = AliCDBManager::Instance() ; + if ( ! man->IsDefaultStorageSet() ) { + man->SetDefaultStorage(AliQA::GetQARefStorage()) ; + man->SetSpecificStorage("*", AliQA::GetQARefStorage()) ; + } + + if ( man->GetRun() == -1 ) { // check if run number not set previously and set it from AliRun + AliRunLoader * rl = AliRunLoader::Open("galice.root") ; + if ( ! rl ) { + AliFatal("galice.root file not found in current directory") ; + } else { + rl->CdGAFile() ; + rl->LoadgAlice() ; + if ( ! rl->GetAliRun() ) { + AliFatal("AliRun not found in galice.root") ; + } else { + rl->LoadHeader() ; + man->SetRun(rl->GetHeader()->GetRun()); + } + } + } + DoIt(AliQA::kRAWS, "rec") ; return fDetectorsW ; } @@ -668,6 +703,28 @@ TString AliQADataMakerSteer::Run(const char * detectors, const AliQA::TASKINDEX_ if ( !Init(taskIndex, mode.Data(), fileName) ) return kFALSE ; + AliCDBManager* man = AliCDBManager::Instance() ; + if ( ! man->IsDefaultStorageSet() ) { + man->SetDefaultStorage(AliQA::GetQARefStorage()) ; + man->SetSpecificStorage("*", AliQA::GetQARefStorage()) ; + } + + if ( man->GetRun() == -1 ) { // check if run number not set previously and set it from AliRun + AliRunLoader * rl = AliRunLoader::Open("galice.root") ; + if ( ! rl ) { + AliFatal("galice.root file not found in current directory") ; + } else { + rl->CdGAFile() ; + rl->LoadgAlice() ; + if ( ! rl->GetAliRun() ) { + AliFatal("AliRun not found in galice.root") ; + } else { + rl->LoadHeader() ; + man->SetRun(rl->GetHeader()->GetRun()) ; + } + } + } + DoIt(taskIndex, mode.Data()) ; return fDetectorsW ; diff --git a/STEER/AliQADataMakerSteer.h b/STEER/AliQADataMakerSteer.h index 59eb1584b35..f50cd76bba4 100644 --- a/STEER/AliQADataMakerSteer.h +++ b/STEER/AliQADataMakerSteer.h @@ -72,7 +72,7 @@ private: Bool_t fFirst ; //! to search the detector QA data maker only once TString fGAliceFileName ; //! name of the galice file UInt_t fFirstEvent ; //! first event to process - UInt_t fMaxEvents ; //! number of events to process + Int_t fMaxEvents ; //! number of events to process Long64_t fNumberOfEvents ; //! number of events in the run UInt_t fRunNumber ; //! current run number AliRawReader * fRawReader ; //! current raw reader object