1 #ifndef ALI_ITS_ONLINECALIBRATIONSPDHANDLER_H
2 #define ALI_ITS_ONLINECALIBRATIONSPDHANDLER_H
4 //////////////////////////////////////////////////////////////////////
5 // Author: Henrik Tydesjo //
6 // Class that simplifies the managing of dead and noisy pixels. //
7 // Interface to the AliITSOnlineCalibrationSPD container object //
8 // through reading and writing to TFile. //
9 //////////////////////////////////////////////////////////////////////
12 #include "AliITSIntMap.h"
16 class AliITSOnlineCalibrationSPDhandler {
19 AliITSOnlineCalibrationSPDhandler();
20 AliITSOnlineCalibrationSPDhandler(UInt_t module);
21 AliITSOnlineCalibrationSPDhandler(const AliITSOnlineCalibrationSPDhandler& handle);
22 virtual ~AliITSOnlineCalibrationSPDhandler();
23 AliITSOnlineCalibrationSPDhandler& operator=(const AliITSOnlineCalibrationSPDhandler& handle);
27 void WriteToFile(Char_t* fileName);
28 Bool_t ReadFromFile();
29 Bool_t ReadDeadFromFile();
30 Bool_t ReadNoisyFromFile();
31 Bool_t ReadFromFile(Char_t* fileName);
32 Bool_t ReadDeadFromFile(Char_t* fileName);
33 Bool_t ReadNoisyFromFile(Char_t* fileName);
34 void SetModuleNr(UInt_t mod) {fModuleNr=mod;}
35 UInt_t GetModuleNr() const {return fModuleNr;}
36 void SetFileLocation(Char_t* loc) {sprintf(fFileLocation,"%s",loc);}
37 UInt_t GetNrDead() const {return fDeadPixelMap.GetNrEntries();}
38 UInt_t GetNrNoisy() const {return fNoisyPixelMap.GetNrEntries();}
39 TArrayI GetDeadArray();
40 TArrayI GetNoisyArray();
43 Bool_t SetDeadPixel(Int_t col, Int_t row);
44 Int_t GetDeadColAt(UInt_t index) const;
45 Int_t GetDeadRowAt(UInt_t index) const;
46 Bool_t IsPixelDead(Int_t col, Int_t row) const;
48 Bool_t SetNoisyPixel(Int_t col, Int_t row);
49 Int_t GetNoisyColAt(UInt_t index) const;
50 Int_t GetNoisyRowAt(UInt_t index) const;
51 Bool_t IsPixelNoisy(Int_t col, Int_t row) const;
53 void PrintDead() const;
54 void PrintNoisy() const;
57 UInt_t fModuleNr; // module nr
58 AliITSIntMap fDeadPixelMap; // list of dead pixels
59 AliITSIntMap fNoisyPixelMap; // list of noisy pixels
60 Char_t fFileLocation[200]; // location (dir) of file to read and write from
62 Int_t GetKey(Int_t col, Int_t row) const {return col*256 + row;}
63 Int_t GetColFromKey(Int_t key) const {return key/256;}
64 Int_t GetRowFromKey(Int_t key) const {return key%256;}