]>
Commit | Line | Data |
---|---|---|
a897a37a | 1 | #include "iostream.h" |
2 | ||
3 | void MUONrawclusters (Int_t evNumber1=0,Int_t evNumber2=0) | |
4 | { | |
a9e2aefa | 5 | ////////////////////////////////////// |
6 | // // | |
7 | // ROOT macro for ALICE Dimuon Arm: // | |
8 | // Clusterization of digits // | |
9 | // // | |
10 | ////////////////////////////////////// | |
11 | // | |
12 | // Adds the tree TR for raw clusters | |
13 | // to the ROOT file "galice.root" | |
14 | // containing the digits (tree TD). | |
15 | // | |
16 | // Arguments: | |
17 | // evNumber1 = first event number to act on in file "galice.root" | |
18 | // evNumber2 = last event number to act on in file "galice.root" | |
19 | // | |
20 | // Input/output file: | |
21 | // "galice.root" | |
22 | // | |
23 | //__________________________________________________________________________ | |
a897a37a | 24 | |
25 | // Dynamically link some shared libs | |
26 | ||
27 | if (gClassTable->GetID("AliRun") < 0) { | |
28 | gROOT->LoadMacro("loadlibs.C"); | |
29 | loadlibs(); | |
30 | } | |
31 | ||
32 | // Connect the Root Galice file containing Geometry, Kine and Hits | |
33 | ||
34 | TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root"); | |
35 | if (!file) file = new TFile("galice.root","UPDATE"); | |
36 | ||
37 | // Get AliRun object from file or create it if not on file | |
38 | ||
39 | if (!gAlice) { | |
40 | gAlice = (AliRun*)file->Get("gAlice"); | |
41 | if (gAlice) printf("AliRun object found on file\n"); | |
42 | if (!gAlice) gAlice = new AliRun("gAlice","Alice test program"); | |
43 | } | |
a9e2aefa | 44 | |
a897a37a | 45 | // Set reconstruction models |
46 | // | |
47 | // Get pointers to Alice detectors and Digits containers | |
48 | AliMUON *MUON = (AliMUON*) gAlice->GetModule("MUON"); | |
a9e2aefa | 49 | for (Int_t i=0; i<10; i++) { |
a9e2aefa | 50 | RecModel = new AliMUONClusterFinderVS(); |
a9e2aefa | 51 | // RecModel->SetTracks(16,17); |
52 | // RecModel->SetTracks(266,267); | |
53 | MUON->SetReconstructionModel(i,RecModel); | |
54 | } | |
a897a37a | 55 | // |
56 | // Loop over events | |
57 | // | |
58 | Int_t Nh=0; | |
59 | Int_t Nh1=0; | |
a9e2aefa | 60 | for (int nev=evNumber1; nev<= evNumber2; nev++) { |
a897a37a | 61 | Int_t nparticles = gAlice->GetEvent(nev); |
62 | cout << "nev " << nev <<endl; | |
63 | cout << "nparticles " << nparticles <<endl; | |
64 | if (nev < evNumber1) continue; | |
65 | if (nparticles <= 0) return; | |
a897a37a | 66 | Int_t nbytes = 0; |
a897a37a | 67 | TClonesArray *Particles = gAlice->Particles(); |
68 | TTree *TD = gAlice->TreeD(); | |
69 | Int_t nent=TD->GetEntries(); | |
a897a37a | 70 | if (MUON) { |
71 | MUON->FindClusters(nev,nent-2); | |
72 | } // end if MUON | |
73 | } // event loop | |
a9e2aefa | 74 | |
a897a37a | 75 | file->Close(); |
76 | } | |
77 |