1 AliCentralitySelectionTask *AddTaskCentrality(Bool_t fillHistos=kTRUE, Bool_t aod=kFALSE)
3 // Macro to connect a centrality selection task to an existing analysis manager.
4 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
6 ::Error("AddTaskCentrality", "No analysis manager to connect to.");
9 // Check the analysis type using the event handlers connected to the analysis manager.
10 //==============================================================================
11 if (!mgr->GetInputEventHandler()) {
12 ::Error("AddTaskCentrality", "This task requires an input event handler");
15 TString inputDataType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
16 if (!aod && (inputDataType != "ESD")) {
17 ::Error("AddTaskCentrality", "This task works only on ESD analysis");
20 AliCentralitySelectionTask *centralityTask = new AliCentralitySelectionTask("CentralitySelection");
21 centralityTask->SetInput(inputDataType);
22 centralityTask->SelectCollisionCandidates(AliVEvent::kAny);
23 mgr->AddTask(centralityTask);
25 mgr->ConnectInput(centralityTask, 0, mgr->GetCommonInputContainer());
27 centralityTask->SetFillHistos();
28 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("CentralityStat",
30 AliAnalysisManager::kOutputContainer,
31 "EventStat_temp.root");
32 mgr->ConnectOutput(centralityTask,1,coutput1);
35 return centralityTask;