1 CheckCalibStatus(Int_t run)
4 TGrid::Connect("alien");
5 AliCDBManager *cdb = AliCDBManager::Instance();
6 cdb->SetDefaultStorage("raw://");
8 AliCDBEntry *cdbe = cdb->Get("TOF/Calib/Status");
9 CheckCalibStatus(cdbe);
13 CheckCalibStatus(const Char_t *fileName)
16 TFile *file = TFile::Open(fileName);
17 AliCDBEntry *cdbe = (AliCDBEntry *)file->Get("AliCDBEntry");
18 CheckCalibStatus(cdbe);
21 CheckCalibStatus(AliCDBEntry *cdbe)
25 printf("invalid CDB entry\n");
29 AliTOFChannelOnlineStatusArray *array = (AliTOFChannelOnlineStatusArray *)cdbe->GetObject();
31 TH1F *hStatus = new TH1F("hStatus", "Channel status;index;status", array->GetSize(), 0., array->GetSize(););
32 TH1F *hChNoisy = new TH1F("hChNoisy", "Channel noise flag;index;noise flag", array->GetSize(), 0., array->GetSize(););
33 TH2F *hNoiseMap = new TH2F("hNoiseMap", "Noise map;sector;strip", 72, 0., 18., 91, 0., 91.);
34 TH2F *hEnableMap = new TH2F("hEnableMap", "Enable map;sector;strip", 72, 0., 18., 91, 0., 91.);
36 AliTOFcalibHisto calib;
37 calib.LoadCalibHisto();
39 Int_t sector, sectorStrip, padx, fea;
40 Float_t hitmapx, hitmapy;
41 for (Int_t i = 0; i < array->GetSize(); i++) {
42 hStatus->SetBinContent(i + 1, array->GetStatus(i));
43 sector = calib.GetCalibMap(AliTOFcalibHisto::kSector, i);
44 sectorStrip = calib.GetCalibMap(AliTOFcalibHisto::kSectorStrip, i);
45 padx = calib.GetCalibMap(AliTOFcalibHisto::kPadX, i);
47 hitmapx = sector + ((Double_t)(3 - fea) + 0.5) / 4.;
48 hitmapy = sectorStrip;
49 if (array->GetHWStatus(i) == AliTOFChannelOnlineStatusArray::kTOFHWOk) hEnableMap->Fill(hitmapx, hitmapy);
50 if (array->GetNoiseStatus(i) == AliTOFChannelOnlineStatusArray::kTOFNoiseBad) {
51 hChNoisy->SetBinContent(i + 1, 1);
52 hNoiseMap->Fill(hitmapx, hitmapy);
56 TFile *fout = TFile::Open("CheckCalibStatus.root", "RECREATE");