]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGUD/UPC/AddTaskUpcPsi2s.C
Adding MC part and PID
[u/mrichter/AliRoot.git] / PWGUD / UPC / AddTaskUpcPsi2s.C
1 AliAnalysisTaskUpcPsi2s *AddTaskUpcPsi2s(Bool_t runTree = kTRUE,Bool_t runHist = kTRUE){
2
3   
4   //--- get the current analysis manager ---//
5   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
6   if (!mgr) {
7       Error("AddTask_UpcPsi2s", "No analysis manager found.");
8       return 0;
9    }
10   
11   // Check the analysis type using the event handlers connected to the analysis manager.
12   //==============================================================================
13   if (!mgr->GetInputEventHandler()) {
14     Error("AddTask_UpcPsi2s", "This task requires an input event handler");
15     return 0;
16   }
17         
18   TString inputDataType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
19   Bool_t isMC;
20   if(mgr->GetMCtruthEventHandler()) isMC = kTRUE;
21   
22   // Create tasks
23   AliAnalysisTaskUpcPsi2s *task = new AliAnalysisTaskUpcPsi2s(inputDataType.Data());
24   task->SetRunTree(runTree);
25   task->SetRunHist(runHist);
26   task->SetIsMC(isMC);
27   mgr->AddTask(task);
28
29
30    // Create containers for input/output
31   AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
32   AliAnalysisDataContainer *coutput = mgr->CreateContainer("JPsiTree", TTree::Class(), AliAnalysisManager::kOutputContainer,Form("%s:Psi2sCentral", AliAnalysisManager::GetCommonFileName()));
33   AliAnalysisDataContainer *coutput2 = mgr->CreateContainer("Psi2sTree", TTree::Class(), AliAnalysisManager::kOutputContainer, Form("%s:Psi2sCentral", AliAnalysisManager::GetCommonFileName()));
34   AliAnalysisDataContainer *coutput3 = mgr->CreateContainer("ListTrig", TList::Class(), AliAnalysisManager::kOutputContainer, Form("%s:Psi2sCentral", AliAnalysisManager::GetCommonFileName()));
35   AliAnalysisDataContainer *coutput4 = mgr->CreateContainer("Psi2sListHist", TList::Class(), AliAnalysisManager::kOutputContainer, Form("%s:Psi2sCentral", AliAnalysisManager::GetCommonFileName()));  
36
37   // Connect input/output
38   mgr->ConnectInput(task, 0, cinput);
39   mgr->ConnectOutput(task, 1, coutput);
40   mgr->ConnectOutput(task, 2, coutput2);
41   mgr->ConnectOutput(task, 3, coutput3);
42   mgr->ConnectOutput(task, 4, coutput4);
43
44 return task;
45 }