void PrintManager(TObject *mgrObj) { AliAnalysisManager *mgr = (AliAnalysisManager *)mgrObj; if (!mgr->InitAnalysis()) return; mgr->RunLocalInit(); mgr->PrintStatus(); Printf("Analysis Manager : %s '%s'",mgr->GetName(),mgr->GetTitle() ); TObjArray *a = mgr->GetTasks(); if (a) Printf("Tasks total : %d",a->GetEntries()); TIter next(mgr->GetTasks()); AliAnalysisTask *task; while ((task = (AliAnalysisTask *) next())) { if (task->IsA() == AliRsnMiniAnalysisTask::Class()) { Printf(" Task [RSN-MINI] : %s '%s'",task->GetName(),task->GetTitle()); AliRsnMiniAnalysisTask *rsnMiniTask = (AliRsnMiniAnalysisTask *)task; rsnMiniTask->Print(); } else if (task->IsA() == AliRsnAnalysisTask::Class()) { Printf(" Task [RSN-----] : %s '%s'",task->GetName(),task->GetTitle()); AliRsnAnalysisTask *rsnTask = (AliRsnAnalysisTask *)task; rsnTask->Print(); AliVEventHandler *ih = mgr->GetInputEventHandler(); if (ih == AliMultiInputEventHandler::Class()) { AliMultiInputEventHandler *ihMulti = (AliMultiInputEventHandler *) ih; TIter nextIH(ihMulti->InputEventHandlers()); AliRsnInputHandler *rsnIH = 0; while ((ih = (AliVEventHandler *) nextIH())) { if (ih->IsA() == AliRsnInputHandler::Class()) { rsnIH = ih; AliRsnDaughterSelector *ds = rsnIH->GetSelector(); ds->Print(); } } } } else { Printf(" Task [--------] : %s '%s'",task->GetName(),task->GetTitle()); } } }
/** * Register output data set * * @param dsname Data set name * * @return true on success */ static Bool_t RegisterDataset(const TString& dsname) { // Get the manager AliAnalysisManager* mgr = AliAnalysisManager::GetAnalysisManager(); // If we are asked to make a data-set, get the output handler and // common output container. AliVEventHandler* handler = mgr->GetOutputEventHandler(); if (!handler) return true; // Get the container AliAnalysisDataContainer* cont = mgr->GetCommonOutputContainer(); if (!cont) { Warning("OutputUtilities::RegisterDataset", "No common output container defined"); return false; } // Make the name TString nme(dsname); if (nme.IsNull()) nme = mgr->GetName(); if (nme.IsNull()) { Error("OutputUtilities::RegisterDataset", "No data set name specified"); return false; } // Flag for data-set creation cont->SetRegisterDataset(true); handler->SetOutputFileName(nme); // cont->SetFileName(nme); TString base(handler->GetOutputFileName()); base.ReplaceAll(".root",""); Info("OutputUtilities::RegisterDataset", "Will register tree output AODs (%s%s) as dataset", base.Data(), cont->GetTitle()); return true; }