]>
Commit | Line | Data |
---|---|---|
63147a75 | 1 | //if like define a different number of signal for TPC PID |
2 | ||
3 | //by default the task is anyway computing 1, 2 and 3 sigmas | |
4 | ||
5 | const Bool_t theRareOn = kTRUE; | |
6 | ||
7 | const Bool_t anaType = 1;//0 HD; 1 UU; | |
8 | ||
9 | const Bool_t doImp = kFALSE;// imp par studies | |
10 | ||
11 | //---------------------------------------------------- | |
12 | ||
13 | ||
14 | ||
15 | AliAnalysisTaskSEDStarSpectra *AddTaskDStarSpectra(Int_t system=0/*0=pp,1=PbPb*/, | |
16 | ||
17 | Float_t minC=0, Float_t maxC=100, | |
18 | ||
19 | const char * cutsfile="DStartoKpipiCuts.root", | |
20 | ||
21 | Bool_t theMCon=kFALSE) | |
22 | ||
23 | { | |
24 | ||
25 | ||
26 | ||
27 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); | |
28 | ||
29 | if (!mgr) { | |
30 | ||
31 | ::Error("AddTaskDStarSpectra", "No analysis manager to connect to."); | |
32 | ||
33 | return NULL; | |
34 | ||
35 | } | |
36 | ||
37 | ||
38 | ||
39 | // cuts are stored in a TFile generated by makeTFile4CutsDStartoKpipi.C in ./macros/ | |
40 | ||
41 | // set there the cuts!!!!! | |
42 | ||
43 | Bool_t stdcuts=kFALSE; | |
44 | ||
45 | TFile* filecuts=new TFile("DStartoKpipiCuts.root"); | |
46 | ||
47 | if(!filecuts->IsOpen()){ | |
48 | ||
49 | cout<<"Input file not found: exit"<<endl; | |
50 | ||
51 | stdcuts=kTRUE; | |
52 | ||
53 | } | |
54 | ||
55 | ||
56 | ||
57 | ||
58 | ||
59 | AliRDHFCutsDStartoKpipi* RDHFDStartoKpipi=new AliRDHFCutsDStartoKpipi(); | |
60 | ||
61 | if(stdcuts) { | |
62 | ||
63 | if(system==0) RDHFDStartoKpipi->SetStandardCutsPP2010(); | |
64 | ||
65 | else if(system==1) { | |
66 | ||
67 | RDHFDStartoKpipi->SetStandardCutsPbPb2010(); | |
68 | ||
69 | RDHFDStartoKpipi->SetMinCentrality(minC); | |
70 | ||
71 | RDHFDStartoKpipi->SetMinCentrality(maxC); | |
72 | ||
73 | RDHFDStartoKpipi->SetUseAOD049(kTRUE); | |
74 | ||
75 | RDHFDStartoKpipi->SetUseCentrality(AliRDHFCuts::kCentV0M); | |
76 | ||
77 | } | |
78 | ||
79 | } | |
80 | ||
81 | else RDHFDStartoKpipi = (AliRDHFCutsDStartoKpipi*)filecuts->Get("DStartoKpipiCuts"); | |
82 | ||
83 | RDHFDStartoKpipi->SetName("DStartoKpipiCuts"); | |
84 | ||
85 | ||
86 | ||
87 | // mm let's see if everything is ok | |
88 | ||
89 | if(!RDHFDStartoKpipi){ | |
90 | ||
91 | cout<<"Specific AliRDHFCuts not found"<<endl; | |
92 | ||
93 | return; | |
94 | ||
95 | } | |
96 | ||
97 | ||
98 | ||
99 | //CREATE THE TASK | |
100 | ||
101 | printf("CREATE TASK\n"); | |
102 | ||
103 | // create the task | |
104 | ||
105 | AliAnalysisTaskSEDStarSpectra *task = new AliAnalysisTaskSEDStarSpectra("AliAnalysisTaskSEDStarSpectra",RDHFDStartoKpipi); | |
106 | ||
107 | task->SetAnalysisType(anaType); | |
108 | ||
109 | task->SetMC(theMCon); | |
110 | ||
111 | task->SetRareSearch(theRareOn); | |
112 | ||
113 | task->SetDoImpactParameterHistos(doImp); | |
114 | ||
115 | task->SetDebugLevel(0); | |
116 | ||
117 | ||
118 | ||
119 | mgr->AddTask(task); | |
120 | ||
121 | ||
122 | ||
123 | // Create and connect containers for input/output | |
124 | ||
125 | ||
126 | ||
127 | TString outputfile = AliAnalysisManager::GetCommonFileName(); | |
128 | ||
129 | outputfile += ":PWG3_D2H_DStarSpectra"; | |
130 | ||
131 | ||
132 | ||
133 | // ------ input data ------ | |
134 | ||
135 | ||
136 | ||
137 | //AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer(); | |
138 | ||
139 | AliAnalysisDataContainer *cinput0 = mgr->CreateContainer("indstar",TChain::Class(), | |
140 | ||
141 | AliAnalysisManager::kInputContainer); | |
142 | ||
143 | ||
144 | ||
145 | ||
146 | ||
147 | // ----- output data ----- | |
148 | ||
149 | AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("chist1%d%d",minC,maxC),TList::Class(),AliAnalysisManager::kOutputContainer,outputfile.Data()); | |
150 | ||
151 | AliAnalysisDataContainer *coutputDStar1 = mgr->CreateContainer(Form("DStarAll%d%d",minC,maxC),TList::Class(),AliAnalysisManager::kOutputContainer,outputfile.Data()); | |
152 | ||
153 | AliAnalysisDataContainer *coutputDStar2 = mgr->CreateContainer(Form("DStarPID%d%d",minC,maxC),TList::Class(),AliAnalysisManager::kOutputContainer, outputfile.Data()); | |
154 | ||
155 | AliAnalysisDataContainer *coutputDStar3 = mgr->CreateContainer(Form("cuts%d%d",minC,maxC),AliRDHFCutsDStartoKpipi::Class(),AliAnalysisManager::kOutputContainer, outputfile.Data()); //cuts | |
156 | ||
157 | AliAnalysisDataContainer *coutputDstarNorm = mgr->CreateContainer(Form("coutputDstarNorm%d%d",minC,maxC),AliNormalizationCounter::Class(),AliAnalysisManager::kOutputContainer, outputfile.Data()); | |
158 | ||
159 | ||
160 | ||
161 | mgr->ConnectInput(task,0,mgr->GetCommonInputContainer()); | |
162 | ||
163 | mgr->ConnectOutput(task,1,coutput1); | |
164 | ||
165 | mgr->ConnectOutput(task,2,coutputDStar1); | |
166 | ||
167 | mgr->ConnectOutput(task,3,coutputDStar2); | |
168 | ||
169 | mgr->ConnectOutput(task,4,coutputDStar3); | |
170 | ||
171 | mgr->ConnectOutput(task,5,coutputDstarNorm); | |
172 | ||
173 | ||
174 | ||
175 | return task; | |
176 | ||
177 | } | |
178 | ||
179 | ||
180 |