TENDER becomes Tender
[u/mrichter/AliRoot.git] / PWGPP / TPC / macros / MakeResults.C
CommitLineData
78c8a9b8 1// Macro to make final QA spectra from information stored
2// in QA performance objects. It is done in 2 steps:
3// 1. Merging TPC QA performance train output
4// 2. Analyse generic histograms to make final QA spectra
5//
6//
7// One can merge all performance objects stored in the
8// output files or one of them:
9//
10// ALL - all components only for simulaltion
11// NO_MC - all components only for realdata
12// RES (At DCA, at InnerTPC, at outerTPC)
13// EFF
14// DEDX
15// DCA
16// TPC
17// Match (TPC+ITS, TPC+TRD, TPC Eff wrt ITS)
18//
19// It is recommeneded to merge particular components
20// for a big statistcs due to too big size of the output. For small
21// dedicated productions (e.g. flat-p) all components can be merged at once.
22//
23//void MergeOutput(const char* filename = "list.txt", const char* comp = "ALL", Int_t max=2);
24//void MakeFinalSpectra(const char* filename = "merged.root", const char* comp = "ALL");
25void MergeOutput(const char* filename, const char* comp, Int_t max);
26//void MakeFinalSpectra(const char* filename, const char* comp);
27void MakeFinalSpectra(const char* comp);
28
64becaf6 29void MakeResults(const char* filename = "parf.list", const char* comp = "NO_MC", Int_t max=-1)
78c8a9b8 30{
64becaf6 31 gStyle->SetPalette(1);
32 gStyle->SetNumberContours(50);
33
34 gSystem->Load("libANALYSIS");
35 gSystem->Load("libANALYSISalice");
af472fff 36 gSystem->Load("libTender");
64becaf6 37
38 gSystem->Load("libTPCcalib.so");
2bfe5463 39 gSystem->Load("libPWGPP");
64becaf6 40
78c8a9b8 41 // Merge performance objects
42 MergeOutput(filename, comp, max);
43
44 // Make final spectra
45 MakeFinalSpectra(comp);
46}
47
48
49void MergeOutput(const char* filename, const char* comp, Int_t max)
50{
51 //
52 if(!filename)
53 {
54 printf("ERROR file %s does not exist \n",filename);
55 return;
56 }
57
58 // Performance object
59 TString str(comp);
60
61 // Create new collections
62 TList *collTPC = new TList;
63 TList *collRes = new TList;
64 TList *collResTPCInner = new TList;
65 TList *collResTPCOuter = new TList;
66 TList *collEff = new TList;
67 TList *colldEdxTPCInner = new TList;
68 TList *collDCA = new TList;
69 TList *collMatchTPCITS = new TList;
70 TList *collMatchTPCTRD = new TList;
71 TList *collMatchTPCEFF = new TList;
72
73 // Open the input stream
74 ifstream in;
75 in.open(filename);
76
77 // Read the input list of files and add them to the chain
78 TString perfile;
79 Int_t counter=0;
80 while(!in.eof()) {
81 in >> perfile;
82 if (!perfile.Contains("root")) continue; // protection
83 counter++;
84 if(max>0 && counter>max) break;
85 printf("%s \n",perfile.Data());
86 TFile::Open(perfile.Data());
87 gFile->cd();
88 TList *coutput = gFile->Get("TPC");
89
90 if(str.CompareTo("NO_MC")==0) {
91 collTPC->Add(coutput->FindObject("AliPerformanceTPC"));
92 colldEdxTPCInner->Add(coutput->FindObject("AliPerformanceDEdxTPCInner"));
93 collDCA->Add(coutput->FindObject("AliPerformanceDCA"));
94 collMatchTPCITS->Add(coutput->FindObject("AliPerformanceMatchTPCITS"));
95 collMatchTPCTRD->Add(coutput->FindObject("AliPerformanceMatchTPCTRD"));
96 collMatchTPCEFF->Add(coutput->FindObject("AliPerformanceMatchTPCEFF"));
97 }
98
99 if(str.CompareTo("ALL")==0) {
100 collTPC->Add(coutput->FindObject("AliPerformanceTPC"));
101 collRes->Add(coutput->FindObject("AliPerformanceRes"));
102 collResTPCInner->Add(coutput->FindObject("AliPerformanceResTPCInner"));
103 collResTPCOuter->Add(coutput->FindObject("AliPerformanceResTPCOuter"));
104 collEff->Add(coutput->FindObject("AliPerformanceEff"));
105 colldEdxTPCInner->Add(coutput->FindObject("AliPerformanceDEdxTPCInner"));
106 collDCA->Add(coutput->FindObject("AliPerformanceDCA"));
107 collMatchTPCITS->Add(coutput->FindObject("AliPerformanceMatchTPCITS"));
108 collMatchTPCTRD->Add(coutput->FindObject("AliPerformanceMatchTPCTRD"));
109 collMatchTPCEFF->Add(coutput->FindObject("AliPerformanceMatchTPCEFF"));
110 }
111 else if(str.CompareTo("TPC")==0) {
112 collTPC->Add(coutput->FindObject("AliPerformanceTPC"));
113 }
114 else if(str.CompareTo("RES")==0) {
115 collRes->Add(coutput->FindObject("AliPerformanceRes"));
116 collResTPCInner->Add(coutput->FindObject("AliPerformanceResTPCInner"));
117 collResTPCOuter->Add(coutput->FindObject("AliPerformanceResTPCOuter"));
118 }
119 else if(str.CompareTo("EFF")==0) {
120 collEff->Add(coutput->FindObject("AliPerformanceEff"));
121 }
122 else if(str.CompareTo("DEDX")==0) {
123 colldEdxTPCInner->Add(coutput->FindObject("AliPerformanceDEdxTPCInner"));
124 }
125 else if(str.CompareTo("DCA")==0) {
126 collDCA->Add(coutput->FindObject("AliPerformanceDCA"));
127 }
128 else if(str.CompareTo("MATCH")==0) {
129 collMatchTPCITS->Add(coutput->FindObject("AliPerformanceMatchTPCITS"));
130 collMatchTPCTRD->Add(coutput->FindObject("AliPerformanceMatchTPCTRD"));
131 collMatchTPCEFF->Add(coutput->FindObject("AliPerformanceMatchTPCEFF"));
132 }
133 else {
134 continue;
135 }
136 }
137 in.close();
138
139 //
140 AliPerformanceTPC *tpc = new AliPerformanceTPC("AliPerformanceTPC","AliPerformanceTPC",0,kFALSE);
141 AliPerformanceRes *res = new AliPerformanceRes("AliPerformanceRes","res",0,kFALSE);
142 AliPerformanceRes *resTPCInner = new AliPerformanceRes("AliPerformanceResTPCInner","AliPerformanceResTPCInner",3,kFALSE);
143 AliPerformanceRes *resTPCOuter = new AliPerformanceRes("AliPerformanceResTPCOuter","AliPerformanceResTPCOuter",4,kFALSE);
144 AliPerformanceEff *eff = new AliPerformanceEff("AliPerformanceEff","AliPerformanceEff",0,kFALSE);
145 AliPerformanceDEdx *dedx = new AliPerformanceDEdx("AliPerformanceDEdxTPCInner","AliPerformanceDEdxTPCInner",3,kFALSE);
146 AliPerformanceDCA *dca = new AliPerformanceDCA("AliPerformanceDCA","AliPerformanceDCA",0,kFALSE);
147 AliPerformanceMatch *matchTPCITS = new AliPerformanceMatch("AliPerformanceMatchTPCITS","AliPerformanceTPCITS",0,kFALSE);
148 AliPerformanceMatch *matchTPCTRD = new AliPerformanceMatch("AliPerformanceMatchTPCTRD","AliPerformanceTPCTRD",1,kFALSE);
149 AliPerformanceMatch *matchTPCEFF = new AliPerformanceMatch("AliPerformanceMatchTPCEFF","AliPerformanceTPCEFF",2,kFALSE);
150
151 // Create output list
152 TFolder *outList = new TFolder();
153 outList->SetOwner();
154 outList->SetName("coutput");
155
156 // merge objects and add to the list
157 if(!str.CompareTo("ALL")) {
158 tpc->Merge(collTPC);
159 outList->Add(tpc);
160 res->Merge(collRes);
161 outList->Add(res);
162 resTPCInner->Merge(collResTPCInner);
163 outList->Add(resTPCInner);
164 resTPCOuter->Merge(collResTPCOuter);
165 outList->Add(resTPCOuter);
166 eff->Merge(collEff);
167 outList->Add(eff);
168 dedx->Merge(colldEdxTPCInner);
169 outList->Add(dedx);
170 dca->Merge(collDCA);
171 outList->Add(dca);
172 matchTPCITS->Merge(collMatchTPCITS);
173 outList->Add(matchTPCITS);
174 matchTPCTRD->Merge(collMatchTPCTRD);
175 outList->Add(matchTPCTRD);
176 matchTPCEFF->Merge(collMatchTPCEFF);
177 outList->Add(matchTPCEFF);
178 }
179 else if(!str.CompareTo("NO_MC")) {
180 tpc->Merge(collTPC);
181 outList->Add(tpc);
182 dedx->Merge(colldEdxTPCInner);
183 outList->Add(dedx);
184 dca->Merge(collDCA);
185 outList->Add(dca);
186 matchTPCITS->Merge(collMatchTPCITS);
187 outList->Add(matchTPCITS);
188 matchTPCTRD->Merge(collMatchTPCTRD);
189 outList->Add(matchTPCTRD);
190 matchTPCEFF->Merge(collMatchTPCEFF);
191 outList->Add(matchTPCEFF);
192 }
193 else if(!str.CompareTo("TPC")) {
194 tpc->Merge(collTPC);
195 outList->Add(tpc);
196 }
197 else if(!str.CompareTo("RES")) {
198 res->Merge(collRes);
199 outList->Add(res);
200 resTPCInner->Merge(collResTPCInner);
201 outList->Add(resTPCInner);
202 resTPCOuter->Merge(collResTPCOuter);
203 outList->Add(resTPCOuter);
204 }
205 else if(!str.CompareTo("EFF")) {
206 eff->Merge(collEff);
207 outList->Add(eff);
208 }
209 else if(!str.CompareTo("DEDX")) {
210 dedx->Merge(colldEdxTPCInner);
211 outList->Add(dedx);
212 }
213 else if(!str.CompareTo("DCA")) {
214 dca->Merge(collDCA);
215 outList->Add(dca);
216 }
217 else if(!str.CompareTo("MATCH")) {
218 matchTPCITS->Merge(collMatchTPCITS);
219 outList->Add(matchTPCITS);
220 matchTPCTRD->Merge(collMatchTPCTRD);
221 outList->Add(matchTPCTRD);
222 matchTPCEFF->Merge(collMatchTPCEFF);
223 outList->Add(matchTPCEFF);
224 }
225
226 //
227
228 TFile *outFile = new TFile( Form("TPC.Performance.Merged.%s.root",comp),"recreate");
229 outFile->cd();
230 outList->Write();
231 outFile->Close();
232}
233
234void MakeFinalSpectra(const char* comp)
235{
236 // open proper input file
237 TFile *inFile = TFile::Open(Form("TPC.Performance.Merged.%s.root",comp));
238 inFile->cd();
239
240 // Performance object
241 TString str(comp);
242
243 if(str.CompareTo("ALL") == 0)
244 {
245 AliPerformanceTPC * compObjTPC = (AliPerformanceTPC*)coutput->FindObject("AliPerformanceTPC");
246 compObjTPC->Analyse();
247 compObjTPC->GetAnalysisFolder()->ls("*");
248 compObjTPC->PrintHisto(kTRUE,"PerformanceTPCQA.ps");
249 TFile fout("PerformanceTPCQA.root","recreate");
250 compObjTPC->GetAnalysisFolder()->Write();
251 fout.Close();
252
253 inFile->cd();
254 AliPerformanceEff * compObjEff = (AliPerformanceEff*)coutput->FindObject("AliPerformanceEff");
255 compObjEff->Analyse();
256 compObjEff->GetAnalysisFolder()->ls("*");
257 compObjEff->PrintHisto(kTRUE,"PerformanceEffQA.ps");
258 TFile fout("PerformanceEffQA.root","recreate");
259 compObjEff->GetAnalysisFolder()->Write();
260 fout.Close();
261
262 inFile->cd();
263 AliPerformanceDCA * compObjDCA = (AliPerformanceDCA*)coutput->FindObject("AliPerformanceDCA");
264 compObjDCA->Analyse();
265 compObjDCA->GetAnalysisFolder()->ls("*");
266 compObjDCA->PrintHisto(kTRUE,"PerformanceDCAQA.ps");
267 TFile fout("PerformanceDCAQA.root","recreate");
268 compObjDCA->GetAnalysisFolder()->Write();
269 fout.Close();
270
271 inFile->cd();
272 AliPerformanceRes * compObjRes = (AliPerformanceRes*)coutput->FindObject("AliPerformanceRes");
273 compObjRes->Analyse();
274 compObjRes->GetAnalysisFolder()->ls("*");
275 compObjRes->PrintHisto(kTRUE,"PerformanceResQA.ps");
276 TFile fout("PerformanceResQA.root","recreate");
277 compObjRes->GetAnalysisFolder()->Write();
278 fout.Close();
279
280 inFile->cd();
281 AliPerformanceRes * compObjRes = (AliPerformanceRes*)coutput->FindObject("AliPerformanceResTPCInner");
282 compObjRes->Analyse();
283 compObjRes->GetAnalysisFolder()->ls("*");
284 compObjRes->PrintHisto(kTRUE,"PerformanceResTPCInnerQA.ps");
285 TFile fout("PerformanceResTPCInnerQA.root","recreate");
286 compObjRes->GetAnalysisFolder()->Write();
287 fout.Close();
288
289 inFile->cd();
290 AliPerformanceRes * compObjRes = (AliPerformanceRes*)coutput->FindObject("AliPerformanceResTPCOuter");
291 compObjRes->Analyse();
292 compObjRes->GetAnalysisFolder()->ls("*");
293 compObjRes->PrintHisto(kTRUE,"PerformanceResTPCOuterQA.ps");
294 TFile fout("PerformanceResTPCOuterQA.root","recreate");
295 compObjRes->GetAnalysisFolder()->Write();
296 fout.Close();
297
298 inFile->cd();
299 AliPerformanceDEdx* compObjDEdx = (AliPerformanceDEdx*)coutput->FindObject("AliPerformanceDEdxTPCInner");
300 compObjDEdx->Analyse();
301 compObjDEdx->GetAnalysisFolder()->ls("*");
302 compObjDEdx->PrintHisto(kTRUE,"PerformanceDEdxTPCInnerQA.ps");
303 TFile fout("PerformanceDEdxTPCInnerQA.root","recreate");
304 compObjDEdx->GetAnalysisFolder()->Write();
305 fout.Close();
306
307 inFile->cd();
308 AliPerformanceMatch * compObjMatchTPCITS = (AliPerformanceMatch*)coutput->FindObject("AliPerformanceMatchTPCITS");
309 compObjMatchTPCITS->Analyse();
310 compObjMatchTPCITS->GetAnalysisFolder()->ls("*");
311 compObjMatchTPCITS->PrintHisto(kTRUE,"PerformanceMatchTPCITSQA.ps");
312 TFile fout("PerformanceMatchTPCITSQA.root","recreate");
313 compObjMatchTPCITS->GetAnalysisFolder()->Write();
314 fout.Close();
315
316 inFile->cd();
317 AliPerformanceMatch * compObjMatchTPCTRD = (AliPerformanceMatch*)coutput->FindObject("AliPerformanceMatchTPCTRD");
318 compObjMatchTPCTRD->Analyse();
319 compObjMatchTPCTRD->GetAnalysisFolder()->ls("*");
320 compObjMatchTPCTRD->PrintHisto(kTRUE,"PerformanceMatchTPCTRDQA.ps");
321 TFile fout("PerformanceMatchTPCTRDQA.root","recreate");
322 compObjMatchTPCTRD->GetAnalysisFolder()->Write();
323 fout.Close();
324
325inFile->cd();
326 AliPerformanceMatch * compObjMatchTPCEFF = (AliPerformanceMatch*)coutput->FindObject("AliPerformanceMatchTPCEFF");
327 compObjMatchTPCEFF->Analyse();
328 compObjMatchTPCEFF->GetAnalysisFolder()->ls("*");
329 compObjMatchTPCEFF->PrintHisto(kTRUE,"PerformanceMatchTPCEFFQA.ps");
330 TFile fout("PerformanceMatchTPCEFFQA.root","recreate");
331 compObjMatchTPCEFF->GetAnalysisFolder()->Write();
332 fout.Close();
333 }
334 else if(str.CompareTo("NO_MC") == 0)
335 {
336 AliPerformanceTPC * compObjTPC = (AliPerformanceTPC*)coutput->FindObject("AliPerformanceTPC");
337 compObjTPC->Analyse();
338 compObjTPC->GetAnalysisFolder()->ls("*");
339 compObjTPC->PrintHisto(kTRUE,"PerformanceTPCQA.ps");
340 TFile fout("PerformanceTPCQA.root","recreate");
341 compObjTPC->GetAnalysisFolder()->Write();
342 fout.Close();
343
344 inFile->cd();
345 AliPerformanceDCA * compObjDCA = (AliPerformanceDCA*)coutput->FindObject("AliPerformanceDCA");
346 compObjDCA->Analyse();
347 compObjDCA->GetAnalysisFolder()->ls("*");
348 compObjDCA->PrintHisto(kTRUE,"PerformanceDCAQA.ps");
349 TFile fout("PerformanceDCAQA.root","recreate");
350 compObjDCA->GetAnalysisFolder()->Write();
351 fout.Close();
352
353 inFile->cd();
354 AliPerformanceDEdx* compObjDEdx = (AliPerformanceDEdx*)coutput->FindObject("AliPerformanceDEdxTPCInner");
355 compObjDEdx->Analyse();
356 compObjDEdx->GetAnalysisFolder()->ls("*");
357 compObjDEdx->PrintHisto(kTRUE,"PerformanceDEdxTPCInnerQA.ps");
358 TFile fout("PerformanceDEdxTPCInnerQA.root","recreate");
359 compObjDEdx->GetAnalysisFolder()->Write();
360 fout.Close();
361
362 inFile->cd();
363 AliPerformanceMatch * compObjMatchTPCITS = (AliPerformanceMatch*)coutput->FindObject("AliPerformanceMatchTPCITS");
364 compObjMatchTPCITS->Analyse();
365 compObjMatchTPCITS->GetAnalysisFolder()->ls("*");
366 compObjMatchTPCITS->PrintHisto(kTRUE,"PerformanceMatchTPCITSQA.ps");
367 TFile fout("PerformanceMatchTPCITSQA.root","recreate");
368 compObjMatchTPCITS->GetAnalysisFolder()->Write();
369 fout.Close();
370
371 inFile->cd();
372 AliPerformanceMatch * compObjMatchTPCTRD = (AliPerformanceMatch*)coutput->FindObject("AliPerformanceMatchTPCTRD");
373 compObjMatchTPCTRD->Analyse();
374 compObjMatchTPCTRD->GetAnalysisFolder()->ls("*");
375 compObjMatchTPCTRD->PrintHisto(kTRUE,"PerformanceMatchTPCTRDQA.ps");
376 TFile fout("PerformanceMatchTPCTRDQA.root","recreate");
377 compObjMatchTPCTRD->GetAnalysisFolder()->Write();
378 fout.Close();
379
380inFile->cd();
381 AliPerformanceMatch * compObjMatchTPCEFF = (AliPerformanceMatch*)coutput->FindObject("AliPerformanceMatchTPCEFF");
382 compObjMatchTPCEFF->Analyse();
383 compObjMatchTPCEFF->GetAnalysisFolder()->ls("*");
384 compObjMatchTPCEFF->PrintHisto(kTRUE,"PerformanceMatchTPCEFFQA.ps");
385 TFile fout("PerformanceMatchTPCEFFQA.root","recreate");
386 compObjMatchTPCEFF->GetAnalysisFolder()->Write();
387 fout.Close();
388 }
389 else if(str.CompareTo("TPC") == 0)
390 {
391 inFile->cd();
392 AliPerformanceTPC * compObjTPC = (AliPerformanceTPC*)coutput->FindObject("AliPerformanceTPC");
393 compObjTPC->Analyse();
394 compObjTPC->GetAnalysisFolder()->ls("*");
395 compObjTPC->PrintHisto(kTRUE,"PerformanceTPCQA.ps");
396 TFile fout("PerformanceTPCQA.root","recreate");
397 compObjTPC->GetAnalysisFolder()->Write();
398 fout.Close();
399 }
400 else if(str.CompareTo("EFF") == 0)
401 {
402 inFile->cd();
403 AliPerformanceEff * compObjEff = (AliPerformanceEff*)coutput->FindObject("AliPerformanceEff");
404 compObjEff->Analyse();
405 compObjEff->GetAnalysisFolder()->ls("*");
406 compObjEff->PrintHisto(kTRUE,"PerformanceEffQA.ps");
407 TFile fout("PerformanceEffQA.root","recreate");
408 compObjEff->GetAnalysisFolder()->Write();
409 fout.Close();
410 }
411 else if(str.CompareTo("RES") == 0)
412 {
413 inFile->cd();
414 AliPerformanceRes * compObjRes = (AliPerformanceRes*)coutput->FindObject("AliPerformanceRes");
415 compObjRes->Analyse();
416 compObjRes->GetAnalysisFolder()->ls("*");
417 compObjRes->PrintHisto(kTRUE,"PerformanceResQA.ps");
418 TFile fout("PerformanceResQA.root","recreate");
419 compObjRes->GetAnalysisFolder()->Write();
420 fout.Close();
421
422 inFile->cd();
423 AliPerformanceRes * compObjRes = (AliPerformanceRes*)coutput->FindObject("AliPerformanceResTPCInner");
424 compObjRes->Analyse();
425 compObjRes->GetAnalysisFolder()->ls("*");
426 compObjRes->PrintHisto(kTRUE,"PerformanceResTPCInnerQA.ps");
427 TFile fout("PerformanceResTPCInnerQA.root","recreate");
428 compObjRes->GetAnalysisFolder()->Write();
429 fout.Close();
430 }
431 else if(str.CompareTo("DEDX") == 0)
432 {
433 inFile->cd();
434 AliPerformanceDEdx* compObjDEdx = (AliPerformanceDEdx*)coutput->FindObject("AliPerformanceDEdxTPCInner");
435 compObjDEdx->Analyse();
436 compObjDEdx->GetAnalysisFolder()->ls("*");
437 compObjDEdx->PrintHisto(kTRUE,"PerformanceDEdxTPCInnerQA.ps");
438 TFile fout("PerformanceDEdxTPCInnerQA.root","recreate");
439 compObjDEdx->GetAnalysisFolder()->Write();
440 fout.Close();
441 }
442 else if(str.CompareTo("DCA") == 0)
443 {
444 inFile->cd();
445 AliPerformanceDCA * compObjDCA = (AliPerformanceDCA*)coutput->FindObject("AliPerformanceDCA");
446 compObjDCA->Analyse();
447 compObjDCA->GetAnalysisFolder()->ls("*");
448 compObjDCA->PrintHisto(kTRUE,"PerformanceDCAQA.ps");
449 TFile fout("PerformanceDCAQA.root","recreate");
450 compObjDCA->GetAnalysisFolder()->Write();
451 fout.Close();
452 }
453 else if(str.CompareTo("MATCH") == 0)
454 {
455 inFile->cd();
456 AliPerformanceMatch * compObjMatchTPCITS = (AliPerformanceMatch*)coutput->FindObject("AliPerformanceMatchTPCITS");
457 compObjMatchTPCITS->Analyse();
458 compObjMatchTPCITS->GetAnalysisFolder()->ls("*");
459 compObjMatchTPCITS->PrintHisto(kTRUE,"PerformanceMatchTPCITSQA.ps");
460 TFile fout("PerformanceMatchTPCITSQA.root","recreate");
461 compObjMatchTPCITS->GetAnalysisFolder()->Write();
462 fout.Close();
463
464 inFile->cd();
465 AliPerformanceMatch * compObjMatchTPCTRD = (AliPerformanceMatch*)coutput->FindObject("AliPerformanceMatchTPCTRD");
466 compObjMatchTPCTRD->Analyse();
467 compObjMatchTPCTRD->GetAnalysisFolder()->ls("*");
468 compObjMatchTPCTRD->PrintHisto(kTRUE,"PerformanceMatchTPCTRDQA.ps");
469 TFile fout("PerformanceMatchTPCTRDQA.root","recreate");
470 compObjMatchTPCTRD->GetAnalysisFolder()->Write();
471 fout.Close();
472
473inFile->cd();
474 AliPerformanceMatch * compObjMatchTPCEFF = (AliPerformanceMatch*)coutput->FindObject("AliPerformanceMatchTPCEFF");
475 compObjMatchTPCEFF->Analyse();
476 compObjMatchTPCEFF->GetAnalysisFolder()->ls("*");
477 compObjMatchTPCEFF->PrintHisto(kTRUE,"PerformanceMatchTPCEFFQA.ps");
478 TFile fout("PerformanceMatchTPCEFFQA.root","recreate");
479 compObjMatchTPCEFF->GetAnalysisFolder()->Write();
480 fout.Close();
481 }
482}