]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/FLOW/macros/AddTaskVZERO.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGCF / FLOW / macros / AddTaskVZERO.C
1 AliAnalysisTask *AddTaskVZERO(Bool_t isafter2011=kFALSE,Bool_t ismc=kFALSE,Bool_t kV2=kTRUE,Bool_t kV3=kTRUE,Bool_t qa=kFALSE,Bool_t 
2 modulationdEdx=kFALSE,Bool_t globalTrack=kFALSE){
3
4   //get the current analysis manager
5   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
6   if (!mgr) {
7     Error("No manager found in AddTaskVZERO. Why?");
8     return 0;
9   }
10   // currently don't accept AOD input
11   if (!mgr->GetInputEventHandler()->InheritsFrom(AliAODInputHandler::Class())) {
12     Error("AddTaskVZERO","This task works only with AOD input!");
13     return 0;
14   }
15
16   //========= Add tender to the ANALYSIS manager and set default storage =====
17   char mytaskName[100];
18   snprintf(mytaskName,100,"AliAnalysisTaskVnV0.cxx"); 
19
20   AliAnalysisTaskVnV0 *task = new AliAnalysisTaskVnV0(mytaskName);
21   task->SetV2(kV2);
22   task->SetV3(kV3);
23   if(ismc) task->SetMC();
24   if(qa) task->SetQA();
25   if(isafter2011) task->SetAfter2011();
26
27   task->SetFillDCAinfo(globalTrack); // 0 = TPC only track, 1 = global tracks
28   task->SetModulationDEDx(modulationdEdx);
29   task->SetEtaCut(0.8);
30   task->SetMinDistV0(0.);
31   task->SetMaxDistV0(100.);
32
33   mgr->AddTask(task);
34
35   //Attach input to my tasks
36   AliAnalysisDataContainer *cinput = mgr->CreateContainer("cchain1",TChain::Class(),AliAnalysisManager::kInputContainer);
37   mgr->ConnectInput(task,0,mgr->GetCommonInputContainer());
38
39   // Attach output to my tasks
40   if(kV2){
41     AliAnalysisDataContainer *cOutputL= mgr->CreateContainer("contVZEROv2",TList::Class(), AliAnalysisManager::kOutputContainer, AliAnalysisManager::GetCommonFileName());
42     mgr->ConnectOutput(task, 1, cOutputL);
43   }
44   if(kV3){
45     AliAnalysisDataContainer *cOutputL2= mgr->CreateContainer("contVZEROv3",TList::Class(), AliAnalysisManager::kOutputContainer, AliAnalysisManager::GetCommonFileName());
46     mgr->ConnectOutput(task, 2, cOutputL2);
47   }
48   if(ismc){
49     AliAnalysisDataContainer *cOutputL3= mgr->CreateContainer("contVZEROmc",TList::Class(), AliAnalysisManager::kOutputContainer, AliAnalysisManager::GetCommonFileName());
50     mgr->ConnectOutput(task, 3, cOutputL3);
51   }
52   if(qa){
53     AliAnalysisDataContainer *cOutputL4= mgr->CreateContainer("contVZEROqa",TList::Class(), AliAnalysisManager::kOutputContainer, AliAnalysisManager::GetCommonFileName());
54     mgr->ConnectOutput(task, 4, cOutputL4);
55   }
56   printf("task really added\n");
57
58   return task;
59 }
60