4 TH1F * hCFD[8]; TH1F *hLED[8]; TH1F*hQT01[4];TH1F*hQT02[4];
5 TH1F*hQTD[4]; TH1F*hADC[8]; TH2*hQTCFD[4];
6 Char_t buf1[10], buf2[10], buf3[10], buf4[10], buf5[10], buf6[10],buf7[10];
7 for (Int_t ic=0; ic<8; ic++)
9 sprintf(buf1,"CFD%i",ic+1);
10 hCFD[ic]= new TH1F(buf1,"CFD",500,0.5,6000.5);
11 sprintf(buf2,"LED%i",ic+1);
12 hLED[ic]= new TH1F(buf2,"LED",500,-0.5,2000.5);
14 sprintf(buf6,"ADC_%i",ic+1);
15 hADC[ic]= new TH1F(buf6,"QT1",500,0,6000);
18 for (Int_t iq=0; iq<4; iq++)
21 sprintf(buf3,"QT0%i",iq+1);
22 hQT01[iq]= new TH1F(buf3,"QT01",500,0,6000);
23 sprintf(buf4,"QT1_%i",iq+1);
25 hQT02[iq]= new TH1F(buf4,"QT02",500,0,6000);
26 sprintf(buf5,"QTD_%i",iq+1);
28 hQTD[iq]= new TH1F(buf5,"QTdiff",5000,1500,6000);
30 sprintf(buf7,"QTCFD_%i",iq+1);
31 hQTCFD[iq]= new TH2F(buf7,"QT vs CFD",500,0,6000,500,0,5000);
34 TH1F *hORA= new TH1F("hORA"," T0 A ",500, 1000,2000);
35 TH1F *hORC= new TH1F("hORC"," T0 C ",500, 1000,2000);
36 TH1F*hEffCFD= new TH1F("hEffCFD","Effeciency",8,0.25,4.25);
38 // TH2F*hQTCFD= new TH2F("hQTCFD","QT vs CFD",500,0.5,6000.5,500,0.5,5000.5);
39 TH2F*hQTLED= new TH2F("hQTLED","QT vs LED",500,0.5,6000.5,500,0.5,5000.5);
40 TH2F*hLEDCFD= new TH2F("hLEDCFD","LEd vs CFD",500,-0.5,10000.5,500,-0.5,10000.5);
42 AliCDBManager* cdb = AliCDBManager::Instance();
43 AliCDBStorage *stor = cdb->GetStorage("local://$ALICE_ROOT");
45 // AliRawReader *reader = new AliRawReaderDate("raw0/T0_3328.ddl");
46 AliRawReader *reader = new AliRawReaderFile();
47 // reader->LoadEquipmentIdsMap("T0map.txt");
48 // reader->RequireHeader(kFALSE);
49 AliT0RawReader *start = new AliT0RawReader(reader);
50 Int_t allData[110][5];
52 while (reader->NextEvent()) {
54 for (Int_t i=0; i<110; i++) {
55 allData[i][0]= start->GetData(i,0);
56 cout<<" i "<< i<<" "<<allData[i][0] <<endl;
63 sprintf(filedata,"START%i.root",runNumber);
64 TFile *f1 = new TFile(filedata);
66 TTree *tree = (TTree *)f1->Get("raw");
68 AliSTARTdigit *digit = 0;
69 tree->SetBranchAddress("START",&digit);
70 Int_t nevent=tree->GetEntries();
71 for(Int_t i=0; i<nevent; i++)
74 Int_t time = digit->CFD01();
76 time = digit->CFD02();
78 time = digit->CFD03();
80 time = digit->CFD04();
82 time = digit->CFD11();
84 time = digit->CFD12();
86 time = digit->CFD13();
88 time = digit->CFD14();
90 time = digit->LED01();
92 time = digit->LED02();
94 time = digit->LED03();
96 time = digit->LED04();
98 time = digit->LED05();
100 time = digit->LED06();
102 time = digit->LED07();
104 time = digit->LED08();
107 Int_t led=(digit->LED01()-digit->CFD01());
108 hLEDCFD->Fill(time,digit->CFD01());
110 time = digit->QT01();
111 hQT01[0]->Fill(time);
112 time = digit->QT02();
113 hQT01[1]->Fill(time);
114 time = digit->QT03();
115 hQT01[2]->Fill(time);
116 time = digit->QT04();
117 hQT01[3]->Fill(time);
119 time = digit->QT11();
120 hQT02[0]->Fill(time);
121 time = digit->QT12();
122 hQT02[1]->Fill(time);
123 time = digit->QT13();
124 hQT02[2]->Fill(time);
125 time = digit->QT04();
126 hQT02[3]->Fill(time);
129 time = (digit->QT11() - digit->QT01());
131 hQTLED->Fill(led,time);
132 hQTCFD[0]->Fill(time,digit->CFD01());
134 time = (digit->QT12() - digit->QT02());
136 hQTCFD[1]->Fill(time,digit->CFD02());
138 time = (digit->QT13() - digit->QT03());
140 hQTCFD[2]->Fill(time,digit->CFD03());
142 time = (digit->QT14() - digit->QT04());
144 hQTCFD[3]->Fill(time,digit->CFD04());
146 time = (digit->LED01() - digit->CFD01());
148 time = (digit->LED02() - digit->CFD02());
150 time = (digit->QT03() - digit->CFD03());
152 time = (digit->QT04() - digit->CFD04());
154 time = (digit->LED05() - digit->CFD11());
156 time = (digit->LED06() - digit->CFD12());
158 time = (digit->LED07() - digit->CFD13());
160 time = (digit->LED08() - digit->CFD14());
170 for (Int_t iq=0; iq<4; iq++)
174 Float_t NCFD = hCFD[iq]->Integral(hCFD[iq]->GetXaxis()->FindBin(200.5),
175 hCFD[iq]->GetXaxis()->FindBin(600.5));
178 hEffCFD->Fill(iq+1,NCFD/nevent);
183 sprintf(filehist,"hist%i.root",runNumber);
184 TFile *hist = new TFile(filehist,"RECREATE");