]>
Commit | Line | Data |
---|---|---|
3c4375b2 | 1 | CheckCalibStatus(Int_t run) |
2 | { | |
3 | ||
4 | TGrid::Connect("alien"); | |
5 | AliCDBManager *cdb = AliCDBManager::Instance(); | |
6 | cdb->SetDefaultStorage("raw://"); | |
7 | cdb->SetRun(run); | |
8 | AliCDBEntry *cdbe = cdb->Get("TOF/Calib/Status"); | |
9 | CheckCalibStatus(cdbe); | |
10 | ||
11 | } | |
12 | ||
fceb731d | 13 | CheckCalibStatus(const Char_t *fileName) |
14 | { | |
15 | ||
16 | TFile *file = TFile::Open(fileName); | |
17 | AliCDBEntry *cdbe = (AliCDBEntry *)file->Get("AliCDBEntry"); | |
3c4375b2 | 18 | CheckCalibStatus(cdbe); |
19 | } | |
20 | ||
21 | CheckCalibStatus(AliCDBEntry *cdbe) | |
22 | { | |
23 | ||
24 | if (!cdbe) { | |
25 | printf("invalid CDB entry\n"); | |
26 | return; | |
27 | } | |
28 | ||
fceb731d | 29 | AliTOFChannelOnlineStatusArray *array = (AliTOFChannelOnlineStatusArray *)cdbe->GetObject(); |
30 | ||
7c9539dd | 31 | TH1F *hStatus = new TH1F("hStatus", "Channel status;index;status", array->GetSize(), 0., array->GetSize();); |
cf7d7743 | 32 | TH1F *hChNoisy = new TH1F("hChNoisy", "Channel noise flag;index;noise flag", array->GetSize(), 0., array->GetSize();); |
7c9539dd | 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.); | |
35 | ||
36 | AliTOFcalibHisto calib; | |
37 | calib.LoadCalibHisto(); | |
38 | ||
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); | |
46 | fea = padx / 12; | |
47 | hitmapx = sector + ((Double_t)(3 - fea) + 0.5) / 4.; | |
48 | hitmapy = sectorStrip; | |
49 | if (array->GetHWStatus(i) == AliTOFChannelOnlineStatusArray::kTOFHWOk) hEnableMap->Fill(hitmapx, hitmapy); | |
cf7d7743 | 50 | if (array->GetNoiseStatus(i) == AliTOFChannelOnlineStatusArray::kTOFNoiseBad) { |
51 | hChNoisy->SetBinContent(i + 1, 1); | |
52 | hNoiseMap->Fill(hitmapx, hitmapy); | |
53 | } | |
7c9539dd | 54 | } |
55 | ||
56 | TFile *fout = TFile::Open("CheckCalibStatus.root", "RECREATE"); | |
57 | hStatus->Write(); | |
cf7d7743 | 58 | hChNoisy->Write(); |
7c9539dd | 59 | hNoiseMap->Write(); |
60 | hEnableMap->Write(); | |
61 | fout->Close(); | |
fceb731d | 62 | |
63 | } |