]>
Commit | Line | Data |
---|---|---|
5c77d274 | 1 | void AddTaskPWG4HighPtTrackQAAll(char *prodType = "LHC10h",Bool_t isPbPb=kTRUE, Int_t iAODanalysis = 0) |
2 | { | |
c3ff0a6e | 3 | |
5c77d274 | 4 | int cent = 10; |
5 | ||
6 | AliPWG4HighPtTrackQA *taskTrackQA00cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,0); | |
5a0bd31f | 7 | AliPWG4HighPtTrackQA *taskTrackQA01cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,1); |
b43ea0be | 8 | // AliPWG4HighPtTrackQA *taskTrackQA02cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,2); |
380cff49 | 9 | // AliPWG4HighPtTrackQA *taskTrackQA10cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,1,0); |
10 | // AliPWG4HighPtTrackQA *taskTrackQA11cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,1,1); | |
5a0bd31f | 11 | // AliPWG4HighPtTrackQA *taskTrackQA20cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,2,0); |
12 | // AliPWG4HighPtTrackQA *taskTrackQA21cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,2,1); | |
d889ce29 | 13 | // AliPWG4HighPtTrackQA *taskTrackQA40cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,4,0); |
327d12da | 14 | // AliPWG4HighPtTrackQA *taskTrackQA41cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,4,1); |
15 | // AliPWG4HighPtTrackQA *taskTrackQA50cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,5,0); | |
16 | // AliPWG4HighPtTrackQA *taskTrackQA60cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,6,0); | |
380cff49 | 17 | AliPWG4HighPtTrackQA *taskTrackQA70cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,0); |
18 | AliPWG4HighPtTrackQA *taskTrackQA71cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,1); | |
b43ea0be | 19 | AliPWG4HighPtTrackQA *taskTrackQA72cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,2); |
dbf52bac | 20 | |
5c77d274 | 21 | if(isPbPb) { |
22 | for(cent=0; cent<4; cent++) { | |
23 | AliPWG4HighPtTrackQA *taskTrackQA00 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,0); | |
5a0bd31f | 24 | AliPWG4HighPtTrackQA *taskTrackQA01 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,1); |
b43ea0be | 25 | // AliPWG4HighPtTrackQA *taskTrackQA02 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,2); |
380cff49 | 26 | // AliPWG4HighPtTrackQA *taskTrackQA10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,1,0); |
27 | // AliPWG4HighPtTrackQA *taskTrackQA11 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,1,1); | |
5a0bd31f | 28 | // AliPWG4HighPtTrackQA *taskTrackQA20 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,2,0); |
29 | // AliPWG4HighPtTrackQA *taskTrackQA21 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,2,1); | |
d889ce29 | 30 | // AliPWG4HighPtTrackQA *taskTrackQA40 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,4,0); |
327d12da | 31 | // AliPWG4HighPtTrackQA *taskTrackQA41 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,4,1); |
32 | // AliPWG4HighPtTrackQA *taskTrackQA50 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,5,0); | |
33 | // AliPWG4HighPtTrackQA *taskTrackQA60 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,6,0); | |
380cff49 | 34 | AliPWG4HighPtTrackQA *taskTrackQA70 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,0); |
35 | AliPWG4HighPtTrackQA *taskTrackQA71 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,1); | |
b43ea0be | 36 | AliPWG4HighPtTrackQA *taskTrackQA72 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,2); |
5c77d274 | 37 | } |
38 | } | |
39 | ||
40 | } | |
41 | ||
a5e0d236 | 42 | void AddTaskPWG4HighPtTrackQAAll2011(char *prodType = "LHC10h",Bool_t isPbPb=kTRUE, Int_t iAODanalysis = 0) |
43 | { | |
44 | ||
45 | Int_t cent = 10; | |
46 | UInt_t iPhysicsSelectionFlag = AliVEvent::kMB; | |
47 | UInt_t iPhysicsSelectionFlagCentral = AliVEvent::kCentral; | |
48 | UInt_t iPhysicsSelectionFlagSemiCentral = AliVEvent::kSemiCentral; | |
49 | ||
50 | ||
51 | AliPWG4HighPtTrackQA *taskTrackQA00cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,0,iPhysicsSelectionFlag); | |
52 | AliPWG4HighPtTrackQA *taskTrackQA01cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,1,iPhysicsSelectionFlag); | |
53 | AliPWG4HighPtTrackQA *taskTrackQA70cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,0,iPhysicsSelectionFlag); | |
54 | AliPWG4HighPtTrackQA *taskTrackQA71cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,1,iPhysicsSelectionFlag); | |
55 | AliPWG4HighPtTrackQA *taskTrackQA72cent10 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,2,iPhysicsSelectionFlag); | |
56 | ||
57 | if(isPbPb) { | |
58 | for(cent=0; cent<4; cent++) { | |
59 | AliPWG4HighPtTrackQA *taskTrackQA00 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,0,iPhysicsSelectionFlag); | |
60 | AliPWG4HighPtTrackQA *taskTrackQA01 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,1,iPhysicsSelectionFlag); | |
61 | AliPWG4HighPtTrackQA *taskTrackQA70 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,0,iPhysicsSelectionFlag); | |
62 | AliPWG4HighPtTrackQA *taskTrackQA71 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,1,iPhysicsSelectionFlag); | |
63 | AliPWG4HighPtTrackQA *taskTrackQA72 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,2,iPhysicsSelectionFlag); | |
64 | ||
65 | if(cent==0) { | |
66 | AliPWG4HighPtTrackQA *taskTrackQA00 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,0,iPhysicsSelectionFlagCentral); | |
67 | AliPWG4HighPtTrackQA *taskTrackQA01 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,1,iPhysicsSelectionFlagCentral); | |
68 | AliPWG4HighPtTrackQA *taskTrackQA70 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,0,iPhysicsSelectionFlagCentral); | |
69 | AliPWG4HighPtTrackQA *taskTrackQA71 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,1,iPhysicsSelectionFlagCentral); | |
70 | AliPWG4HighPtTrackQA *taskTrackQA72 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,2,iPhysicsSelectionFlagCentral); | |
71 | } | |
72 | else { | |
73 | AliPWG4HighPtTrackQA *taskTrackQA00 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,0,iPhysicsSelectionFlagSemiCentral); | |
74 | AliPWG4HighPtTrackQA *taskTrackQA01 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,1,iPhysicsSelectionFlagSemiCentral); | |
75 | AliPWG4HighPtTrackQA *taskTrackQA70 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,0,iPhysicsSelectionFlagSemiCentral); | |
76 | AliPWG4HighPtTrackQA *taskTrackQA71 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,1,iPhysicsSelectionFlagSemiCentral); | |
77 | AliPWG4HighPtTrackQA *taskTrackQA72 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,2,iPhysicsSelectionFlagSemiCentral); | |
78 | } | |
79 | ||
80 | } | |
81 | } | |
82 | ||
83 | } | |
84 | ||
eb1739b7 | 85 | void AddTaskPWG4HighPtTrackQAAllReduced(char *prodType = "LHC10h",Bool_t isPbPb=kTRUE, Int_t iAODanalysis = 0) |
b1041e3b | 86 | { |
87 | ||
88 | int cent = 10; | |
89 | ||
90 | if(isPbPb) { | |
91 | for(cent=0; cent<4; cent++) { | |
92 | AliPWG4HighPtTrackQA *taskTrackQA00 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,0); | |
93 | AliPWG4HighPtTrackQA *taskTrackQA01 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,1); | |
380cff49 | 94 | AliPWG4HighPtTrackQA *taskTrackQA70 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,0); |
95 | AliPWG4HighPtTrackQA *taskTrackQA71 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,1); | |
b43ea0be | 96 | AliPWG4HighPtTrackQA *taskTrackQA72 = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,2); |
b1041e3b | 97 | } |
98 | } | |
99 | ||
100 | } | |
101 | ||
a5e0d236 | 102 | void AddTaskPWG4HighPtTrackQAAllReduced2011(char *prodType = "LHC10h",Bool_t isPbPb=kTRUE, Int_t iAODanalysis = 0) |
103 | { | |
104 | ||
105 | int cent = 10; | |
106 | ||
107 | UInt_t iPhysicsSelectionFlagCentral = AliVEvent::kCentral; | |
108 | UInt_t iPhysicsSelectionFlagSemiCentral = AliVEvent::kSemiCentral; | |
109 | ||
110 | AliPWG4HighPtTrackQA *taskTrackQA00C = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,0,iPhysicsSelectionFlagCentral); | |
111 | AliPWG4HighPtTrackQA *taskTrackQA01C = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,1,iPhysicsSelectionFlagCentral); | |
112 | AliPWG4HighPtTrackQA *taskTrackQA21C = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,2,1,iPhysicsSelectionFlagCentral); | |
113 | AliPWG4HighPtTrackQA *taskTrackQA70C = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,0,iPhysicsSelectionFlagCentral); | |
114 | AliPWG4HighPtTrackQA *taskTrackQA71C = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,1,iPhysicsSelectionFlagCentral); | |
115 | AliPWG4HighPtTrackQA *taskTrackQA72C = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,2,iPhysicsSelectionFlagCentral); | |
116 | ||
117 | AliPWG4HighPtTrackQA *taskTrackQA00SC = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,0,iPhysicsSelectionFlagSemiCentral); | |
118 | AliPWG4HighPtTrackQA *taskTrackQA01SC = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,0,1,iPhysicsSelectionFlagSemiCentral); | |
119 | AliPWG4HighPtTrackQA *taskTrackQA21SC = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,2,1,iPhysicsSelectionFlagSemiCentral); | |
120 | AliPWG4HighPtTrackQA *taskTrackQA70SC = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,0,iPhysicsSelectionFlagSemiCentral); | |
121 | AliPWG4HighPtTrackQA *taskTrackQA71SC = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,1,iPhysicsSelectionFlagSemiCentral); | |
122 | AliPWG4HighPtTrackQA *taskTrackQA72SC = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,cent,7,2,iPhysicsSelectionFlagSemiCentral); | |
123 | ||
124 | } | |
125 | ||
126 | ||
127 | void AddTaskPWG4HighPtTrackQAAOD(char *prodType = "LHC10h",Bool_t isPbPb=kTRUE, Int_t iAODanalysis = 1, Int_t filterBit = 272) | |
c3ff0a6e | 128 | { |
129 | AliPWG4HighPtTrackQA *taskTrackQA = AddTaskPWG4HighPtTrackQA(prodType,isPbPb,iAODanalysis,0,0,0); | |
130 | taskTrackQA->SetFilterMask(filterBit); | |
131 | } | |
132 | ||
a5e0d236 | 133 | AliPWG4HighPtTrackQA* AddTaskPWG4HighPtTrackQA(char *prodType = "LHC10e14",Bool_t isPbPb=kTRUE,Int_t iAODanalysis = 0, Int_t centClass = 0, Int_t trackType = 0, Int_t cuts = 0, UInt_t iPhysicsSelectionFlag = AliVEvent::kMB) |
5c77d274 | 134 | { |
135 | /* | |
136 | trackType: 0 = global | |
137 | 1 = TPC stand alone | |
138 | 2 = TPC stand alone constrained to SPD vertex | |
aa3ba8d2 | 139 | 4 = TPC stand alone constrained to SPD vertex with QA track selection on global tracks |
dbf52bac | 140 | 5 = Hybrid tracks: constrained TPConly for which no tight ITS is available |
141 | 6 = Hybrid tracks: constrained loose global for which no tight ITS is available | |
5a0bd31f | 142 | cuts: 0 (global) = standard ITSTPC2010 a la RAA analysis |
143 | 1 (global) = ITSrefit, no SPD requirements -> standard for jet analysis | |
144 | 2 (global) = ITSrefit + no hits in SPD | |
145 | 3 (global) = standard ITS tight cuts with nCrossed rows cut for hybrid tracks | |
5c77d274 | 146 | 0 (TPC) = standard TPC + NClusters>70 |
147 | 1 (TPC) = standard TPC + NClusters>0 --> to study new TPC QA recommendations | |
dbf52bac | 148 | 0 (hybrid 5) = constrained TPConly for which no tight ITS is available |
149 | 0 (hybrid 6) = constrained loose global for which no tight ITS is available | |
5c77d274 | 150 | */ |
151 | ||
380cff49 | 152 | //Load common track cut class |
153 | gROOT->LoadMacro("$ALICE_ROOT/PWG4/macros/CreateTrackCutsPWG4.C"); | |
154 | ||
5c77d274 | 155 | // Creates HighPtTrackQA analysis task and adds it to the analysis manager. |
156 | ||
157 | // A. Get the pointer to the existing analysis manager via the static access method. | |
158 | //============================================================================== | |
159 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); | |
160 | if (!mgr) { | |
161 | Error("AddTaskPWG4HighPtQMC", "No analysis manager to connect to."); | |
162 | return NULL; | |
163 | } | |
164 | ||
165 | // B. Check the analysis type using the event handlers connected to the analysis | |
166 | // manager. The availability of MC handler can also be checked here. | |
167 | //============================================================================== | |
168 | if (!mgr->GetInputEventHandler()) { | |
169 | ::Error("AddPWG4TaskHighPtTrackQA", "This task requires an input event handler"); | |
170 | return NULL; | |
171 | } | |
172 | ||
173 | // C. Create the task, add it to manager. | |
174 | //=========================================================================== | |
175 | ||
176 | //CREATE THE CUTS ----------------------------------------------- | |
177 | //Use AliESDtrackCuts | |
178 | AliESDtrackCuts *trackCuts = new AliESDtrackCuts("AliESDtrackCuts","Standard Cuts"); | |
b43ea0be | 179 | AliESDtrackCuts *trackCutsReject = 0x0; |
dbf52bac | 180 | AliESDtrackCuts *trackCutsTPConly = new AliESDtrackCuts("AliESDtrackCutsTPConly","TPC only Cuts"); |
181 | ||
5c77d274 | 182 | //Standard Cuts |
183 | //Set track cuts for global tracks | |
184 | if(trackType==0 && cuts==0) { | |
380cff49 | 185 | // tight global tracks - RAA analysis |
186 | trackCuts = CreateTrackCutsPWG4(1000); | |
5c77d274 | 187 | } |
188 | if(trackType==0 && cuts==1) { | |
380cff49 | 189 | //Cuts global tracks with ITSrefit requirement and SPDrequirement for jet analysis |
46a305f3 | 190 | trackCuts = CreateTrackCutsPWG4(10001006); |
5c77d274 | 191 | } |
192 | if(trackType==0 && cuts==2) { | |
5a0bd31f | 193 | //Cuts global tracks with ITSrefit requirement but without SPD |
46a305f3 | 194 | trackCuts = CreateTrackCutsPWG4(10011006); |
380cff49 | 195 | } |
196 | if(trackType==7 && cuts==0) { | |
197 | // tight global tracks | |
46a305f3 | 198 | trackCuts = CreateTrackCutsPWG4(10041006); |
199 | trackCutsReject = CreateTrackCutsPWG4(1006); | |
b43ea0be | 200 | trackCutsReject->SetEtaRange(-0.9,0.9); |
201 | trackCutsReject->SetPtRange(0.15, 1e10); | |
5c77d274 | 202 | } |
380cff49 | 203 | if(trackType==7 && cuts==1) { |
dbf52bac | 204 | // tight global tracks |
46a305f3 | 205 | trackCuts = CreateTrackCutsPWG4(10011006); |
b43ea0be | 206 | } |
207 | if(trackType==7 && cuts==2) { | |
208 | // no requirements on SPD and ITSrefit failed | |
46a305f3 | 209 | trackCuts = CreateTrackCutsPWG4(10041006); //no ITSrefit requirement filter 256 |
210 | trackCutsReject = CreateTrackCutsPWG4(10001006); //ITSrefit requirement filter 16 | |
b43ea0be | 211 | trackCutsReject->SetEtaRange(-0.9,0.9); |
212 | trackCutsReject->SetPtRange(0.15, 1e10); | |
dbf52bac | 213 | } |
214 | ||
5c77d274 | 215 | if(trackType==1 && cuts==0) { |
216 | //Set track cuts for TPConly tracks | |
380cff49 | 217 | trackCuts = CreateTrackCutsPWG4(2001); |
5c77d274 | 218 | } |
219 | if(trackType==1 && cuts==1) { | |
220 | //Set track cuts for TPConly tracks | |
380cff49 | 221 | trackCuts = CreateTrackCutsPWG4(10032001); |
5c77d274 | 222 | } |
223 | ||
224 | if(trackType==2 && cuts==0) { | |
225 | // Set track cuts for TPConly constrained tracks | |
380cff49 | 226 | trackCuts = CreateTrackCutsPWG4(2001); |
5c77d274 | 227 | } |
228 | if(trackType==2 && cuts==1) { | |
229 | //Set track cuts for TPConly constrained tracks | |
380cff49 | 230 | trackCuts = CreateTrackCutsPWG4(10032001); |
5c77d274 | 231 | } |
aa3ba8d2 | 232 | |
233 | if(trackType==4 && cuts==0) { | |
234 | // Set track cuts for TPConly constrained tracks | |
380cff49 | 235 | trackCuts = CreateTrackCutsPWG4(2001); |
aa3ba8d2 | 236 | } |
237 | if(trackType==4 && cuts==1) { | |
238 | // Set track cuts for TPConly constrained tracks | |
380cff49 | 239 | trackCuts = CreateTrackCutsPWG4(10032001); |
aa3ba8d2 | 240 | } |
dbf52bac | 241 | if(trackType==5 || trackType==6) { |
242 | // tight global tracks | |
380cff49 | 243 | trackCuts = CreateTrackCutsPWG4(1003); |
244 | ||
b43ea0be | 245 | trackCutsReject = CreateTrackCutsPWG4(10021003); |
380cff49 | 246 | |
247 | trackCutsTPConly = CreateTrackCutsPWG4(2002); | |
248 | ||
b43ea0be | 249 | trackCutsReject->SetEtaRange(-0.9,0.9); |
250 | trackCutsReject->SetPtRange(0.15, 1e10); | |
380cff49 | 251 | |
252 | trackCutsTPConly->SetEtaRange(-0.9,0.9); | |
253 | trackCutsTPConly->SetPtRange(0.15, 1e10); | |
254 | ||
dbf52bac | 255 | } |
aa3ba8d2 | 256 | |
5c77d274 | 257 | trackCuts->SetEtaRange(-0.9,0.9); |
258 | trackCuts->SetPtRange(0.15, 1e10); | |
259 | ||
260 | ||
261 | ||
262 | //Create the task | |
a5e0d236 | 263 | AliPWG4HighPtTrackQA *taskPWG4TrackQA = new AliPWG4HighPtTrackQA(Form("AliPWG4HighPtTrackQACent%dTrack%dCuts%dPSF%d",centClass,trackType,cuts,iPhysicsSelectionFlag)); |
5c77d274 | 264 | taskPWG4TrackQA->SetTrackType(trackType); |
dbf52bac | 265 | taskPWG4TrackQA->SetCuts(trackCuts); |
05a4d396 | 266 | taskPWG4TrackQA->SetCutsITSLoose(trackCutsReject); |
dbf52bac | 267 | taskPWG4TrackQA->SetCutsTPConly(trackCutsTPConly); |
5c77d274 | 268 | |
269 | taskPWG4TrackQA->SetPtMax(100.); | |
270 | ||
271 | if(iAODanalysis) | |
272 | taskPWG4TrackQA->SetDataType(AliPWG4HighPtTrackQA::kAOD); | |
273 | else | |
274 | taskPWG4TrackQA->SetDataType(AliPWG4HighPtTrackQA::kESD); | |
275 | ||
276 | if(isPbPb) { | |
277 | taskPWG4TrackQA->SetIsPbPb(kTRUE); | |
278 | taskPWG4TrackQA->SetCentralityClass(centClass); | |
279 | } | |
aa3ba8d2 | 280 | // taskPWG4TrackQA->SetSigmaConstrainedMax(5.); |
5c77d274 | 281 | |
a5e0d236 | 282 | taskPWG4TrackQA->SelectCollisionCandidates(iPhysicsSelectionFlag); |
5c77d274 | 283 | |
284 | ||
285 | // E. Create ONLY the output containers for the data produced by the task. | |
286 | // Get and connect other common input/output containers via the manager as below | |
287 | //============================================================================== | |
5c77d274 | 288 | TString outputfile = AliAnalysisManager::GetCommonFileName(); |
a5e0d236 | 289 | if(iPhysicsSelectionFlag == AliVEvent::kMB) |
290 | outputfile += Form(":PWG4_HighPtTrackQACent%dTrackType%dCuts%d",centClass,trackType,cuts); | |
291 | else if(iPhysicsSelectionFlag == AliVEvent::kCentral) | |
292 | outputfile += Form(":PWG4_HighPtTrackQACent%dTrackType%dCuts%dkCentral",centClass,trackType,cuts); | |
293 | else if(iPhysicsSelectionFlag == AliVEvent::kSemiCentral) | |
294 | outputfile += Form(":PWG4_HighPtTrackQACent%dTrackType%dCuts%dkSemiCentral",centClass,trackType,cuts); | |
295 | ||
296 | AliAnalysisDataContainer *cout_histQAtrack = 0x0; | |
297 | if(iPhysicsSelectionFlag == AliVEvent::kMB) | |
298 | cout_histQAtrack = mgr->CreateContainer(Form("qa_histsQAtrackCent%dType%dcuts%d",centClass,trackType,cuts), TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); | |
299 | else if(iPhysicsSelectionFlag == AliVEvent::kCentral) | |
300 | cout_histQAtrack = mgr->CreateContainer(Form("qa_histsQAtrackCent%dType%dcuts%dkCentral",centClass,trackType,cuts), TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); | |
301 | else if(iPhysicsSelectionFlag == AliVEvent::kSemiCentral) | |
302 | cout_histQAtrack = mgr->CreateContainer(Form("qa_histsQAtrackCent%dType%dcuts%dkSemiCentral",centClass,trackType,cuts), TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); | |
5c77d274 | 303 | |
304 | mgr->AddTask(taskPWG4TrackQA); | |
305 | mgr->ConnectInput(taskPWG4TrackQA,0,mgr->GetCommonInputContainer()); | |
306 | mgr->ConnectOutput(taskPWG4TrackQA,1,cout_histQAtrack); | |
307 | ||
308 | // Return task pointer at the end | |
309 | return taskPWG4TrackQA; | |
310 | } |