]>
Commit | Line | Data |
---|---|---|
7cdafa1e | 1 | AliEPSelectionTask *AddTaskEventplane(Bool_t useEtaGap=kFALSE,Float_t etaGap=0.,Bool_t posTPCAOD=kFALSE,TString containername = "EPStat") |
ce7adfe9 | 2 | { |
3 | // Macro to connect an event plane selection task to an existing analysis manager. | |
7cdafa1e | 4 | |
5 | if(useEtaGap && posTPCAOD){ | |
6 | ::Error("AddTaskEventplane", "eta-splitting of events and one side of TPC not possible at same time!"); | |
7 | return NULL; | |
8 | } | |
9 | ||
ce7adfe9 | 10 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); |
11 | if (!mgr) { | |
12 | ::Error("AddTaskEventplane", "No analysis manager to connect to."); | |
13 | return NULL; | |
14 | } | |
15 | // Check the analysis type using the event handlers connected to the analysis manager. | |
16 | //============================================================================== | |
17 | if (!mgr->GetInputEventHandler()) { | |
18 | ::Error("AddTaskEventplane", "This task requires an input event handler"); | |
19 | return NULL; | |
20 | } | |
21 | TString inputDataType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD" | |
e51055a0 | 22 | |
ce7adfe9 | 23 | |
24 | AliEPSelectionTask *eventplaneTask = new AliEPSelectionTask("EventplaneSelection"); | |
9663fa4b | 25 | eventplaneTask->SelectCollisionCandidates(AliVEvent::kMB | AliVEvent::kSemiCentral | AliVEvent::kCentral); |
e51055a0 | 26 | if (inputDataType == "AOD"){ |
27 | eventplaneTask->SetInput("AOD"); | |
28 | } | |
90267ca6 | 29 | eventplaneTask->SetTrackType("TPC"); |
ce7adfe9 | 30 | eventplaneTask->SetUsePtWeight(); |
90267ca6 | 31 | eventplaneTask->SetUsePhiWeight(); |
32 | eventplaneTask->SetSaveTrackContribution(); | |
8af85e9f | 33 | if(useEtaGap){ |
34 | eventplaneTask->SetSubeventsSplitMethod(AliEPSelectionTask::kEta); | |
35 | eventplaneTask->SetEtaGap(etaGap); | |
36 | } | |
7cdafa1e | 37 | if(posTPCAOD){ |
38 | eventplaneTask->SetPersonalAODtrackCuts(128,0.,0.8,0.15,20.); | |
39 | eventplaneTask->SetSubeventsSplitMethod(AliEPSelectionTask::kRandom); | |
40 | } | |
8af85e9f | 41 | |
90267ca6 | 42 | |
ce7adfe9 | 43 | mgr->AddTask(eventplaneTask); |
44 | ||
45 | AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer(); | |
7cdafa1e | 46 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(containername, |
ce7adfe9 | 47 | TList::Class(), AliAnalysisManager::kOutputContainer, |
48 | "EventStat_temp.root"); | |
49 | ||
50 | mgr->ConnectInput(eventplaneTask, 0, mgr->GetCommonInputContainer()); | |
51 | mgr->ConnectOutput(eventplaneTask,1,coutput1); | |
52 | ||
53 | return eventplaneTask; | |
54 | } |