]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGHF/hfe/macros/AddTaskHFECalPbPb.C
modified for AOD
[u/mrichter/AliRoot.git] / PWGHF / hfe / macros / AddTaskHFECalPbPb.C
1 AliAnalysisTask *AddTaskHFECalPbPb(int TPCclust){
2   //get the current analysis manager
3   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
4   if (!mgr) {
5     Error("AddTaskHFE", "No analysis manager found.");
6     return NULL;
7   }
8   if (!mgr->GetInputEventHandler()) {
9     ::Error("AddTaskHFE", "This task requires an input event handler");
10     return NULL;
11   }  
12   TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
13   /*
14   if (type=="AOD"){
15     ::Error("AddTaskHFE", "The tasks exits because AODs are in input");
16     return NULL;
17    }
18   */
19   Bool_t MCthere=kFALSE;
20   AliMCEventHandler *mcH = dynamic_cast<AliMCEventHandler*>(mgr->GetMCtruthEventHandler());
21   if(!mcH){
22     MCthere=kFALSE;
23   }else{
24     MCthere=kTRUE;
25   }
26   cout<<"AddTaskHFE - MC config is: "<<MCthere<<endl;
27
28   //============= Set Task Name ===================
29   //TString taskName=("AliAnalysisTaskHFE.cxx+");
30   //===============================================
31   
32   gROOT->LoadMacro("$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/ConfigHFECalstandard_PbPb.C");
33
34   //<--- task1 for EMCal trigger
35   AliAnalysisTaskHFE *hfetask = ConfigHFECalstandard_PbPb(MCthere,TPCclust);
36   //RequestMemory(hfetask, 250*1024);
37   hfetask->SelectCollisionCandidates(AliVEvent::kEMCEGA);
38   mgr->AddTask(hfetask);
39
40   //find input container
41   AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
42   TString containerName = mgr->GetCommonFileName();
43   containerName += ":PWGHF_hfeCalPbPbEGA";
44   
45   hfetask->ConnectOutput(1, mgr->CreateContainer("HFE_Results_EMCALEGA", TList::Class(),
46                                                  AliAnalysisManager::kOutputContainer, containerName.Data()));
47   hfetask->ConnectOutput(2, mgr->CreateContainer("HFE_QA_EMCALEGA", TList::Class(),
48                                               AliAnalysisManager::kOutputContainer, containerName.Data()));
49
50   mgr->ConnectInput  (hfetask,  0, cinput );
51   
52
53   //<--- task2 for central trigger
54
55   AliAnalysisTaskHFE *hfetask2 = ConfigHFECalstandard_PbPb(MCthere,TPCclust);
56   hfetask2->SelectCollisionCandidates(AliVEvent::kCentral);
57   mgr->AddTask(hfetask2);
58
59   //find input container
60   TString containerName2 = mgr->GetCommonFileName();
61   containerName2 += ":PWGHF_hfeCalPbPbCent";
62   
63   hfetask2->ConnectOutput(1, mgr->CreateContainer("HFE_Results_EMCALCent", TList::Class(),
64                                                  AliAnalysisManager::kOutputContainer, containerName2.Data()));
65   hfetask2->ConnectOutput(2, mgr->CreateContainer("HFE_QA_EMCALCent", TList::Class(),
66                                               AliAnalysisManager::kOutputContainer, containerName2.Data()));
67
68   mgr->ConnectInput  (hfetask2,  0, cinput );
69   
70
71 /*
72   AliAnalysisTaskHFE *trdtask = ConfigHFEtrd(MCthere);
73
74   //----------------------
75   //create data containers
76   //----------------------
77  
78   trdtask->ConnectOutput(1, mgr->CreateContainer("HFE_Results", TList::Class(),
79                                               AliAnalysisManager::kOutputContainer, containerName.Data()));
80   trdtask->ConnectOutput(2, mgr->CreateContainer("HFE_QA", TList::Class(),
81                                               AliAnalysisManager::kOutputContainer, containerName.Data()));
82   mgr->ConnectInput  (trdtask,  0, cinput );
83 */
84
85   //return hfetask;
86   return NULL;
87 }