]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/vertexingHF/AddD2HTrain.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGHF / vertexingHF / AddD2HTrain.C
CommitLineData
2fbaf745 1Int_t AddD2HTrain(Bool_t readMC=kTRUE,
f1f03515 2 Int_t addQA=1,
2fbaf745 3 Int_t addD0Mass=1,
a13d770c 4 Int_t addD0MassLS=1,
5 Int_t addDplus=1,
ae39ad32 6 Int_t addLSD0=0,
ae39ad32 7 Int_t addCFD0=0,
38fae784 8 Int_t addPromptD0=1,
ae39ad32 9 Int_t addDs=0,
38fae784 10 Int_t addDStar=1,
ae39ad32 11 Int_t addDStarJets=0,
12 Int_t addCFDStar=0) {
f614449f 13 //
0694cdc8 14 // Tasks of the D2H subgroup of PWGHF that can run in the Official Train
f614449f 15 //
16 // They all use AOD+AOD.VertexingHF as input.
17 // They need to read the cuts from the macro
0694cdc8 18 // $ALICE_ROOT/PWGHF/vertexingHF/ConfigVertexingHF.C (trunk version).
f614449f 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
0694cdc8 26 TString taskName="",loadMacroPath="$ALICE_ROOT/PWGHF/vertexingHF/macros/";
a13d770c 27 Int_t ntasks=0;
28
f614449f 29 //taskName="AddTaskCompareHF.C"; taskName.Prepend(loadMacroPath.Data());
30 //gROOT->LoadMacro(taskName.Data());
31 //AliAnalysisTaskSECompareHF *cmpTask = AddTaskCompareHF();
32
f1f03515 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
a13d770c 41 if(addD0Mass || addD0MassLS) {
42 taskName="AddTaskD0Mass.C"; taskName.Prepend(loadMacroPath.Data());
43 gROOT->LoadMacro(taskName.Data());
44 if(addD0Mass) {
2fbaf745 45 AliAnalysisTaskSED0Mass *d0massTask = AddTaskD0Mass(0,readMC);
a13d770c 46 ntasks++;
47 }
48 if(addD0MassLS) {
2fbaf745 49 AliAnalysisTaskSED0Mass *d0massLikeSignTask = AddTaskD0Mass(1,readMC);
a13d770c 50 ntasks++;
51 }
52 }
53
54 if(addDplus) {
55 taskName="AddTaskDplus.C"; taskName.Prepend(loadMacroPath.Data());
56 gROOT->LoadMacro(taskName.Data());
2fbaf745 57 AliAnalysisTaskSEDplus *dplusTask = AddTaskDplus(kFALSE,readMC);
a13d770c 58 ntasks++;
59 }
60
f614449f 61 //taskName="AddTaskSelectHF.C"; taskName.Prepend(loadMacroPath.Data());
62 //gROOT->LoadMacro(taskName.Data());
63 //AliAnalysisTaskSESelectHF *seleTask = AddTaskSelectHF();
64
2fbaf745 65 if(addLSD0 && readMC) {
a13d770c 66 taskName="AddTaskBkgLikeSignD0.C"; taskName.Prepend(loadMacroPath.Data());
67 gROOT->LoadMacro(taskName.Data());
68 AliAnalysisTaskSEBkgLikeSignD0 *lsD0Task = AddTaskBkgLikeSignD0();
69 ntasks++;
70 }
71
2fbaf745 72 if(addCFD0 && readMC) {
a13d770c 73 taskName="AddTaskCFMultiVarMultiStep.C"; taskName.Prepend(loadMacroPath.Data());
74 gROOT->LoadMacro(taskName.Data());
75 AliCFHeavyFlavourTaskMultiVarMultiStep *cfmvmsTask = AddTaskCFMultiVarMultiStep();
76 ntasks++;
77 }
78
79 if(addPromptD0) {
e047b348 80 taskName="AddTaskSECharmFraction.C";
81 taskName.Prepend(loadMacroPath.Data());
a13d770c 82 gROOT->LoadMacro(taskName.Data());
e047b348 83 Int_t switchMC[5]={0,0,0,0,0};
cc3209fb 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);
e047b348 86 // arguments: filename,switchMC,readmc,usepid,likesign,cutfilename,containerprefix
a13d770c 87 ntasks++;
88 }
f614449f 89
38fae784 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) {
46f6e464 98 taskName="AddTaskDStarSpectra.C"; taskName.Prepend(loadMacroPath.Data());
38fae784 99 gROOT->LoadMacro(taskName.Data());
46f6e464 100 AliAnalysisTaskSEDStarSpectra *dstarTask = AddTaskDStarSpectra(readMC);
38fae784 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
a13d770c 119 return ntasks;
f614449f 120}