]>
Commit | Line | Data |
---|---|---|
2f8ef315 | 1 | AliAnalysisTask *AddTaskHFECal(Bool_t MassConst, Bool_t MassWidthCut, Bool_t MassNonlinear) |
a7506fdf | 2 | { |
3 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); | |
4 | if (!mgr) { | |
5 | Error("AddTaskHFEECal", "No analysis manager found."); | |
6 | return NULL; | |
7 | } | |
8 | ||
9 | if (!mgr->GetInputEventHandler()) { | |
10 | ::Error("AddTaskHFECal", "This task requires an input event handler"); | |
11 | return NULL; | |
12 | } | |
13 | TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD" | |
14 | if (type=="AOD"){ | |
15 | ::Error("AddTaskHFECal", "The tasks exits because AODs are in input"); | |
16 | return NULL; | |
17 | } | |
18 | Bool_t MCthere=kFALSE; | |
19 | AliMCEventHandler *mcH = dynamic_cast<AliMCEventHandler*>(mgr->GetMCtruthEventHandler()); | |
20 | if(!mcH){ | |
21 | MCthere=kFALSE; | |
22 | }else{ | |
23 | MCthere=kTRUE; | |
24 | } | |
25 | ||
6451f693 | 26 | Bool_t MassCal = kTRUE; |
4642ba9f | 27 | Double_t masscut = 0.05; |
28 | if(!MassConst)masscut = 0.1; | |
a7506fdf | 29 | //analysis task |
30 | gROOT->LoadMacro("$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/ConfigHFECal.C"); | |
31 | ||
c6bca3f2 | 32 | AliAnalysisTaskHFECal *hfetaskCent = ConfigHFECal(MCthere,MassConst,MassWidthCut,MassCal,MassNonlinear,0.5,0.1,masscut,-5,1); |
33 | AliAnalysisTaskHFECal *hfetaskTrig= ConfigHFECal(MCthere,MassConst,MassWidthCut,MassCal,MassNonlinear,0.5,0.1,masscut,-5,1); | |
34 | AliAnalysisTaskHFECal *hfetaskTrig2= ConfigHFECal(MCthere,MassConst,MassWidthCut,MassCal,MassNonlinear,0.5,0.1,masscut,-5,1); | |
a7506fdf | 35 | |
36 | mgr->AddTask(hfetaskCent); | |
37 | mgr->AddTask(hfetaskTrig); | |
aeec54aa | 38 | mgr->AddTask(hfetaskTrig2); |
a7506fdf | 39 | |
aeec54aa | 40 | // central trigger |
a7506fdf | 41 | hfetaskCent->SelectCollisionCandidates(AliVEvent::kCentral); |
42 | ||
43 | TString containerName = mgr->GetCommonFileName(); | |
44 | containerName += ":PWGHF_hfeCalCentral"; | |
45 | ||
46 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
47 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("HFE_Results_EMCalCentral", TList::Class(),AliAnalysisManager::kOutputContainer, containerName.Data()); | |
48 | mgr->ConnectInput(hfetaskCent, 0, cinput); | |
49 | mgr->ConnectOutput(hfetaskCent, 1, coutput1); | |
50 | ||
51 | //L1 gamma trigger | |
52 | hfetaskTrig->SelectCollisionCandidates(AliVEvent::kEMCEGA); | |
53 | ||
54 | TString containerName2 = mgr->GetCommonFileName(); | |
55 | containerName2 += ":PWGHF_hfeCalTrigEGA"; | |
56 | ||
57 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
58 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("HFE_Results_EMCalTrigEGA", TList::Class(),AliAnalysisManager::kOutputContainer, containerName2.Data()); | |
59 | mgr->ConnectInput(hfetaskTrig, 0, cinput); | |
60 | mgr->ConnectOutput(hfetaskTrig, 1, coutput1); | |
61 | ||
aeec54aa | 62 | |
63 | //Jet trigger | |
fdbafac1 | 64 | // semi-central |
65 | hfetaskTrig2->SelectCollisionCandidates(AliVEvent::kSemiCentral); | |
aeec54aa | 66 | |
67 | TString containerName3 = mgr->GetCommonFileName(); | |
fdbafac1 | 68 | containerName3 += ":PWGHF_hfeCalSemiCentral"; |
aeec54aa | 69 | |
70 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
fdbafac1 | 71 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("HFE_Results_SemiCentral", TList::Class(),AliAnalysisManager::kOutputContainer, containerName3.Data()); |
aeec54aa | 72 | mgr->ConnectInput(hfetaskTrig2, 0, cinput); |
73 | mgr->ConnectOutput(hfetaskTrig2, 1, coutput1); | |
74 | ||
75 | ||
b12bc641 | 76 | //if(MCthere) |
77 | //{ | |
af8b0200 | 78 | //MB trigger |
c6bca3f2 | 79 | AliAnalysisTaskHFECal *hfetaskMB = ConfigHFECal(MCthere,MassConst,MassWidthCut,MassCal,MassNonlinear,0.5,0.1,masscut,-5,1); |
af8b0200 | 80 | mgr->AddTask(hfetaskMB); |
81 | hfetaskMB->SelectCollisionCandidates(AliVEvent::kMB); | |
82 | ||
d44e3c84 | 83 | TString containerName4 = mgr->GetCommonFileName(); |
84 | containerName4 += ":PWGHF_hfeCalkMB"; | |
af8b0200 | 85 | |
86 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
d44e3c84 | 87 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("HFE_Results_EMCalMB", TList::Class(),AliAnalysisManager::kOutputContainer, containerName4.Data()); |
af8b0200 | 88 | mgr->ConnectInput(hfetaskMB, 0, cinput); |
89 | mgr->ConnectOutput(hfetaskMB, 1, coutput1); | |
b12bc641 | 90 | //} |
af8b0200 | 91 | |
92 | ||
a7506fdf | 93 | return NULL; |
94 | } |