]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/macros/AddTaskJetCorrel.C
new module for hadron correlations
[u/mrichter/AliRoot.git] / PWG4 / macros / AddTaskJetCorrel.C
1 AliAnalysisTaskJetCorrel *AddTaskJetCorrel(){
2   //get the current analysis manager
3   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
4   if(!mgr) {
5     ::Error("AddTaskJetCorrel", "No analysis manager found.");
6     return NULL;
7   }
8   if(!mgr->GetInputEventHandler()) {
9     ::Error("AddTaskJetCorrel", "This task requires an input event handler.");
10     return NULL;
11   }
12   TString inputDataType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
13   if(inputDataType.CompareTo("ESD")!=0) {
14     ::Error("AddTaskJetCorrel", "This task uses ESD as input.");
15     return NULL;
16   }
17
18   using namespace JetCorrelHD;
19   gROOT->LoadMacro("$ALICE_ROOT/PWG4/macros/ConfigJetCorrel.C");
20   AliJetCorrelSelector* Selector = JetCorrelSelector();
21   AliAnalysisTaskJetCorrel *task = new AliAnalysisTaskJetCorrel(Selector);
22
23   //add the task to the current analysis manager
24   mgr->AddTask(task);
25   //----------------------
26   //create data containers
27   //----------------------
28   AliAnalysisDataContainer *output = 
29     mgr->CreateContainer("JetCorrelHistos", TList::Class(),
30                          AliAnalysisManager::kOutputContainer,"JetCorrelHistos.root");    
31   mgr->ConnectInput(task,0,mgr->GetCommonInputContainer());
32   mgr->ConnectOutput(task,0,mgr->GetCommonOutputContainer());
33   mgr->ConnectOutput(task,1,output);
34   
35   return task;
36 }