From fc07289ec7a1a10249baa2c1ce534be2f0de3957 Mon Sep 17 00:00:00 2001 From: schutz Date: Fri, 6 Mar 2009 14:59:55 +0000 Subject: [PATCH] merger methods for QA files --- STEER/AliQAManager.cxx | 14 +++++++++++--- STEER/AliReconstruction.cxx | 17 +++++++++++++++-- STEER/AliReconstruction.h | 3 ++- test/PbPbbench/rec.C | 1 + test/PbPbbench/recraw/rec.C | 1 + test/QA/rawqa.C | 22 +++++++++++++--------- test/ppbench/rec.C | 1 + test/ppbench/recraw/rec.C | 1 + 8 files changed, 45 insertions(+), 15 deletions(-) diff --git a/STEER/AliQAManager.cxx b/STEER/AliQAManager.cxx index 0f738b67eab..673205e86a1 100644 --- a/STEER/AliQAManager.cxx +++ b/STEER/AliQAManager.cxx @@ -720,7 +720,7 @@ Bool_t AliQAManager::MergeData(const Int_t runNumber) const { // Merge all the cycles from all detectors in one single file per run TString cmd ; - if (runNumber == -1) + if (runNumber != -1) cmd = Form(".! ls *%s*.%d.root > tempo.txt", AliQA::GetQADataFileName(), runNumber) ; else cmd = Form(".! ls *%s*.*.root > tempo.txt", AliQA::GetQADataFileName()) ; @@ -744,7 +744,11 @@ Bool_t AliQAManager::MergeData(const Int_t runNumber) const } TFileMerger merger ; - TString outFileName(Form("Merged.%s.Data.%d.root",AliQA::GetQADataFileName(),runNumber)); + TString outFileName ; + if (runNumber != -1) + outFileName = Form("Merged.%s.Data.%d.root",AliQA::GetQADataFileName(),runNumber); + else + outFileName = Form("Merged.%s.Data.root",AliQA::GetQADataFileName()); merger.OutputFile(outFileName.Data()) ; for (Int_t ifile = 0 ; ifile < index-1 ; ifile++) { TString pattern(Form("%s.%d.", AliQA::GetQADataFileName(), runNumber)); @@ -784,7 +788,11 @@ Bool_t AliQAManager::MergeResults(const Int_t runNumber) const } TFileMerger merger ; - TString outFileName(Form("Merged.%s.Result.%d.root", AliQA::GetQADataFileName(), runNumber)); + TString outFileName ; + if (runNumber != -1) + outFileName = Form("Merged.%s.Result.%d.root",AliQA::GetQADataFileName(),runNumber); + else + outFileName = Form("Merged.%s.Result.root",AliQA::GetQADataFileName()); merger.OutputFile(outFileName.Data()) ; for (Int_t ifile = 0 ; ifile < index ; ifile++) { TString file = fileList[ifile] ; diff --git a/STEER/AliReconstruction.cxx b/STEER/AliReconstruction.cxx index cb0132dcd5c..ffd9cac9485 100644 --- a/STEER/AliReconstruction.cxx +++ b/STEER/AliReconstruction.cxx @@ -1,6 +1,6 @@ /************************************************************************** * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * - * *QARef + * * * Author: The ALICE Off-line Project. * * Contributors are mentioned in the code where appropriate. * * * @@ -569,10 +569,23 @@ void AliReconstruction::InitQA() qadm->StartOfCycle(AliQA::kESDS, AliCDBManager::Instance()->GetRun(), sameCycle) ; qadm->Init(AliQA::kESDS); } - AliSysInfo::AddStamp("InitQA"); } + AliSysInfo::AddStamp("InitQA") ; } +//_____________________________________________________________________________ +void AliReconstruction::MergeQA() +{ + //Initialize the QA and start of cycle + AliCodeTimerAuto("") ; + if ( ! fQAManager ) { + AliFatal("Hum... this should not happen") ; + } else { + fQAManager->Merge(AliCDBManager::Instance()->GetRun()) ; + } + AliSysInfo::AddStamp("MergeQA") ; +} + //_____________________________________________________________________________ void AliReconstruction::InitCDB() { diff --git a/STEER/AliReconstruction.h b/STEER/AliReconstruction.h index 0b16b4a24e1..c24404bb426 100644 --- a/STEER/AliReconstruction.h +++ b/STEER/AliReconstruction.h @@ -144,7 +144,7 @@ public: void SetRunGlobalQA(Bool_t flag=kTRUE){fRunGlobalQA = flag;} void SetQARefDefaultStorage(const char* uri); void InitQA(); - + void MergeQA(); // Plane Efficiency Evaluation void SetRunPlaneEff(Bool_t flag=kFALSE) {fRunPlaneEff = flag;} @@ -274,6 +274,7 @@ private: Bool_t fRunGlobalQA; // Run global QA flag Bool_t fSameQACycle; //! open a new QA data file or not Bool_t fInitQACalled; //! control of QA intialisation + // Plane Efficiency Evaluation Bool_t fRunPlaneEff ; // Evaluate Plane Efficiency diff --git a/test/PbPbbench/rec.C b/test/PbPbbench/rec.C index e8fa9022be9..e24673cbcf1 100644 --- a/test/PbPbbench/rec.C +++ b/test/PbPbbench/rec.C @@ -19,6 +19,7 @@ void rec() { TStopwatch timer; timer.Start(); reco.Run(); + reco.MergeQA() ; timer.Stop(); timer.Print(); } diff --git a/test/PbPbbench/recraw/rec.C b/test/PbPbbench/recraw/rec.C index 2793548aa43..461335a58f2 100644 --- a/test/PbPbbench/recraw/rec.C +++ b/test/PbPbbench/recraw/rec.C @@ -26,6 +26,7 @@ void rec() { TStopwatch timer; timer.Start(); reco.Run(); + reco.MergeQA() ; timer.Stop(); timer.Print(); } diff --git a/test/QA/rawqa.C b/test/QA/rawqa.C index 240d25fa7fc..ae13e977916 100644 --- a/test/QA/rawqa.C +++ b/test/QA/rawqa.C @@ -25,10 +25,10 @@ TString ClassName() { return "rawqa" ; } //________________________________qa______________________________________ void rawqa(const Int_t runNumber, Int_t maxFiles = 10, const char* year = "08") { - char * kDefaultOCDBStorage = Form("alien://folder=/alice/data/20%s/LHC%sd/OCDB/", year, year) ; +// char * kDefaultOCDBStorage = Form("alien://folder=/alice/data/20%s/LHC%sd/OCDB/", year, year) ; + char * kDefaultOCDBStorage = Form("local://$ALICE_ROOT/OCDB") ; //AliQA::SetQARefStorage(Form("%s%s/", AliQA::GetQARefDefaultStorage(), year)) ; - AliQA::SetQARefStorage("local://$ALICE_ROOT/OCDB") ; - AliQA::SetQARefDataDirName(AliQA::kMONTECARLO) ; //RUN_TYPE + AliQA::SetQARefStorage("local://$ALICE_ROOT/QAref") ; UInt_t maxEvents = 99999 ; if ( maxFiles < 0 ) { @@ -38,7 +38,7 @@ void rawqa(const Int_t runNumber, Int_t maxFiles = 10, const char* year = "08") AliLog::SetGlobalDebugLevel(0) ; // connect to the grid TGrid * grid = 0x0 ; - grid = TGrid::Connect("alien://") ; +// grid = TGrid::Connect("alien://") ; Bool_t detIn[AliDAQ::kNDetectors] = {kFALSE} ; TString detNameOff[AliDAQ::kNDetectors] = {"ITS", "ITS", "ITS", "TPC", "TRD", "TOF", "HMPID", "PHOS", "PHOS", "PMD", "MUON", "MUON", "FMD", "T0", "VZERO", "ZDC", "ACORDE", "TRG", "EMCAL", "DAQ_TEST", "HLT"} ; @@ -75,7 +75,6 @@ void rawqa(const Int_t runNumber, Int_t maxFiles = 10, const char* year = "08") if (local) in.open("tempo.txt", ifstream::in) ; - AliQADataMakerSteer qas("rec") ; TString detectors = ""; TString detectorsW = ""; UShort_t file = 0 ; @@ -84,6 +83,10 @@ void rawqa(const Int_t runNumber, Int_t maxFiles = 10, const char* year = "08") AliCDBManager* man = AliCDBManager::Instance(); man->SetDefaultStorage(kDefaultOCDBStorage) ; man->SetRun(runNumber) ; + AliQAManager qam("rec") ; + qam->SetDefaultStorage(AliQA::GetQARefStorage()) ; + qam->SetRun(runNumber) ; + AliGeomManager::LoadGeometry(); for ( file = 0 ; file < maxFiles ; file++) { if ( qas.GetCurrentEvent() >= maxEvents) @@ -112,6 +115,7 @@ void rawqa(const Int_t runNumber, Int_t maxFiles = 10, const char* year = "08") AliTRDrawStreamBase::SetRawStreamVersion("TB"); while ( rawReader->NextEvent() ) { man->SetRun(rawReader->GetRunNumber()); + qam->SetRun(rawReader->GetRunNumber()); AliLog::Flush(); UChar_t * data ; while (rawReader->ReadNextData(data)) { @@ -134,9 +138,9 @@ void rawqa(const Int_t runNumber, Int_t maxFiles = 10, const char* year = "08") break ; } if ( !detectors.IsNull() ) { - qas.SetMaxEvents(maxEvents) ; - detectorsW = qas.Run(detectors, rawReader) ; - qas.Reset() ; + qam.SetMaxEvents(maxEvents) ; + detectorsW = qam.Run(detectors, rawReader) ; + qam.Reset() ; } else { AliError("No valid detectors found") ; } @@ -144,7 +148,7 @@ void rawqa(const Int_t runNumber, Int_t maxFiles = 10, const char* year = "08") eventsProcessed += qas.GetCurrentEvent() ; } AliLog::Flush(); - qas.Merge(runNumber) ; + qam.Merge(runNumber) ; AliLog::Flush(); // The summary diff --git a/test/ppbench/rec.C b/test/ppbench/rec.C index 3c8735e5134..bb46eee8fbf 100644 --- a/test/ppbench/rec.C +++ b/test/ppbench/rec.C @@ -20,6 +20,7 @@ void rec() { TStopwatch timer; timer.Start(); reco.Run(); + reco.MergeQA() ; timer.Stop(); timer.Print(); } diff --git a/test/ppbench/recraw/rec.C b/test/ppbench/recraw/rec.C index 9f373de5ddb..84365470bc7 100644 --- a/test/ppbench/recraw/rec.C +++ b/test/ppbench/recraw/rec.C @@ -26,6 +26,7 @@ void rec() { TStopwatch timer; timer.Start(); reco.Run(); + reco.MergeQA() ; timer.Stop(); timer.Print(); } -- 2.39.3