1 AliAnalysisTaskSE* AddTaskZDCPbPb(Bool_t applyPS = kFALSE,
2 Float_t centrlowlim = 0.,
3 Float_t centruplim = 100.,
4 TString centrest = "V0M",
5 TString outfname = "ZDCPbPb"
9 // Get the pointer to the existing analysis manager via the static access method.
10 //==============================================================================
11 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
13 ::Error("AddTaskZDCPbPb", "No analysis manager to connect to.");
17 AliVEventHandler *inputHandler = mgr->GetInputEventHandler();
19 // Check the analysis type using the event handlers connected to the analysis manager.
20 //==============================================================================
22 ::Error("AddTaskZDCPbPb", "This task requires an input event handler");
25 TString inputDataType = inputHandler->GetDataType(); // can be "ESD" or "AOD"
28 //===========================================================================
29 gROOT->LoadMacro("AliAnalysisTaskZDCPbPb.cxx++g");
30 AliAnalysisTaskZDCPbPb* task = new AliAnalysisTaskZDCPbPb("taskZDCPbPb");
32 if(inputDataType.CompareTo("ESD")==0){
34 printf(" AliAnalysisTaskZDCPbPb initialized for ESD analysis\n");
36 else if(inputDataType.CompareTo("AOD")==0){
38 printf(" AliAnalysisTaskZDCPbPb initialized for AOD analysis\n");
40 task->SetCentralityRange(centrlowlim, centruplim);
41 task->SetCentralityEstimator(centrest);
43 if(isMC==kTRUE) task->SetMCInput();
45 // apply physics selection
46 if(applyPS) task->SelectCollisionCandidates();
50 TString outputFileName = AliAnalysisManager::GetCommonFileName();
52 AliAnalysisDataContainer *coutput = mgr->CreateContainer("ZDChistos", TList::Class(),
53 AliAnalysisManager::kOutputContainer,
54 Form("%s:%s", mgr->GetCommonFileName(), outfname));
56 mgr->ConnectInput (task, 0, mgr->GetCommonInputContainer());
57 mgr->ConnectOutput (task, 1, coutput);