* show_scan_results.C
[u/mrichter/AliRoot.git] / EVE / macros / show_scan_results.C
1 // Label is used to store scanning result for tracks and trackelts.
2 //
3 // BIT(1) stores the original selection.
4 // BIT(0) stores the user selection (set to same value as b1 at init).
5 //
6 // This allows to check all possible combinations.
7
8
9 void show_scan_results()
10 {
11   TFile *f = TFile::Open("scan_results.root", "UPDATE");
12
13   f->Delete("SR;*");
14
15   T = new TTree("SR", "Scanning results");
16
17   TClonesArray* clones = new TClonesArray("AliESDtrack", 32);
18   TBranch * tb = T->Branch("T", &clones);
19
20   AliMultiplicity *mult = 0;
21   TBranch *mb = T->Branch("M", &mult);
22
23
24   for (Int_t i=0; i<=9999; ++i)
25   {
26     TString name;
27
28     name.Form("Tracks_%04d", i);
29     TClonesArray* ts = (TClonesArray*) f->Get(name);
30
31     name.Form("Tracklets_%04d", i);
32     AliMultiplicity* ms =  (AliMultiplicity*) f->Get(name);
33
34     if (ts && ms)
35     {
36       tb->SetAddress(&ts);
37       mb->SetAddress(&ms);
38       T->Fill();
39     }
40     else if ((ts && !ms) || (!ts && ms))
41     {
42       Error("show_scan_results", "Only one of tracks/tracklets exists for index %d.", i);
43     }
44
45   }
46
47   T->Write();
48
49   f->Close();
50   delete f;
51
52   // Reopen in read mode.
53   TFile::Open("scan_results.root");
54 }