]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGGA/EMCALTasks/macros/AddTaskEMCALPi0V2hardCodeEP.C
changes from fzhou
[u/mrichter/AliRoot.git] / PWGGA / EMCALTasks / macros / AddTaskEMCALPi0V2hardCodeEP.C
1 AliAnalysisTask *AddTaskEMCALPi0V2hardCodeEP(Double_t EvtMthod=1)
2 {
3   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
4   if (!mgr) {
5     Error("AddTaskEMCALPi0V2hardCodeEP", "No analysis manager found.");
6     return NULL;
7   }
8
9   if (!mgr->GetInputEventHandler()) {
10     ::Error("AddTaskEMCALPi0V2hardCodeEP", "This task requires an input event handler");
11     return NULL;
12   }
13   TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
14   if (type=="AOD"){
15     ::Error("AddTaskEMCALPi0V2hardCodeEP", "The tasks exits because AODs are in input");
16     return NULL;
17   }
18   
19   //Event plane task
20   AliEPSelectionTask *eventplaneTask = new AliEPSelectionTask("EventplaneSelection");
21   eventplaneTask->SetTrackType("TPC");
22   eventplaneTask->SetUsePtWeight();
23   eventplaneTask->SetUsePhiWeight();
24   eventplaneTask->SetSaveTrackContribution();
25   
26   AliESDtrackCuts* epTrackCuts = new AliESDtrackCuts("AliESDtrackCuts", "Standard");
27   epTrackCuts->SetRequireTPCStandAlone(kTRUE); // to get chi2 and ncls of kTPCin
28   epTrackCuts->SetMinNClustersTPC(50);
29   epTrackCuts->SetMaxChi2PerClusterTPC(4);
30   epTrackCuts->SetAcceptKinkDaughters(kFALSE);
31   epTrackCuts->SetRequireTPCRefit(kTRUE);
32   epTrackCuts->SetMaxDCAToVertexZ(3.2);
33   epTrackCuts->SetMaxDCAToVertexXY(2.4);
34   epTrackCuts->SetPtRange(0.15, 20);
35   eventplaneTask->SetPersonalESDtrackCuts(epTrackCuts);
36
37   mgr->AddTask(eventplaneTask);
38
39   TString containerName3 = mgr->GetCommonFileName();
40   containerName3 += ":PWGGA_pi0v2CalEventPlane";
41   
42   AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer();
43   AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("EPStatTPC",TList::Class(), AliAnalysisManager::kOutputContainer,containerName3.Data());
44   mgr->ConnectInput(eventplaneTask, 0, mgr->GetCommonInputContainer());
45   mgr->ConnectOutput(eventplaneTask,1,coutput1);
46
47   //analysis task 
48
49  AliAnalysisTaskPi0V2* taskMB = new  AliAnalysisTaskPi0V2("Pi0v2Task"); 
50  taskMB->SetEventMethod(EvtMthod);
51   
52   TString containerName = mgr->GetCommonFileName();
53   containerName += ":PWGGA_pi0v2CalSemiCentral";
54   
55   AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
56   AliAnalysisDataContainer *coutput2 = mgr->CreateContainer("histv2task", TList::Class(),AliAnalysisManager::kOutputContainer, containerName.Data());
57   mgr->ConnectInput(taskMB, 0, cinput);
58   mgr->ConnectOutput(taskMB, 1, coutput2);
59   
60   return NULL;
61 }