X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUONPreprocessor.cxx;h=9265a1cc873e2adb57cd2ff6aebb267bef6c9533;hb=d6080682f89d052b457a8971c1c814e0bf00b3a0;hp=cd02d6d31d9998c8900864dfe1422ab1029c5585;hpb=94a393d97ffb1434737fef908fffbc3a9cf333b2;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONPreprocessor.cxx b/MUON/AliMUONPreprocessor.cxx index cd02d6d31d9..9265a1cc873 100644 --- a/MUON/AliMUONPreprocessor.cxx +++ b/MUON/AliMUONPreprocessor.cxx @@ -17,14 +17,16 @@ #include "AliMUONPreprocessor.h" -#include "AliMUONPedestalSubprocessor.h" -#include "AliMUONHVSubprocessor.h" +#include "AliCDBEntry.h" +#include "AliLog.h" #include "AliMUONGMSSubprocessor.h" - -#include "AliMpSegmentation.h" +#include "AliMUONHVSubprocessor.h" +#include "AliMUONPedestalSubprocessor.h" +#include "AliMpCDB.h" #include "AliMpDDLStore.h" - -#include "AliLog.h" +#include "AliMpDataMap.h" +#include "AliMpDataStreams.h" +#include "AliMpSegmentation.h" #include "AliShuttleInterface.h" #include "Riostream.h" #include "TObjArray.h" @@ -89,8 +91,7 @@ AliMUONPreprocessor::Initialize(Int_t run, UInt_t startTime, UInt_t endTime) /// Load mapping and initialize subtasks // Delete previous mapping - delete AliMpSegmentation::Instance(false); - delete AliMpDDLStore::Instance(false); + AliMpCDB::UnloadAll(); if ( ! IsApplicable() ) { Log(Form("WARNING-RunType=%s is not one I should handle.",GetRunType())); @@ -98,27 +99,38 @@ AliMUONPreprocessor::Initialize(Int_t run, UInt_t startTime, UInt_t endTime) } // Load mapping from CDB for this run - AliCDBEntry* cdbEntry = GetFromOCDB("Calib", "Mapping"); + AliCDBEntry* cdbEntry = GetFromOCDB("Calib", "MappingData"); if (!cdbEntry) { - Log("Could not get Mapping from OCDB !"); + Log("Could not get MappingData from OCDB !"); fIsValid = kFALSE; } - - cdbEntry = GetFromOCDB("Calib", "DDLStore"); - if (!cdbEntry) + else { - Log("Could not get DDLStore from OCDB"); - fIsValid = kFALSE; + AliMpDataMap* dataMap = dynamic_cast(cdbEntry->GetObject()); + if (!dataMap) + { + Log("DataMap is not of the expected type. That is bad..."); + fIsValid = kFALSE; + } + else + { + AliMpDataStreams dataStreams(dataMap); + AliMpDDLStore::ReadData(dataStreams); + } } + + Int_t nok(0); if (IsValid()) { // loop over subtasks and initialize them for ( Int_t i = 0; i <= fSubprocessors->GetLast(); ++i ) { - Subprocessor(i)->Initialize(run,startTime,endTime); + Bool_t ok = Subprocessor(i)->Initialize(run,startTime,endTime); + if (ok) ++nok; } + if (nok != fSubprocessors->GetLast()+1) fIsValid = kFALSE; } Log(Form("Initialize was %s",( IsValid() ? "fine" : "NOT OK"))); }