]>
Commit | Line | Data |
---|---|---|
1 | Int_t AddD2HTrain(Bool_t readMC=kTRUE, | |
2 | Int_t addQA=1, | |
3 | Int_t addD0Mass=1, | |
4 | Int_t addD0MassLS=1, | |
5 | Int_t addDplus=1, | |
6 | Int_t addLSD0=0, | |
7 | Int_t addCFD0=0, | |
8 | Int_t addPromptD0=1, | |
9 | Int_t addDs=0, | |
10 | Int_t addDStar=1, | |
11 | Int_t addDStarJets=0, | |
12 | Int_t addCFDStar=0) { | |
13 | // | |
14 | // Tasks of the D2H subgroup of PWGHF that can run in the Official Train | |
15 | // | |
16 | // They all use AOD+AOD.VertexingHF as input. | |
17 | // They need to read the cuts from the macro | |
18 | // $ALICE_ROOT/PWGHF/vertexingHF/ConfigVertexingHF.C (trunk version). | |
19 | // This macro is loaded in the Init(), so it should be enough to have it | |
20 | // in the local dir when the train is launched with the alien plugin. | |
21 | // They all produce only histos in the output. | |
22 | // | |
23 | // andrea.dainese@pd.infn.it | |
24 | // | |
25 | ||
26 | TString taskName="",loadMacroPath="$ALICE_ROOT/PWGHF/vertexingHF/macros/"; | |
27 | Int_t ntasks=0; | |
28 | ||
29 | //taskName="AddTaskCompareHF.C"; taskName.Prepend(loadMacroPath.Data()); | |
30 | //gROOT->LoadMacro(taskName.Data()); | |
31 | //AliAnalysisTaskSECompareHF *cmpTask = AddTaskCompareHF(); | |
32 | ||
33 | if(addQA) { | |
34 | taskName="AddTaskHFQA.C"; taskName.Prepend(loadMacroPath.Data()); | |
35 | gROOT->LoadMacro(taskName.Data()); | |
36 | AliAnalysisTaskSEHFQA *taskQAHF = AddTaskHFQA(AliAnalysisTaskSEHFQA::kD0toKpi,"",readMC,kTRUE); | |
37 | ntasks++; | |
38 | } | |
39 | ||
40 | ||
41 | if(addD0Mass || addD0MassLS) { | |
42 | taskName="AddTaskD0Mass.C"; taskName.Prepend(loadMacroPath.Data()); | |
43 | gROOT->LoadMacro(taskName.Data()); | |
44 | if(addD0Mass) { | |
45 | AliAnalysisTaskSED0Mass *d0massTask = AddTaskD0Mass(0,readMC); | |
46 | ntasks++; | |
47 | } | |
48 | if(addD0MassLS) { | |
49 | AliAnalysisTaskSED0Mass *d0massLikeSignTask = AddTaskD0Mass(1,readMC); | |
50 | ntasks++; | |
51 | } | |
52 | } | |
53 | ||
54 | if(addDplus) { | |
55 | taskName="AddTaskDplus.C"; taskName.Prepend(loadMacroPath.Data()); | |
56 | gROOT->LoadMacro(taskName.Data()); | |
57 | AliAnalysisTaskSEDplus *dplusTask = AddTaskDplus(kFALSE,readMC); | |
58 | ntasks++; | |
59 | } | |
60 | ||
61 | //taskName="AddTaskSelectHF.C"; taskName.Prepend(loadMacroPath.Data()); | |
62 | //gROOT->LoadMacro(taskName.Data()); | |
63 | //AliAnalysisTaskSESelectHF *seleTask = AddTaskSelectHF(); | |
64 | ||
65 | if(addLSD0 && readMC) { | |
66 | taskName="AddTaskBkgLikeSignD0.C"; taskName.Prepend(loadMacroPath.Data()); | |
67 | gROOT->LoadMacro(taskName.Data()); | |
68 | AliAnalysisTaskSEBkgLikeSignD0 *lsD0Task = AddTaskBkgLikeSignD0(); | |
69 | ntasks++; | |
70 | } | |
71 | ||
72 | if(addCFD0 && readMC) { | |
73 | taskName="AddTaskCFMultiVarMultiStep.C"; taskName.Prepend(loadMacroPath.Data()); | |
74 | gROOT->LoadMacro(taskName.Data()); | |
75 | AliCFHeavyFlavourTaskMultiVarMultiStep *cfmvmsTask = AddTaskCFMultiVarMultiStep(); | |
76 | ntasks++; | |
77 | } | |
78 | ||
79 | if(addPromptD0) { | |
80 | taskName="AddTaskSECharmFraction.C"; | |
81 | taskName.Prepend(loadMacroPath.Data()); | |
82 | gROOT->LoadMacro(taskName.Data()); | |
83 | Int_t switchMC[5]={0,0,0,0,0}; | |
84 | Int_t ppPbPb=1;// 0 for pp, 1 for PbPb, used to siwtch on/off the removal of daughters from the primary vertex | |
85 | AliAnalysisTaskSECharmFraction *cFractTask = AddTaskSECharmFraction("standard",switchMC,readMC,kTRUE,kFALSE,"D0toKpiCharmFractCuts.root","c",ppPbPb); | |
86 | // arguments: filename,switchMC,readmc,usepid,likesign,cutfilename,containerprefix | |
87 | ntasks++; | |
88 | } | |
89 | ||
90 | if(addDs) { | |
91 | taskName="AddTaskDs.C"; taskName.Prepend(loadMacroPath.Data()); | |
92 | gROOT->LoadMacro(taskName.Data()); | |
93 | AliAnalysisTaskSEDs *dsTask = AddTaskDs(readMC); | |
94 | ntasks++; | |
95 | } | |
96 | ||
97 | if(addDStar) { | |
98 | taskName="AddTaskDStarSpectra.C"; taskName.Prepend(loadMacroPath.Data()); | |
99 | gROOT->LoadMacro(taskName.Data()); | |
100 | AliAnalysisTaskSEDStarSpectra *dstarTask = AddTaskDStarSpectra(readMC); | |
101 | ntasks++; | |
102 | } | |
103 | ||
104 | if(addDStarJets) { | |
105 | taskName="AddTaskDStarJets.C"; taskName.Prepend(loadMacroPath.Data()); | |
106 | gROOT->LoadMacro(taskName.Data()); | |
107 | AliAnalysisTaskSEDStarJets *dstarjetsTask = AddTaskDStarJets(readMC); | |
108 | ntasks++; | |
109 | } | |
110 | ||
111 | if(addCFDStar && readMC) { | |
112 | taskName="AddTaskCFDStar.C"; taskName.Prepend(loadMacroPath.Data()); | |
113 | gROOT->LoadMacro(taskName.Data()); | |
114 | AliCFTaskForDStarAnalysis *cfDstarTask = AddTaskCFDStar(); | |
115 | ntasks++; | |
116 | } | |
117 | ||
118 | ||
119 | return ntasks; | |
120 | } |