]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSPrintHits.C
Boost method added.
[u/mrichter/AliRoot.git] / ITS / AliITSPrintHits.C
1 #include "iostream.h"
2 #include "TFile.h"
3 #include "TString.h"
4 #include "TClonesArray.h"
5 /*
6 #include "$(ALICE_ROOT)/STEER/AliRun.h"
7 #include "$(ALICE_ROOT)/ITS/AliITS.h"
8 #include "$(ALICE_ROOT)/ITS/AliITSgeom.h"
9 #include "$(ALICE_ROOT)/ITS/AliITSHit.h"
10 */
11 void AliITSPrintHits(TString hfn="galice.root",Int_t mod=-1,
12                           Int_t evnt=-1){
13     // Macro to print out the recpoints for all or a specific module
14
15     // Dynamically link some shared libs
16     if (gClassTable->GetID("AliRun") < 0) {
17         gROOT->LoadMacro("loadlibs.C");
18         loadlibs();
19     } // end if
20     gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSstandard.C");
21
22     TFile *hf=0;
23     hf = AccessFile(hfn,"R"); // Set up to read in Data
24     AliITS *ITS = (AliITS*)gAlice->GetDetector("ITS");
25     if(!ITS){
26         cout << "Error: no ITS found. Aborting"<<endl;
27         return;
28     } // end if !ITS
29
30     Int_t evNumber1 = 0;
31     Int_t evNumber2 = gAlice->GetEventsPerRun();
32     if(evnt>=0){
33         evNumber1 = evnt;
34         evNumber2 = evnt+1;
35     } // end if evnt>=0
36     Int_t mod1 = 0;
37     Int_t mod2 = ITS->GetITSgeom()->GetIndexMax();
38     if(mod>=0){
39         mod1 = mod;
40         mod2 = mode+1;
41     } // end if mod>=0
42     TClonesArray *hpa = ITS->RecPoints();
43     AliITShit *hp = 0;
44
45     Int_t nmodules,size=-1;
46     ITS->InitModules(size,nmodules);
47     Int_t event,m,i,i2,hit,trk;
48     for(event = evNumber1; event < evNumber2; event++){
49         gAlice->GetEvent(event);
50         ITS->FillModules(event,0,-1," "," ");
51         for(m=mod1;m<mod2;m++){
52             i2 = (ITS->GetModule(m))->GetNhits();
53             cout <<  "Event=" << event << " module=" << m <<
54                 " Number of Hits=" << i2 <<endl;
55             for(i=0;i<i2;i++){
56                 trk = (ITS->GetModule(m))->GetHitTrackIndex(i);
57                 hit = (ITS->GetModule(m))->GetHitHitIndex(i);
58                 hp  = (ITS->GetModule(m))->GetHit(i);
59                 cout << i << " trk#="<<trk<<" hit#="<< hit << " ";
60                 hp->Print((ostream*)cout);
61                 cout << endl;
62             } // end for i
63         } // end for m
64         ITS->ClearModules();
65     } // end for event
66 }