]>
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 | |
3b68b3fb | 40 | |
aeec54aa | 41 | // central trigger |
a7506fdf | 42 | hfetaskCent->SelectCollisionCandidates(AliVEvent::kCentral); |
43 | ||
44 | TString containerName = mgr->GetCommonFileName(); | |
45 | containerName += ":PWGHF_hfeCalCentral"; | |
46 | ||
47 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
48 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("HFE_Results_EMCalCentral", TList::Class(),AliAnalysisManager::kOutputContainer, containerName.Data()); | |
49 | mgr->ConnectInput(hfetaskCent, 0, cinput); | |
50 | mgr->ConnectOutput(hfetaskCent, 1, coutput1); | |
3b68b3fb | 51 | |
a7506fdf | 52 | //L1 gamma trigger |
53 | hfetaskTrig->SelectCollisionCandidates(AliVEvent::kEMCEGA); | |
54 | ||
55 | TString containerName2 = mgr->GetCommonFileName(); | |
56 | containerName2 += ":PWGHF_hfeCalTrigEGA"; | |
57 | ||
58 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
59 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("HFE_Results_EMCalTrigEGA", TList::Class(),AliAnalysisManager::kOutputContainer, containerName2.Data()); | |
60 | mgr->ConnectInput(hfetaskTrig, 0, cinput); | |
61 | mgr->ConnectOutput(hfetaskTrig, 1, coutput1); | |
62 | ||
3b68b3fb | 63 | |
fdbafac1 | 64 | // semi-central |
3b68b3fb | 65 | //hfetaskTrig2->SelectCollisionCandidates(AliVEvent::kSemiCentral | AliVEvent::kCentral); |
66 | hfetaskTrig2->SelectCollisionCandidates(AliVEvent::kAny); | |
aeec54aa | 67 | |
68 | TString containerName3 = mgr->GetCommonFileName(); | |
fdbafac1 | 69 | containerName3 += ":PWGHF_hfeCalSemiCentral"; |
aeec54aa | 70 | |
71 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
fdbafac1 | 72 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("HFE_Results_SemiCentral", TList::Class(),AliAnalysisManager::kOutputContainer, containerName3.Data()); |
aeec54aa | 73 | mgr->ConnectInput(hfetaskTrig2, 0, cinput); |
74 | mgr->ConnectOutput(hfetaskTrig2, 1, coutput1); | |
aeec54aa | 75 | |
3b68b3fb | 76 | |
b12bc641 | 77 | //if(MCthere) |
78 | //{ | |
af8b0200 | 79 | //MB trigger |
c6bca3f2 | 80 | AliAnalysisTaskHFECal *hfetaskMB = ConfigHFECal(MCthere,MassConst,MassWidthCut,MassCal,MassNonlinear,0.5,0.1,masscut,-5,1); |
af8b0200 | 81 | mgr->AddTask(hfetaskMB); |
82 | hfetaskMB->SelectCollisionCandidates(AliVEvent::kMB); | |
83 | ||
d44e3c84 | 84 | TString containerName4 = mgr->GetCommonFileName(); |
85 | containerName4 += ":PWGHF_hfeCalkMB"; | |
af8b0200 | 86 | |
87 | AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer(); | |
d44e3c84 | 88 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("HFE_Results_EMCalMB", TList::Class(),AliAnalysisManager::kOutputContainer, containerName4.Data()); |
af8b0200 | 89 | mgr->ConnectInput(hfetaskMB, 0, cinput); |
90 | mgr->ConnectOutput(hfetaskMB, 1, coutput1); | |
b12bc641 | 91 | //} |
af8b0200 | 92 | |
a7506fdf | 93 | return NULL; |
94 | } |