2 // Test of the "NextSignal" interface of the AliFMDRawReader
4 // w/ZS: 08000059807016.10.root
5 // w/o ZS: 08000053726000.10.root
7 Int_t ReadEvent(AliRawReader* reader)
9 if (!reader) return -1;
10 if (!reader->NextEvent()) return -1;
11 Int_t evno = reader->GetEventIndex();
12 // if (evno % 10 == 0) std::cout << "." << std::flush;
13 std::cout << "In event # " << evno << "/"
14 << reader->GetNumberOfEvents() << std::endl;
19 TestRawReader(const char* file=
20 //"/media/cholm_data/alice/data/08000053726000.10.root" // w/o ZS
21 "/media/cholm_data/alice/data/08000059807016.10.root" // w/ZS
24 AliCDBManager::Instance()->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
25 AliCDBManager::Instance()->SetRun(59807);
26 AliFMDParameters::Instance()->Init();
27 AliLog::SetModuleDebugLevel("FMD", 2);
29 AliRawReader* rawReader = AliRawReader::Create(file);
30 if (!rawReader) return;
32 AliFMDRawReader* fmdReader = new AliFMDRawReader(rawReader, 0);
37 while ((evno = ReadEvent(rawReader)) >= 0) {
38 if (evno < 25) continue;
39 if (evno > 120) break;
41 UShort_t det, sec, str, fac;
47 while (fmdReader->NextSignal(det, rng, sec, str, adc, zs, fac)) {
48 Printf("FMD%d%c[%02d,%03d]: %4d", det,rng,sec,str,adc);
49 seen(det,rng,sec,str) = kTRUE;
52 for (det = 1; det <= 3; det++) {
53 UShort_t nrng = (det == 1 ? 1 : 2);
54 for (UShort_t ir = 0; ir < nrng; ir++) {
55 Char_t rng = (ir == 0 ? 'I' : 'O');
56 UShort_t nsec = (ir == 0 ? 20 : 40);
57 UShort_t nstr = (ir == 0 ? 512 : 256);
58 for (sec = 0; sec < nsec; sec++) {
59 for (str = 0; str < nstr; str++) {
60 if (!seen(det,rng,sec,str))
61 Printf("FMD%d%c[%02d,%03d] not seen", det,rng,sec,str);