X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=STEER%2FAliLoader.cxx;h=e992699e3171a94b72da6d69067edc43d008959d;hb=951a6a05a7c1ca1341aca9074dfc920d1313c97f;hp=b48d7d991afd1b244e3e54814fc0680d79093f2d;hpb=e191bb57c96a66bf4f60381b9a3f8c511bc6188e;p=u%2Fmrichter%2FAliRoot.git diff --git a/STEER/AliLoader.cxx b/STEER/AliLoader.cxx index b48d7d991af..e992699e317 100644 --- a/STEER/AliLoader.cxx +++ b/STEER/AliLoader.cxx @@ -7,26 +7,22 @@ //Author: Alice Offline Group http://alisoft.cern.ch //Responsible: Piotr.Skowronski@cern.ch // -#include +#include "AliLoader.h" //Root includes #include -#include #include -#include -#include +#include #include -#include +#include //AliRoot includes -#include -#include -#include -#include -#include #include "AliConfig.h" - -Int_t AliLoader::fgDebug = 0; +#include "AliDetector.h" +#include "AliDigitizer.h" +#include "AliLog.h" +#include "AliRun.h" +#include "AliRunLoader.h" const TString AliLoader::fgkDefaultHitsContainerName("TreeH"); const TString AliLoader::fgkDefaultDigitsContainerName = "TreeD"; @@ -60,7 +56,7 @@ AliLoader::AliLoader(): fModuleFolder(0x0), fTasksFolder(0x0), fQAFolder(0x0) - { +{ //default constructor } @@ -77,8 +73,7 @@ AliLoader::AliLoader(const Char_t* detname,const Char_t* eventfoldername): fQAFolder(0x0) { //ctor - if (GetDebug()) Info("AliLoader(const Char_t* detname,const Char_t* eventfoldername)", - "detname = %s eventfoldername = %s",detname,eventfoldername); + AliDebug(1, Form("detname = %s eventfoldername = %s",detname,eventfoldername)); //try to find folder eventfoldername in top alice folder //safe because GetTopFolder will abort in case of failure @@ -112,11 +107,21 @@ AliLoader::AliLoader(const Char_t * detname,TFolder* eventfolder): //fileoption's don't need to initialized because default TString ctor does it correctly } /*****************************************************************************/ -AliLoader::AliLoader(const AliLoader& source):TNamed(source) { +AliLoader::AliLoader(const AliLoader& source) : + TNamed(source), + fDataLoaders(source.fDataLoaders), + fDetectorName(source.fDetectorName), + fEventFolder(source.fEventFolder), + fDataFolder(source.fDataFolder), + fDetectorDataFolder(source.fDetectorDataFolder), + fModuleFolder(source.fModuleFolder), + fTasksFolder(source.fTasksFolder), + fQAFolder(source.fQAFolder) +{ // dummy copy constructor if(&source==this)return; - Fatal("AliLoader","Copy constructor not implemented. Aborting"); + AliFatal("Copy constructor not implemented. Aborting"); return; } @@ -125,7 +130,7 @@ AliLoader& AliLoader::operator=(const AliLoader& source) { // dummy assignment operator if(&source==this) return *this; - Fatal("AliLoader","Assignment operator not implemented. Aborting"); + AliFatal("Assignment operator not implemented. Aborting"); return *this; } @@ -192,15 +197,17 @@ AliDataLoader* AliLoader::GetDataLoader(const char* name) /*****************************************************************************/ void AliLoader::AddDataLoader(AliDataLoader* dl) { - + // + // Adds a data loader + // if (dl == 0x0) { - Error("AddDataLoader","Pointer is NULL"); + AliError("Pointer is NULL"); return; } if (fDataLoaders->FindObject(dl->GetName())) { - Error("AddDataLoader","Such a loader exists"); + AliError("Such a loader exists"); return; } fDataLoaders->AddLast(dl); @@ -253,7 +260,7 @@ Int_t AliLoader::GetEvent() retval = dl->GetEvent(); if (retval) { - Error("GetEvent","Error occured while GetEvent for %s",dl->GetName()); + AliError(Form("Error occured while GetEvent for %s",dl->GetName())); return retval; } } @@ -286,7 +293,7 @@ TFolder* AliLoader::GetDataFolder() if (!fDataFolder) { - Fatal("GetDataFolder","Can not find AliRoot data folder. Aborting"); + AliFatal("Can not find AliRoot data folder. Aborting"); return 0x0; } } @@ -304,7 +311,7 @@ TFolder* AliLoader::GetTasksFolder() if (!fTasksFolder) { - Fatal("GetTasksFolder","Can not find tasks folder. Aborting"); + AliFatal("Can not find tasks folder. Aborting"); return 0x0; } } @@ -322,7 +329,7 @@ TFolder* AliLoader::GetModulesFolder() if (!fModuleFolder) { - Fatal("GetModulesFolder","Can not find modules folder. Aborting"); + AliFatal("Can not find modules folder. Aborting"); return 0x0; } } @@ -341,7 +348,7 @@ TFolder* AliLoader::GetQAFolder() if (fQAFolder == 0x0) { - Fatal("GetQAFolder","Can not find Quality Assurance folder. Aborting"); + AliFatal("Can not find Quality Assurance folder. Aborting"); return 0x0; } } @@ -393,7 +400,7 @@ TTask* AliLoader::QAtask(const char* name) const TTask* qat = AliRunLoader::GetRunQATask(); if ( qat == 0x0 ) { - Error("QAtask","Can not get RunQATask. (Name:%s)",GetName()); + AliError(Form("Can not get RunQATask. (Name:%s)",GetName())); return 0x0; } @@ -402,7 +409,7 @@ TTask* AliLoader::QAtask(const char* name) const if ( dqat == 0x0 ) { - Error("QAtask","Can not find QATask in RunQATask for %s",GetDetectorName().Data()); + AliError(Form("Can not find QATask in RunQATask for %s",GetDetectorName().Data())); return 0x0; } @@ -418,7 +425,7 @@ TTask* AliLoader::QAtask(const char* name) const if(taskname.BeginsWith(name)) return task ; } - Error("QAtask","Can not find sub-task with name starting with %s in task %s",name,dqat->GetName()); + AliError(Form("Can not find sub-task with name starting with %s in task %s",name,dqat->GetName())); return 0x0; } /*****************************************************************************/ @@ -431,19 +438,18 @@ TDirectory* AliLoader::ChangeDir(TFile* file, Int_t eventno) if (file == 0x0) { - ::Error("AliLoader::ChangeDir","File is null"); + AliErrorClass("File is null"); return 0x0; } if (file->IsOpen() == kFALSE) { - ::Error("AliLoader::ChangeDir","File is not opened"); + AliErrorClass("File is not opened"); return 0x0; } TString dirname("Event"); dirname+=eventno; - if (AliLoader::fgDebug > 1) - ::Info("AliLoader::ChangeDir","Changing Dir to %s in file %s.",dirname.Data(),file->GetName()); + AliDebugClass(1, Form("Changing Dir to %s in file %s.",dirname.Data(),file->GetName())); Bool_t result; @@ -451,22 +457,21 @@ TDirectory* AliLoader::ChangeDir(TFile* file, Int_t eventno) if (dir == 0x0) { - if (AliLoader::fgDebug > 1) - ::Info("AliLoader::ChangeDir","Can not find directory %s in file %s, creating...", - dirname.Data(),file->GetName()); + AliDebugClass(1, Form("Can not find directory %s in file %s, creating...", + dirname.Data(),file->GetName())); if (file->IsWritable() == kFALSE) { - ::Error("AliLoader::ChangeDir","Can not create directory. File %s in not writable.", - file->GetName()); + AliErrorClass(Form("Can not create directory. File %s in not writable.", + file->GetName())); return 0x0; } TDirectory* newdir = file->mkdir(dirname); if (newdir == 0x0) { - ::Error("AliLoader::ChangeDir","Failed to create new directory in file %s.", - file->GetName()); + AliErrorClass(Form("Failed to create new directory in file %s.", + file->GetName())); return 0x0; } result = file->cd(dirname); @@ -654,7 +659,7 @@ void AliLoader::CleanFolders() AliDataLoader* dl; while ((dl = (AliDataLoader*)next())) { - if (GetDebug()) Info("CleanFolders","name = %s cleaning",dl->GetName()); + AliDebug(1, Form("name = %s cleaning",dl->GetName())); dl->Clean(); } } @@ -667,7 +672,7 @@ void AliLoader::CleanSDigitizer() //removes and deletes detector task from Run Task if ( GetSDigitsDataLoader()->GetBaseTaskLoader() == 0x0 ) { - Warning("CleanSDigitizer","Task Loader for SDigits does not exist"); + AliWarning("Task Loader for SDigits does not exist"); return; } GetSDigitsDataLoader()->GetBaseTaskLoader()->Clean(); @@ -679,7 +684,7 @@ void AliLoader::CleanDigitizer() //removes and deletes detector task from Run Task if ( GetDigitsDataLoader()->GetBaseTaskLoader() == 0x0 ) { - Warning("CleanDigitizer","Task Loader for Digits does not exist"); + AliWarning("Task Loader for Digits does not exist"); return; } GetDigitsDataLoader()->GetBaseTaskLoader()->Clean(); @@ -691,7 +696,7 @@ void AliLoader::CleanReconstructioner() //removes and deletes detector Reconstructioner from Run Reconstructioner if ( GetRecPointsDataLoader()->GetBaseTaskLoader() == 0x0 ) { - Warning("CleanSDigitizer","Task Loader for SDigits does not exist"); + AliWarning("Task Loader for SDigits does not exist"); return; } GetRecPointsDataLoader()->GetBaseTaskLoader()->Clean(); @@ -703,7 +708,7 @@ void AliLoader::CleanTracker() //removes and deletes detector task from Run Task if ( GetTracksDataLoader()->GetBaseTaskLoader() == 0x0 ) { - Warning("CleanTracker","Task Loader for Tracks does not exist"); + AliWarning("Task Loader for Tracks does not exist"); return; } GetTracksDataLoader()->GetBaseTaskLoader()->Clean(); @@ -716,7 +721,7 @@ void AliLoader::CleanPIDTask() if ( GetRecParticlesDataLoader()->GetBaseTaskLoader() == 0x0 ) { - Warning("CleanPIDTask","Task Loader for Reconstructed Particles does not exist"); + AliWarning("Task Loader for Reconstructed Particles does not exist"); return; } GetRecParticlesDataLoader()->GetBaseTaskLoader()->Clean(); @@ -734,7 +739,7 @@ Int_t AliLoader::ReloadAll() Int_t err = dl->Reload(); if (err) { - Error("ReloadAll","Reload returned error for %s",dl->GetName()); + AliError(Form("Reload returned error for %s",dl->GetName())); return err; } } @@ -759,7 +764,7 @@ Int_t AliLoader::SetEventFolder(TFolder* eventfolder) //sets the event folder if (eventfolder == 0x0) { - Error("SetEventFolder","Stupid joke. Argument is NULL"); + AliError("Stupid joke. Argument is NULL"); return 1; } @@ -786,17 +791,17 @@ Int_t AliLoader::Register(TFolder* eventFolder) //creation of folder structure as well (some detectors needs folders //alrady in constructors) - if (GetDebug()) Info("Register","Name is %s.",GetName()); + AliDebug(1, Form("Name is %s.",GetName())); if (eventFolder == 0x0) { - Error("Register","Event folder is not set."); + AliError("Event folder is not set."); return 1; } Int_t retval = AliConfig::Instance()->AddDetector(eventFolder,fDetectorName,fDetectorName); if(retval) { - Error("SetEventFolder","Can not create tasks and/or folders for %s. Event folder name is %s", - fDetectorName.Data(),eventFolder->GetName()); + AliError(Form("Can not create tasks and/or folders for %s. Event folder name is %s", + fDetectorName.Data(),eventFolder->GetName())); return retval; } SetEventFolder(eventFolder); @@ -807,7 +812,7 @@ AliRunLoader* AliLoader::GetRunLoader() { //gets the run-loader from event folder AliRunLoader* rg = 0x0; - TObject * obj = GetEventFolder()->FindObject(AliRunLoader::fgkRunLoaderName); + TObject * obj = GetEventFolder()->FindObject(AliRunLoader::GetRunLoaderName()); if (obj) rg = dynamic_cast(obj); return rg; } @@ -826,7 +831,7 @@ Bool_t AliLoader::TestFileOption(Option_t* opt) /*****************************************************************************/ void AliLoader::SetDirName(TString& dirname) { -//adds "dirname/" to each file +//adds "dirname" to each file. Dirname should end with "#","/", or ":" TIter next(fDataLoaders); AliDataLoader* dl; while((dl = (AliDataLoader*)next())) @@ -877,8 +882,7 @@ void AliLoader::Clean(const TString& name) TObject* obj = GetDetectorDataFolder()->FindObject(name); if(obj) { - if (GetDebug()) - Info("Clean(const TString&)","name=%s, cleaning %s.",GetName(),name.Data()); + AliDebug(1, Form("name=%s, cleaning %s.",GetName(),name.Data())); GetDetectorDataFolder()->Remove(obj); delete obj; } @@ -895,6 +899,21 @@ Bool_t AliLoader::IsOptionWritable(const TString& opt) if (opt.CompareTo("update",TString::kIgnoreCase)) return kTRUE; return kFALSE; } + +/*****************************************************************************/ + +void AliLoader::SetDebug(Int_t deb) +{ + // Sets debug level + AliLog::SetClassDebugLevel("AliRunLoader", deb); + AliLog::SetClassDebugLevel("AliLoader", deb); + AliLog::SetClassDebugLevel("AliDataLoader", deb); + AliLog::SetClassDebugLevel("AliBaseLoader", deb); + AliLog::SetClassDebugLevel("AliObjectLoader", deb); + AliLog::SetClassDebugLevel("AliTreeLoader", deb); + AliLog::SetClassDebugLevel("AliTaskLoader", deb); + AliLog::SetClassDebugLevel("AliConfig", deb); +} /*****************************************************************************/ void AliLoader::SetTAddrInDet()