91bba962 |
1 | RICHdetect (Int_t evNumber1=0,Int_t evNumber2=0) { |
2 | // Dynamically link some shared libs |
3 | |
4 | if (gClassTable->GetID("AliRun") < 0) { |
5 | gROOT->LoadMacro("loadlibs.C"); |
6 | loadlibs(); |
7 | } |
8 | else { |
5cfb142a |
9 | //delete gAlice; |
91bba962 |
10 | gAlice = 0; |
11 | } |
12 | // Connect the Root Galice file containing Geometry, Kine and Hits |
13 | |
14 | TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root"); |
15 | if (file) file->Close(); |
16 | file = new TFile("galice.root","UPDATE"); |
17 | file->ls(); |
18 | |
19 | //printf ("I'm after Map \n"); |
20 | |
21 | // Get AliRun object from file or create it if not on file |
22 | |
23 | if (!gAlice) { |
24 | gAlice = (AliRun*)file->Get("gAlice"); |
25 | if (gAlice) printf("AliRun object found on file\n"); |
26 | if (!gAlice) gAlice = new AliRun("gAlice","RICH reconstruction program"); |
27 | } else { |
28 | delete gAlice; |
29 | gAlice = (AliRun*)file->Get("gAlice"); |
30 | if (gAlice) printf("AliRun object found on file\n"); |
31 | if (!gAlice) gAlice = new AliRun("gAlice","Alice test program"); |
32 | } |
33 | |
34 | //printf ("I'm after gAlice \n"); |
35 | |
36 | AliRICH *RICH = (AliRICH*) gAlice->GetDetector("RICH"); |
5cfb142a |
37 | |
91bba962 |
38 | // Create Recontruction algorithm object |
39 | AliRICHDetect *detect = new AliRICHDetect("RICH reconstruction algorithm","Reconstruction"); |
40 | |
41 | // Reconstruct |
42 | // Event Loop |
43 | // |
44 | for (int nev=0; nev<= evNumber2; nev++) { |
45 | Int_t nparticles = gAlice->GetEvent(nev); |
68415bd3 |
46 | printf("\nProcessing event: %d\n",nev); |
47 | printf("\nParticles : %d\n",nparticles); |
91bba962 |
48 | if (nev < evNumber1) continue; |
49 | if (nparticles <= 0) return; |
5cfb142a |
50 | if (RICH) detect->Detect(nev); |
91bba962 |
51 | char hname[30]; |
52 | sprintf(hname,"TreeR%d",nev); |
53 | gAlice->TreeR()->Write(hname); |
54 | gAlice->TreeR()->Reset(); |
55 | } // event loop |
56 | |
57 | //delete gAlice; |
58 | printf("\nEnd of Macro *************************************\n"); |
59 | } |
60 | |
61 | |
62 | |