Macro to visualize the TPC cosmic data (minor modifications to the standart one)
[u/mrichter/AliRoot.git] / EVE / test-macros / tpc_sector_raw_test.C
1 class AliRawReaderRoot;
2
3 namespace Alieve {
4 class TPCData;
5 }
6
7 Alieve::TPCData*  x = 0;
8 AliRawReaderRoot* reader = 0;
9
10 void tpc_sector_raw_test(const char *file = "",Int_t ievent = 0)
11 {
12   gROOT->Macro("alieve_loadlibs.C");
13   gSystem->Load("libAlieve");
14
15   reader = new AliRawReaderRoot(file);
16   reader->RequireHeader(kFALSE);
17   reader->Reset();
18   for(Int_t i = 0; i <= ievent; i++)
19     reader->NextEvent();
20   AliTPCRawStreamOld input(reader);
21   reader->SelectEquipment(-1);
22
23   x = new Alieve::TPCData;
24   //x->SetSectorBlockSize(8192);
25   x->SetLoadThreshold(65);
26   x->CreateAllSectors();
27   x->LoadRaw(input, kFALSE);
28
29   gStyle->SetPalette(1, 0);
30
31   Alieve::TPCSector2D* s = new Alieve::TPCSector2D();
32   s->SetDataSource(x);
33   s->SetMainColor(36);
34   gReve->AddRenderElement(s);
35   gReve->DrawRenderElement(s);
36
37 }
38
39 void tpc_raw_pad_dump(Int_t s, Int_t r, Int_t p)
40 {
41   reader->Reset();
42   reader->NextEvent();
43
44   if(r >= Alieve::TPCSectorData::GetInnSeg().fNRows) {
45     r -= Alieve::TPCSectorData::GetInnSeg().fNRows;
46     s += 36;
47   }
48
49   AliTPCRawStream input(reader);
50   Int_t sector = input.GetSector();
51   Int_t row    = input.GetRow();
52
53   while (input.Next()) {
54     if (input.IsNewRow()) {
55       sector = input.GetSector();
56       row    = input.GetRow();
57     }
58     if(sector != s || row != r) continue;
59
60     Int_t signal = input.GetSignal();
61     Int_t pad    = input.GetPad();
62     Int_t time   = input.GetTime();
63
64     if(pad == p)
65       printf("%d %d\n", time, signal);
66   }
67 }