Updated code for tracking V2 (from Y. Belikov)
[u/mrichter/AliRoot.git] / ITS / ITSHitsToFastPoints.C
CommitLineData
e8189707 1#include "iostream.h"
2
3void ITSHitsToFastPoints (Int_t evNumber1=0,Int_t evNumber2=0,Int_t nsignal=25, Int_t size=-1)
4{
5/////////////////////////////////////////////////////////////////////////
6// This macro is a small example of a ROOT macro
7// illustrating how to read the output of GALICE
8// and do some analysis.
9//
10/////////////////////////////////////////////////////////////////////////
11
12// Dynamically link some shared libs
13
14 if (gClassTable->GetID("AliRun") < 0) {
15 gROOT->LoadMacro("loadlibs.C");
16 loadlibs();
9c712bc6 17 } else {
18 delete gAlice;
19 gAlice=0;
e8189707 20 }
21
e8189707 22// Connect the Root Galice file containing Geometry, Kine and Hits
23
24 TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
25 if (file) file->Close();
26 file = new TFile("galice.root","UPDATE");
27 file->ls();
28
29 printf ("I'm after Map \n");
30
31// Get AliRun object from file or create it if not on file
32
33 if (!gAlice) {
34 gAlice = (AliRun*)file->Get("gAlice");
35 if (gAlice) printf("AliRun object found on file\n");
36 if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
37 }
38 printf ("I'm after gAlice \n");
39
40 AliITS *ITS = (AliITS*) gAlice->GetModule("ITS");
41 if (!ITS) return;
42
a9a2d814 43 // Set the simulation model
44
45 /* Bug !!! (I.Belikov)
e8189707 46 AliITSsimulationFastPoints *sim = new AliITSsimulationFastPoints();
47
48 for (Int_t i=0;i<3;i++) {
49 ITS->SetSimulationModel(i,sim);
50 }
a9a2d814 51 */
52
53 for (Int_t i=0;i<3;i++) {
54 ITS->SetSimulationModel(i,new AliITSsimulationFastPoints());
55 }
56
e8189707 57
58//
59// Event Loop
60//
61
62 Int_t nbgr_ev=0;
25911528 63 TStopwatch timer;
e53d0fac 64
e8189707 65 for (int ev=evNumber1; ev<= evNumber2; ev++) {
66 Int_t nparticles = gAlice->GetEvent(ev);
67 cout << "event " <<ev<<endl;
68 cout << "nparticles " <<nparticles<<endl;
25911528 69 gAlice->SetEvent(ev);
70 if(!gAlice->TreeR()) gAlice-> MakeTree("R");
71 ITS->MakeBranch("R");
e8189707 72 if (ev < evNumber1) continue;
73 if (nparticles <= 0) return;
74
75 Int_t bgr_ev=Int_t(ev/nsignal);
76 //printf("bgr_ev %d\n",bgr_ev);
25911528 77 timer.Start();
e8189707 78 ITS->HitsToFastRecPoints(ev,bgr_ev,size," ","All"," ");
25911528 79 timer.Stop(); timer.Print();
e8189707 80 } // event loop
81
a9a2d814 82 delete gAlice; gAlice=0;
e8189707 83 file->Close();
84}
85
86
87
88
89
90
91
92
93
94
95
96
97
98