- // fhRawCFD[i] = new THnSparseF(timename.Data(), Form("%s;CFD [#channels];Counts", timename.Data()),1,spabins,spaxmin,spaxmax);
- fhRawCFD[i] = new TH1F(timename.Data(), Form("%s;CFD [#channels];Counts", timename.Data()),Int_t(high[i+1]-low[i+1]),low[i+1],high[i+1]);
- Add2RawsList( fhRawCFD[i],i+1, expert, !image, !saveCorr);
- fhRawLED[i] = new TH1F(ledname.Data(), Form("%s;LED[#channels];Counts", ledname.Data()),Int_t(high[i+24+1]-low[i+24+1]),low[i+24+1],high[i]);
- Add2RawsList( fhRawLED[i],i+24+1, expert, !image, !saveCorr);
- fhRawLEDamp[i] = new TH1F(ampname.Data(), Form("%s;LED-CFD [#channels];Counts", ampname.Data()),1000,0,1000);
- Add2RawsList( fhRawLEDamp[i],i+48+1, expert, !image, !saveCorr);
- fhRawQTC[i] = new TH1F(qtcname.Data(), Form("%s;QTC[#channels];Counts", qtcname.Data()),10000,0,10000);
- Add2RawsList( fhRawQTC[i],i+72+1, expert, !image, !saveCorr);
- fhRawQT1[i] = new TH1F(qt1name.Data(), Form("%s;QT1[#channels];Counts", qtcname.Data()),Int_t(high[270+i]-low[270+i]),low[270+i],high[270+i]);
- Add2RawsList( fhRawQT1[i],270+i, expert, !image, !saveCorr);
- fhRawQT0[i] = new TH1F(qt0name.Data(), Form("%s;QT0[#channels];Counts", qtcname.Data()),Int_t(high[270+24+i]-low[270+24+i]),low[270+24+i],high[270+24+i]);
- Add2RawsList( fhRawQT0[i],270+24+i, expert, !image, !saveCorr);
-
- fhRawNhits[i] = new TH1F(nhits.Data(), Form("%s;#Hits;Events", nhits.Data()),10, 0, 10);
- Add2RawsList( fhRawNhits[i],244+i, expert, !image, !saveCorr);
-
- }
- TH1F* fhRawTrigger = new TH1F("hRawTrigger"," phys triggers;Trigger #;Counts",5,0,5);
- Add2RawsList(fhRawTrigger ,97, expert, !image, !saveCorr);
-
- TH1F* fhRawMean = new TH1F("hRawMean","online mean signal, physics event;",Int_t(high[98]-low[98]),low[98],high[98]);
- Add2RawsList( fhRawMean,98, expert, !image, !saveCorr);
-
- TH1F* fhRawVertex = new TH1F("hRawVertex","online vertex signal; counts",Int_t(high[100]-low[99]),low[99],high[99]);
- Add2RawsList( fhRawVertex,99, expert, !image, !saveCorr);
-
- TH1F* fhRawORA = new TH1F("hRawORA","online OR A; counts",Int_t(high[100]-low[100]),low[100],high[100]);
- Add2RawsList( fhRawORA,100, expert, !image, !saveCorr);
- TH1F* fhRawORC = new TH1F("hRawORC","online OR C;counts",Int_t( high[101]-low[101]),low[101],high[101]);
- Add2RawsList( fhRawORC,101, expert, !image, !saveCorr);
-
-
- for (Int_t i=0; i<24; i++)
- {
- // for events with trigger CALIBRATION_EVENT
- timeCalname ="hRawCFDcal";
- ledCalname = "hRawLEDcal";
- ampCalname = "hRawLEDminCFDcal";
- qtcCalname = "hRawQTCcal";
- qt0Calname = "hRawQT0cal";
- qt1Calname = "hRawQT1cal";
- timeCalname += i+1;
- ledCalname += i+1;
- ampCalname += i+1;
- qtcCalname += i+1;
- qt0Calname += i+1;
- qt1Calname += i+1;
-
- fhRawCFDcal[i] = new TH1F(timeCalname.Data(), Form("%s;Time ;Counts", timeCalname.Data()),Int_t(high[101+i+1]-low[101+i+1]),low[101+i+1],high[101+i+1]);
- Add2RawsList( fhRawCFDcal[i],101+i+1, expert, !image, !saveCorr);
-
- fhRawLEDcal[i] = new TH1F(ledCalname.Data(), Form("%s;Time ;Counts", ledCalname.Data()),Int_t(high[101+i+24+1]-low[101+i+24+1]),low[101+i+24+1],high[101+i+24+1]);
- Add2RawsList( fhRawLEDcal[i],101+i+24+1, expert, !image, !saveCorr);
-
- fhRawLEDampcal[i] = new TH1F(ampCalname.Data(), Form("%s;Amplitude [ADC counts];Counts", ampCalname.Data()),1000,0,1000);
- Add2RawsList( fhRawLEDampcal[i],101+i+48+1, expert, !image, !saveCorr);
-
- fhRawQTCcal[i] = new TH1F(qtcCalname.Data(), Form("%s;Charge ;Counts",qtcCalname.Data()),10000,0,10000);
- Add2RawsList( fhRawQTCcal[i],101+i+72+1, expert, !image, !saveCorr);
-
- fhRawQT0cal[i] = new TH1F(qt0Calname.Data(), Form("%s;Charge ;Counts",qt0Calname.Data()),Int_t(high[371+i]-low[371+i]),low[371+i],high[371+i]);
- Add2RawsList( fhRawQT0cal[i],371+i, expert, !image, !saveCorr);
-
- fhRawQT1cal[i] = new TH1F(qt1Calname.Data(), Form("%s;Charge ;Counts",qt1Calname.Data()),Int_t(high[i+371+24]-low[i+371+24]),low[i+371+24],high[i+371+24]);
- Add2RawsList( fhRawQT1cal[i],i+371+24, expert, !image, !saveCorr);
-
- }
+ hRawCFD[i] = new TH1F(timename.Data(), Form("%s;CFD [#channels]; Counts", timename.Data()),Int_t((high[i+1]-low[i+1])/4),low[i+1],high[i+1]);
+ // ForbidCloning(hRawCFD[i]); //RS I don't know how histos 1-24 should be processed in MakeRaws, for the moment forbidding the cloning
+ Add2RawsList( hRawCFD[i],i+1, expert, !image, !saveCorr);
+ hRawLED[i] = new TH1F(ledname.Data(), Form("%s;LED [#channels]; Counts", ledname.Data()),Int_t((high[i+25]-low[i+25])/4),low[i+25],high[i+25]);
+ Add2RawsList( hRawLED[i],i+25, expert, !image, !saveCorr);
+ hRawLEDamp[i] = new TH1F(ampname.Data(), Form("%s;LED-CFD [#channels]; Counts", ampname.Data()),1000,0,1000);
+ Add2RawsList( hRawLEDamp[i],i+49, expert, !image, !saveCorr);
+ hRawQTC[i] = new TH1F(qtcname.Data(), Form("%s;QTC[#channels]; Counts", qtcname.Data()), 2500,0,10000); //fk
+ //QT0
+ Add2RawsList( hRawQTC[i],i+73, expert, !image, !saveCorr);
+ hRawQT0[i] = new TH1F(qt0name.Data(), Form("%s; QT0 [#channels]; Counts", qt0name.Data()),Int_t((high[97+i]-low[97+i])/4),low[97+i],high[97+i]);
+ Add2RawsList( hRawQT0[i],97+i, expert, !image, !saveCorr);
+ //QT1
+ hRawQT1[i] = new TH1F(qt1name.Data(), Form("%s; QT1 [#channels]; Counts", qt1name.Data()),Int_t((high[121+i]-low[121+i])/4),low[121+i],high[121+i]);
+ Add2RawsList( hRawQT1[i],121+i, expert, !image, !saveCorr);
+
+ hRawNhits[i] = new TH1F(nhits.Data(), Form("%s;#Hits;Events", nhits.Data()),20, 0, 20);
+ Add2RawsList( hRawNhits[i],176+i, expert, !image, !saveCorr);
+ }
+
+
+ TH1F* hRawTrigger = new TH1F("hRawTrigger"," triggers;Trigger ;Counts",6,0,6);
+ for (Int_t itr=0; itr<6; itr++) hRawTrigger->Fill(triggers[itr], 0); // RS Modified to allow cloning (no fNumTriggers member anymore)
+ Add2RawsList(hRawTrigger ,169, !expert, image, !saveCorr);
+ TH1F* hRawMean = new TH1F("hRawMean","online timer mean signal, physics event;",Int_t((high[170]-low[170])/4),low[170],high[170]);
+ Add2RawsList( hRawMean,170, expert, !image, !saveCorr);
+
+ TH1F* hRawVertex = new TH1F("hRawVertex","online 0TVX vertex signal; counts",Int_t((high[171]-low[171])/4),low[171],high[171]);
+ Add2RawsList( hRawVertex,171, expert, !image, !saveCorr);//FK
+
+ TH1F* hRawORA = new TH1F("hRawORA","online OR A; counts",Int_t((high[172]-low[172])/4),low[172],high[172]);
+ Add2RawsList( hRawORA,172, expert, !image, !saveCorr);
+ TH1F* hRawORC = new TH1F("hRawORC","online OR C;counts",Int_t(( high[173]-low[173])/4),low[173],high[173]);
+ Add2RawsList( hRawORC,173, expert, !image, !saveCorr);
+ TH1F* hMultCentr = new TH1F("hMultCentr","online trigger Central;counts ",Int_t(( high[174]-low[174])/4),low[174],high[174]);
+ Add2RawsList( hMultCentr,174, expert, !image, !saveCorr);
+ TH1F* hMultSeCentr = new TH1F("hMultSemiCentr","online trigger SemiCentral;counts ",Int_t(( high[175]-low[175])/4),low[175],high[175]);
+ Add2RawsList( hMultSeCentr,175, expert, !image, !saveCorr);
+
+ TH1F* hMultA = new TH1F("hMultA","full mulltiplicity A side;Multiplicity;Entries", Int_t((high[201]-low[201])/4) ,low[201],high[201]);
+ Add2RawsList( hMultA,201, expert, !image, !saveCorr );//FK
+
+ TH1F* hMultAS = new TH1F("hMultASemi","full multiplicity with semi-central trigger A side ;Multiplicity;Entries",
+ Int_t((high[202]-low[202])/4),low[202],high[202] );
+ Add2RawsList( hMultAS, 202, expert, !image, !saveCorr);
+ TH1F* hMultAC = new TH1F("hMultACentr","full multiplicity with central trigger;Multiplicity;Entries",
+ Int_t((high[203]-low[203])/4),low[203],high[203]);
+ Add2RawsList( hMultAC, 203, expert, !image, !saveCorr);
+
+
+ //side C
+ TH1F* hMultC = new TH1F("hMultC","full mulltiplicity C side;Multiplicity;Entries", Int_t(high[204]-low[204]/4) ,low[204],high[204]);
+ Add2RawsList( hMultC,204, expert, !image, !saveCorr );//FK
+ TH1F* hMultCS = new TH1F("hMultCSemi","full multiplicity with semi-central trigger C side;Multiplicity;Entries",
+ Int_t((high[205]-low[205])/4),low[205],high[205] );
+ Add2RawsList( hMultCS,205, expert, !image, !saveCorr);
+ TH1F* hMultCC = new TH1F("hMultCCentr","full multiplicity with central trigger C side;Multiplicity;Entries",
+ Int_t((high[206]-low[206])/4),low[206],high[206]);
+ Add2RawsList( hMultCC,206, expert, !image, !saveCorr);
+
+
+ //efficiency
+ TH1F* hCFDeff= new TH1F("hCFDeff"," CFD efficiency; #PMT; #CFD counts/nEvents",24, 0 ,24);
+ hCFDeff->SetMinimum(0);
+ hCFDeff->SetMaximum(2);
+ hCFDeff->SetMarkerStyle(20);//fk
+ hCFDeff->SetMarkerColor(2);//fk
+ hCFDeff->SetOption("p");//fk
+ Add2RawsList( hCFDeff, 207, expert, image, !saveCorr);//FK
+ TH1F* hEffLED = new TH1F("hEffLED","LED efficiency; #PMT; #LED counts/nEvent",24, 0 ,24);
+ hEffLED ->SetMinimum(0);
+ hEffLED->SetMaximum(2);
+ hEffLED->SetMarkerStyle(28);//fk
+ hEffLED->SetMarkerColor(1);//fk
+ hEffLED->SetOption("p,same");//fk
+ Add2RawsList( hEffLED, 208, expert, !image, !saveCorr);//FK is published attahced to the CFD efficiency
+
+ TH1F* hEffQTC = new TH1F("hEffQTC","QTC efficiency; #PMT; QTC efficiency%s;",24, 0 ,24);
+ hEffQTC->SetMinimum(0);
+ hEffQTC->SetMaximum(2);
+ Add2RawsList( hEffQTC,209, !expert, image, !saveCorr);
+
+ TH2F* hCFD = new TH2F("hCFD","CFD ; #PMT; CFD {#channnels}", 24, 0 , 24,Int_t((high[210]-low[210])/4),low[210],high[210]);
+ hCFD->SetOption("COLZ");
+ Add2RawsList( hCFD,210, expert, !image, !saveCorr);//fk
+
+ TH2F* hLED = new TH2F("hLED","LED ; #PMT; LED [#channnels]", 24, 0 , 24,Int_t((high[211]-low[211])/4),low[211],high[211]);
+ hLED->SetOption("COLZ");
+ Add2RawsList( hLED,211, expert, !image, !saveCorr);//fk