]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSPrintHits.C
New methods and data member added by M. Horner.
[u/mrichter/AliRoot.git] / ITS / AliITSPrintHits.C
CommitLineData
c108b570 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*/
11void 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}