- if ((TESTBIT(fTreeMask, kESD) ||
- TESTBIT(fTreeMask, kDigits) ||
- TESTBIT(fTreeMask, kRaw))) {
- if (!fAux) {
- fAux = new TCanvas("aux", "Aux");
- fAux->SetLogy();
- if (TESTBIT(fTreeMask, kESD))
- fSpec = new TH1D("spec", "Mult spectra", 500, 0, 10);
- else
- fSpec = new TH1D("spec", "Adc spectra", 1024, -.5, 1023.5);
- fSpecCut = static_cast<TH1*>(fSpec->Clone("specCut"));
- fSpec->SetFillColor(2);
- fSpec->SetFillStyle(3001);
- fSpecCut->SetFillColor(4);
- fSpecCut->SetFillStyle(3001);
- }
- else {
- fSpec->Reset();
- fSpecCut->Reset();
- }
+ const Range_t* range = 0;
+ if (TESTBIT(fTreeMask, kESD)) range = &fgkMultRange;
+ else if (TESTBIT(fTreeMask, kDigits)) range = &fgkAdcRange;
+ else if (TESTBIT(fTreeMask, kSDigits)) range = &fgkAdcRange;
+ else if (TESTBIT(fTreeMask, kRaw)) range = &fgkAdcRange;
+ else if (TESTBIT(fTreeMask, kHits)) range = &fgkEdepRange;
+ if (!range) return;
+
+ if (!fAux) {
+ fAux = new TCanvas("aux", "Aux");
+ fAux->SetLogy();
+ fAux->SetFillColor(kWhite);
+ fAux->SetBorderMode(0);
+ fAux->SetBorderSize(0);
+ Float_t dBin = (range->fHigh - range->fLow) / range->fNbins;
+ fSpec = new TH1D("spec", "Spectra", range->fNbins,
+ range->fLow-dBin/2, range->fHigh+dBin/2);
+ fSpecCut = static_cast<TH1*>(fSpec->Clone("specCut"));
+ fSpec->SetXTitle("signal");
+ fSpec->SetYTitle("events");
+ fSpec->SetFillColor(2);
+ fSpec->SetFillStyle(3001);
+ fSpecCut->SetXTitle("signal");
+ fSpecCut->SetYTitle("events");
+ fSpecCut->SetFillColor(4);
+ fSpecCut->SetFillStyle(3001);